当前位置:多学网学习教育电脑学习编程入门PHP教程非常实用的SQL语法与命令大全

非常实用的SQL语法与命令大全

[08-23 22:09:17]   来源:http://www.duoxue8.com  PHP教程   阅读:403
非常实用的SQL语法与命令大全,标签:PHP技巧,php培训,php学习,php安装,http://www.duoxue8.com
CREATE TABLE table(field1 type[(size)][index1][,field2 
type[(size)][index2][,...]][,nultifieldindex[,...]]) 

table 
欲建立的新的表格名称。 

field1,field2 
在新表格中的新的字段名称,到少要一个字段以上。 

type 
字段的数据类型。 

size 
字段的大小。 

index1,index2 
利用CONSTRAINT条件子句定义一个单一字段的索引名称。 

multifieldindex 
利用CONSTRAINT条件子句定义一个多重字段的索引名称。 
例如: 
建立一个拥有职员姓名与部门字段的表格。 
CREATE TABLE 职员表格 (姓名TEST,部门TEST,职员编号 INTEGER 
CONSTRAINT职员字段索引PRIMARY KEY) 
在这一个范例中,我们建立了一个表格名称为“职员表格”的表格,并且定义了该表格的主键值,以限制数据不能重复输入。 
表格索引的建立 

CREATE INDEX语句 
这个命令主要是对一个已存在的表格建立索引,其用法如下: 
CREATE[UNIQUE]INDEX index ON table(field[ASC|DESC][,field[ASC|DESC],...]) 
[WITH {PRIMARY|DISALLOWNULL|IGNORENULL}] 

index 
欲被建立的索引名称。 

table 
欲建立索引的表格名称。 

field 
欲被建立的索引的字段名称。并可通过DESC保留字,来决定索引的顺序。 
例如: 
在职员表格中建立一个索引。 
CREATE INDEX 新索引名称 
ON 职员表格(姓名部门); 
表格的字段更新 

CONSTRAINT条件子句 
CONSTRAINT 的功能是类似索引(INDEX)的,虽然CONSTRAINT 
也可以建立表格之间的关联性。 
单一字段索引: 
CONSTRAINT name{PRIMARY KEY|UNIQUE|REFERENCES 
foreigntable[(foreignfield1,foreignfield2)]} 

多字段索引: 
CONSTRAINT name 
{PRIMARY KEY(primary1[,primary2[,...]]) 
|UNIQUE(unique1[,unique2[,...]]) 
|FOREIGN KEY (ref1[,ref2[,...]]) 
|REFERENCES foreigntable[(foreignfield1[,foreignfield2[,...]])]} 

name 
要被建立的CONSTRAINT名称。 

primary1,primary2 
被用来设计成主键值的字段名称(可一个以上)。 

unique1,unique2 
被用来设计成唯一键值的字段名称(可一个以上)。 

foreign key 
字段名称,或是参考到别的表格中字段的字段名称。 

foreigntable 
如前所述,被参考到的表格。 

foreignfield1,foreignfield2 
在参考到的表格当中,被ref1,ref2字段所指定的字段。如果被参考的字段是参考表格中的主键值,你也可以省略这个条件子句。 
例如: 
当我们要建立一个新的职员数据表格,表格包含姓名、部门名称与生日三个字段,且由这三个字段建立一个唯一的索引时,可以使用下面这段SQL的语句。 
CREATE TABLE 职员数据表格 
(姓名 TEST,部门名称 TEST,生日 DATETIME,CONSTRAINT 
职员数据表格限制 UNIQUE(姓名,部门名称,生日)); 
以上是SQL中,与数据库表格建立相关的命令,你可以利用这些命令,通过SQL的语句,将数据库表格完整的建立出来,接下来的章节,将针对数据库建立之后的维护与增删所要使用的SQL语句作一介绍。 
表格的删除 

DELETE语句 
我们可以利用DELETE语句,将表格中的记录删除。(注意:记录被删除后,无法再复原,所以条件设置要正确) 
DELETE[table.*] 
FROM tableexpression 
WHERE criteria 

