用SQL创建数据库
时间:2007-12-23 来源:不详 作者:迈克DB
1.CREATETABLE(创建新表)
2.CREATEINDEX(增加索引)
3.DROPINDEX(删除索引)
4.CONSTRAINT(约束语句)
5.ALTERTABLE(修改表)
6.DROPTABLE(删除表)
CREATETABLE语句:
在数据库中生成新表,表中字段的类型可以为:INTEGER(整型)、LONG(长整型)、SINGLE(单精度浮点数)、DOUBLE(双精度浮点数)、DATETIME(日期型,也可以写成DATE)、BIT(布尔型)、TEXT(字符串型,最大255个字节)、MEMO(字符串型,最大可达1.2G字节)、COUNTER(自动递增长整型,可确定记录的唯一性)、CURRENCY(货币型,精确到小数点左边15位,右边4位)、BINARY(字节型,最大255个)、LONGBINARY(用于OLE对象)、GUID(全局唯一标识符)。
生成表NewTable,该表有文本字段Field1和整型字段Field2,表名和字段名可以随便你取,不区分大小写,但是,有些保留字不能用作表名字段名,比如Number
CREATETABLENewTable(Field1TEXT(30),Field2INTEGER);
CREATEINDEX语句:
INDEX是为了加快查找记录的速度,或者是为了增加字段约束关系而设置的。
创建索引语句执行前表中可以有记录,但存在的记录必须满足该索引语句的约束关系,否则语句不能执行,另外要注重的是在同一个数据库中(而不仅仅是在同一个表中),索引名不能相同,否则语句也会失败。
copyright dedecms
生成字段Field1的索引字段NewIndex,两条语句作用相同
生成后Field1字段可以有相同的值,可以有空值(NULL)
CREATEINDEXNewIndexONNewTable(Field1);
CREATEINDEXNewIndexONNewTable(Field1)WITHIGNORENULL;
生成字段Field1的索引字段NewIndex,注重,每个表里只能有一个主索引(PRIMARY)。生成后Field1字段不能有相同的值,不能有空值(当然,假如是TEXT类型,可以有一个空串,但是空串不是空值)
CREATEINDEXNewIndexONNewTable(Field1)WITHPRIMARY;
字段Field1不能有相同的值,但可以有空值(两个空值不算相同的值)
CREATEUNIQUEINDEXNewIndexONNewTable(Field1);
字段Field1可以有相同的值,但不能有空值
CREATEINDEXNewIndexONNewTable(Field2)WITHDISALLOWNULL
可以在索引语句中加入ASC(升序)或DESC(降序)来控制记录排列顺序假如不使用顺序字,SQL则默认使用ASC顺序
CREATEINDEXNewIndexONNewTable(Field1ASC,Field2DESC);
DROPINDEX语句:
删除表NewTable中的索引NewIndex,语句执行前索引NewIndex必须存在
DROPINDEXNewIndexONNewTable;
CONSTRAINT语句:
CONSTRAINT子句用于创建数据库完整性的索引,它和INDEX语句作用一样,有些地方可以互相替代,它可以使用PRIMARYKEY(主要害字),UNIQUE(唯一)和FOREIGNKEY(外部要害字),和INDEX相比不能使用IGNORNULL和DISALLOWNULL,但多了FOREIGNKEY(这也是它最强大的地方)。另外,CONSTRAINT语句必须和CREATETABLE或ALTERTABLE语句一起使用。
织梦内容管理系统
生成表NewTable,主要害字段是Field1,主索引是NewPK
CREATETABLENewTable(Field1LONGCONSTRAINTNewPKPRIMARYKEY,Field2MEMO,Field3DATETIME);
生成索引为NewUK的表NewTable,Field1不能有相同值,可以有空值
CREATETABLENewTable(Field1INTEGERCONSTRAINTNewUKUNIQUE);
生成多列的主索引,两条记录的Field1和Field2不能全部相同,也不能为空值
CREATETABLENewTable(Field1INTEGER,Field2CURRENCY,CONSTRAINTNewPKPRIMARYKEY(Field1,Field2));
生成多列的UNIQUE索引,两条记录的Field1和Field2不能全部相同注重,假如两条记录其中一个字段相同而另一个字段都是空值,那也算两个字段不同
CREATETABLENewTable(Field1INTEGER,Field2CURRENCY,CONSTRAINTNewUKUNIQUE(Field1,Field2));
文章评论
共有位Admini5网友发表了评论 查看完整内容