sql什么语句定义数据表,SQL的数据定义
sql语句创建表
创建一个基本的表需要做的工作包括:命名表、定义列和各列的数据类型。
SQL 语言使用?CREATE TABLE?语句来创建新表。
语法:
CREATE TABLE 的基本语法如下所示:
CREATE TABLE table_name(
column1 datatype,
column2 datatype,
column3 datatype,
.....
columnN datatype,
PRIMARY KEY( one or more columns )
);
CREATE TABLE 向数据库系统指明了你的意图。在此例中,你想要创建一个新表,新表的唯一名称(或者说标识符)紧跟在 CREATE TABLE 后面。
随后的圆括号以列表的形式定义了表中的列以及各列所属的数据类型。下面的示例对该创建新表的语法做出了更清晰的阐释。
将 CREATE TABLE 语句和 SELECT 语句结合起来可以创建现有表的副本。详细信息请见利用现有表创建新表.
示例:
下面的示例创建了一个 CUSTOMERS 表,主键为 ID,某些字段具有 NOT NULL 的约束,表示在创建新的记录时这些字段不能为 NULL。
SQL CREATE TABLE CUSTOMERS(
ID ? INT ? ? ? ? ? ? ?NOT NULL,
NAME VARCHAR (20) ? ? NOT NULL,
AGE ?INT ? ? ? ? ? ? ?NOT NULL,
ADDRESS ?CHAR (25) ,
SALARY ? DECIMAL (18, 2), ? ?
PRIMARY KEY (ID)
);
你可以通过查看 SQL 服务器返回的消息来确定新表创建成功,或者也可以像下面这样使用?DESC?命令:
SQL DESC CUSTOMERS;
+---------+---------------+------+-----+---------+-------+
| Field ? | Type ? ? ? ? ?| Null | Key | Default | Extra |
+---------+---------------+------+-----+---------+-------+
| ID ? ? ?| int(11) ? ? ? | NO ? | PRI | ? ? ? ? | ? ? ? |
| NAME ? ?| varchar(20) ? | NO ? | ? ? | ? ? ? ? | ? ? ? |
| AGE ? ? | int(11) ? ? ? | NO ? | ? ? | ? ? ? ? | ? ? ? |
| ADDRESS | char(25) ? ? ?| YES ?| ? ? | NULL ? ?| ? ? ? |
| SALARY ?| decimal(18,2) | YES ?| ? ? | NULL ? ?| ? ? ? |
+---------+---------------+------+-----+---------+-------+
5 rows in set (0.00 sec)
现在数据库中已经有 CUSTOMERS 表了,你可以用它来存储和客户有关的信息。
在SQL语言中,可以使用aiter table语句定义数据表。对不对?
不对,alter
table是数据库修改语言,create
才是定义表的语句。
数据库创建表的sql语句
用如下语句:
注意:路径和文件名等可以自己定义,而且所使用的路径必须要先建立,否则执行语句会报错。
在建库时,要充分考虑数据有效共享的需求,同时也要保证数据访问的合法性和安全性。数据库采用统一的坐标系统和高程基准,矢量数据采用大地坐标大地坐标的数据在数值上是连续的,避免高斯投影跨带问题,从而保证数据库地理对象的完整性,为数据库的查询检索、分析应用提供方便。
创建数据库的方法有两种:
使用向导创建数据库,使用菜单创建数据库和创建空数据库;使用向导创建数据库是一种简单便捷的方法。
在物理上,数据库的建设要遵循实际情况。即在逻辑上建立一个整体的空间数据车、框架统一设计的同时,各级比例尺和不同数据源的数据分别建成子库,由开发的平台管理软件来统一协调与调度。
创建表的sql语句
创建表的sql语句是CREATE TABLE。
SQL CREATE TABLE是?SQL语言的建表语句,用于创建数据库中的表。基础语法为:CREATE TABLE table (field1 type [(size)] [NOT NULL] [index1] [, field2 type [(size)] [NOT NULL] [index2] [, ...]] [, CONSTRAINT multifieldindex [, ...]])。
table参数用于指定新建表的名称。field1,field2用于指定在新表中创建的新字段的名称,每创建一个新表必须至少创建一个字段。type参数用来指定新建字段的数据类型。size参数用于指定文本及二进制字段的长度。
NOT NULL是SQL的关键字,使用该参数则新记录的该字段值必须是有效的数据。在一个字段上只能使用一次NOT NULL参数,否则会出错。index1, index2参数是定义单一字段索引的CONSTRAINT子句。
multifieldindex参数是定义多重字段索引的CONSTRAINT子句。
数据类型:
1、integer(size):仅容纳整数。在括号内规定数字的最大位数。
2、int(size):仅容纳整数。在括号内规定数字的最大位数。
3、smallint(size):仅容纳整数。在括号内规定数字的最大位数。
4、tinyint(size):仅容纳整数。在括号内规定数字的最大位数。
5、decimal(size,d):容纳带有小数的数字。"size"规定数字的最大位数。"d"规定小数点右侧的最大位数。
6、numeric(size,d):容纳带有小数的数字。"size"规定数字的最大位数。"d"规定小数点右侧的最大位数。
7、char(size):容纳固定长度的字符串。在括号中规定字符串的长度。
8、varchar(size):容纳可变长度的字符串。在括号中规定字符串的长度。
9、date(yyyymmdd):容纳日期。
在sql语句中定义数据库的语句是
在sql语句中定义数据库的语句是数据库、表、视图、索引、存储过程,例如CREATE、DROP、ALTER等等。SQL语言(即结构化查询语言)主要用于存取数据、查询数据、更新数据和管理关系数据库系统,SQL语言由IBM开发。DDL语句,数据库定义语句:数据库、表、视图、索引、存储过程,例如CREATE、DROP、ALTER等等。
SQL语句创建表
1.定义基本表语句
语法:
USE 数据库名 CREATE TABLE 表名 (列名 类型(大小) DEFAULT'默认值',
列名 类型(大小) DEFAULT'默认值',
2.定义完整性约束
语法:
USE 数据库名 CREATE TABLE 表名 (列名 类型(大小) DEFAULT'默认值' CONSTRAINT 约束名 约束定义,
列名 类型(大小) DEFAULT'默认值' CONSTRAINT 约束名 约束定义,
列名 类型(大小) DEFAULT'默认值' CONSTRAINT 约束名 约束定义,
约束定义
(1)NULL | NOT NULL? 用于定义列的空值约束。(定义列)? (下面的蓝色部份是单选其中之一)
语法:CONSTRAINT 约束名 NULL | NOT NULL
例:下面的 SQL 语句强制 "Id_P" 列和 "LastName" 列不接受 NULL 值:
(3)PRIMARY KEY 约束唯一标识数据库表中的每条记录。(即可以定义列也可能定义表)
语法:CONSTRAINT 约束名 PRIMARY KEY (列名, 列名, ... ...);
说明:用于定义基本表的主键。与UNIQUE约束类似,PRIMARY KEY 约束也是通过建立唯一索引来保证基本表在主键列(某一个列或多个列的组合)上取值的唯一性。然而它们之间也存在着很大差别:在一个基本表中只能定义一个 PRIMARY KEY 约束,却能定义多个UNIQUE约束。如果为基本表的某一个列或多个列的组合指定了 PRIMARY KEY 约束,那么其中在任何一个列都不能出现空值;而 UNIQUE 约束允许出现空值。
下面的 SQL 在 "Persons" 表创建时在 "Id_P" 列创建 PRIMARY KEY 约束:
(2)UNIQUE? 约束唯一标识数据库表中的每条记录。(即可以定义列也可能定义表)
语法:CONSTRAINT 约束名 UNIQUE (列名, 列名, ... ...);
说明:用于指定基本表在某一个列或多个列的组合上取值必须唯一。定义了UNIQUE约束的那些列称为唯一键。如果为基本表的革一列或多个列的组合指定了UNIQUE约束,则系统将为这些列建立唯一索引,从而保证在表中的任意两行记录在指定的列或列组合上不能取同样的值。
注意:
a. UNIQUE 约束唯一标识数据库表中的每条记录。
b. UNIQUE 和 PRIMARY KEY 约束均为列或列集合提供了唯一性的保证。
c. PRIMARY KEY 拥有自动定义的 UNIQUE 约束。
d.请注意,每个表可以有多个 UNIQUE 约束,但是每个表只能有一个 PRIMARY KEY 约束。
(4)FOREIGN KEY 外键 (即可以定义列也可能定义表)
语法:CONSTRAINT 约束名 FOREIGN KEY (列名, 列名, ... ...) REFERENCES (列名, 列名, ... ...) ;
说明:指定某一个列或多个列的组合作为外部键,并在外部键和它所引用的主键或唯一键之间建立联系。在这种联系中,包含外部键的基本表称为从表,包含外部键引用的主键或唯一键的表称为主表。一旦为一列或列的组合定义了 FOREIGN KEY 约束,系统将保证从表在外部键上的取值要么是主表中某一个主键值或唯一键值,要么取空值。
下面的 SQL 在 "Orders" 表创建时为 "Id_P" 列创建 FOREIGN KEY: