用SQL创建数据库

要戒戒戒

要戒戒戒

2016-01-29 16:42

用SQL创建数据库,用SQL创建数据库
首先说说怎么用SQL语句创建数据库,创建数据库的语句有如下几种: 
   1. CREATE TABLE(创建新表) 
   2. CREATE INDEX(增加索引) 
   3. DROP INDEX(删除索引) 
   4. CONSTRAINT(约束语句) 
   5. ALTER TABLE(修改表) 
   6. DROP TABLE(删除表) 

CREATE TABLE语句: 
在数据库中生成新表,表中字段的类型可以为: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  
CREATE TABLE NewTable(Field1 TEXT(30), Field2 INTEGER);  
CREATE INDEX语句: 
INDEX是为了加快查找记录的速度,或者是为了增加字段约束关系而设置的。  
创建索引语句执行前表中可以有记录,但存在的记录必须满足该索引语句的约束关系,否则语句不能执行,另外要注意的是在同一个数据库中(而不仅仅是在同一个表中),索引名不能相同,否则语句也会失败。  
生成字段Field1的索引字段NewIndex,两条语句作用相同 
生成后Field1字段可以有相同的值,可以有空值(NULL)  
CREATE INDEX NewIndex ON NewTable (Field1); 
CREATE INDEX NewIndex ON NewTable (Field1) WITH IGNORE NULL; 

生成字段Field1的索引字段NewIndex,注意,每个表里只能有一个主索引(PRIMARY)。生成后Field1字段不能有相同的值,不能有空值(当然,如果是TEXT类型,可以有一个空串,但是空串不是空值)  
CREATE INDEX NewIndex ON NewTable(Field1) WITH PRIMARY; 

字段Field1不能有相同的值,但可以有空值(两个空值不算相同的值)  
CREATE UNIQUE INDEX NewIndex ON NewTable(Field1); 

字段Field1可以有相同的值,但不能有空值  
CREATE INDEX NewIndex ON NewTable(Field2) WITH DISALLOW NULL 

可以在索引语句中加入ASC(升序)或DESC(降序)来控制记录排列顺序如果不使用顺序字,SQL则默认使用ASC顺序  
CREATE INDEX NewIndex ON NewTable(Field1 ASC, Field2 DESC);  
DROP INDEX语句: 
删除表NewTable中的索引NewIndex,语句执行前索引NewIndex必须存在  
DROP INDEX NewIndex ON NewTable; 

CONSTRAINT语句: 
CONSTRAINT子句用于创建数据库完整性的索引,它和INDEX语句作用一样,有些地方可以互相替代,它可以使用PRIMARY KEY(主关键字),UNIQUE(唯一)和FOREIGN KEY(外部关键字),和INDEX相比不能使用IGNOR NULL和DISALLOW NULL,但多了FOREIGN KEY(这也是它最强大的地方)。另外, CONSTRAINT语句必须和CREATE TABLE或ALTER TABLE语句一起使用。  
生成表NewTable,主关键字段是Field1,主索引是NewPK  
CREATE TABLE NewTable(Field1 LONG CONSTRAINT NewPK PRIMARY KEY, Field2 MEMO, Field3 DATETIME); 


生成索引为NewUK的表NewTable,Field1不能有相同值,可以有空值  
CREATE TABLE NewTable(Field1 INTEGER CONSTRAINT NewUK UNIQUE); 


生成多列的主索引,两条记录的Field1和Field2不能全部相同,也不能为空值  
CREATE TABLE NewTable(Field1 INTEGER, Field2 CURRENCY, CONSTRAINT NewPK PRIMARY KEY(Field1, Field2)); 


生成多列的UNIQUE索引,两条记录的Field1和Field2不能全部相同注意,如果两条记录其中一个字段相同而另一个字段都是空值,那也算两个字段不同 &
展开更多 50%)
分享

猜你喜欢

用SQL创建数据库

SQLServer
用SQL创建数据库

用MySQL创建数据库和数据库表

编程语言 网络编程
用MySQL创建数据库和数据库表

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

用MySQL创建数据库和数据库表代码

编程语言 网络编程
用MySQL创建数据库和数据库表代码

用asp管理sql server数据库

ASP
用asp管理sql server数据库

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

SQL Server数据库导入MySQL数据库体验

MySQL mysql数据库
SQL Server数据库导入MySQL数据库体验

用C#动态创建Access数据库

编程语言 网络编程
用C#动态创建Access数据库

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

谈网络防火墙和安全问题(1)

谈网络防火墙和安全问题(1)

将Excel中的数据导入到SQL Server 2000数据库中

将Excel中的数据导入到SQL Server 2000数据库中
下拉加载更多内容 ↓