table 
欲删除记录的表格名称,也可以用*来取代。 

tableexpression 
一个或一个以上表格的名称。此一参数可以为单一的表格名称或是从INNER 
JOIN,LEFT JOIN,或RIGHTJOIN 等运算所得到的结果。 

criteria 
决定表格中记录要被删除的标准。 
例如: 
若是我们要将职员表格中姓名姓名叫做’李名’的记录删除,我们可以利用下面的SQL语句来完成。 
DELETE * FROM 职员表格 
WHERE 姓名=’李名’; 
数据库表格相关的操作命令 
SQL除了可以作为查询与数据库表格的建立的工具外,对于数据库与表格的新建、删修、与维护,与具有相当不错的功能,若是读者使用SQL命令得宜,对于整个效率的提高有着很大的帮助,所以对于SQL语句所带来的优势,常常会遇到一个情况,就是:“当我们对多个表格作复杂与多步骤的处理时,或许SQL只要一个语句就可以完成所有的需求与目标”,乍看一下,或许觉得有些玄妙,但是接下来的章节,会让你了解其中的妙处。 

SELECT...INTO语句 
我们可以通过这个命令,利用既存表格查询,来建立一个新表格的查询语句。 
SELECT field1[,field2[,...]]INTO newtable[IN externaldatabase] 
FROM source 

field1,field2 
欲拷贝到新表格的字段名称。 

newtable 
欲建立之新表格的名称,不可是已经存在的表格。 

externaldatabase 
若是该表格在另外的外部数据库时,该数据库的名称。 

source 
记录数据拷贝的来源表格名称,可以是单一的表格或是一段SQL查询之语句。 
例如: 
你可以通过下面的SQL语句,来建立一个新的“训练名册”表格。 
SELECT 职员表格.姓名,职员表格.部门 
INTO 训练名册 FROM 职员表格 
WHERE 职称=’新进人员’; 

INNER JOIN操作数 
当某一个共同的字段数据相等时,将两个表格的记录加以组合。 
SELECT fields 
FROM table1 INNER JOIN table2 
ON table1.field1 compopr table2.field2 

table1,table2 
欲进行记录组合的表格名称。 

field1,field2 
欲组合的字段名称。(必须具有相同的数据类型) 

compopr 
比较关系运算符如下:“=”,“<”,“>”,“<=”,“<>”等。 
例如: 
若是你要把分类表格与产品表格作组合,可参考下面的SQL语句。 
SELECT 分类名称,产品名称 
FROM 分类表格 INNER JOIN 产品表格 
ON 分类表格.分类编号=产品表格.分类编号; 
UNION操作数 
我们可以通过UNION操作数来建立连接的查询条件,UNION操作数可以将两个以上的表格或是查询的结果组合起来。 
[TABLE]query1 UNION [ALL][TABLE]query2 [UNION [ALL] 
[TABLE]queryn [...]] 

query1,query2,queryn 
为一个SELECT的语句,或是一个已存在的查询名称,或是一个已存在的表格名称。 
例如: 
你可以利用下面的SQL语句,将订单数量超过1000的顾客表格记录,与新客户表格作UNION的操作。 
TABLE 新客户表格 UNION ALL 
SELECT * 
FROM 顾客表格 
WHERE 订单数量>1000; 
ALTER语句 
在一个表格被建立之后,利用ALTER语句,我们可以去修改表格的字段设计。 
ALTER TABLE table 
{ADD {COLUMN field type[(size)][CONSTRAINT index] 
|CONSTRAINT multifieldindex} 
|DROP {COLUMN field|CONSTRAINT indexname}} 

table 
欲被ALTER的表格名称。 

field 
要被增加或删除的字段名称。 

type 
字段数据类型。 

size 
字段大小。 

index 

上一页  [1] [2] [3] [4]  下一页


非常实用的SQL语法与命令大全 结束。
Tag:PHP教程PHP技巧,php培训,php学习,php安装电脑学习 - 编程入门 - PHP教程