sql如何创建表(sql如何创建表结构)
本篇文章给大家谈谈sql如何创建表,以及sql如何创建表结构对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
- 1、创建表的sql语句是什么?
- 2、SQL实战新手入门:创建表
- 3、sql语句创建表
- 4、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):容纳日期。
[img]SQL实战新手入门:创建表
创建表
现在已经创建了一个数据库 接下来可以使用它来创建数据库中的各种对象 例如表 表是存储数据慧唤的地方 这是一个常识性的逻辑 但也是RDBMS分道扬镳的地方
拿笔者的冰箱为例 笔者在冰箱表面用小磁铁吸住了各种各样的东西 例如游览动物园后带回来的一些好玩的纪念品 友好的保险代理商赠送的日历 孩子所在学校的饮食菜单(以及查询学校考勤的电话号码) 购物列表 小狗的照片 孩子们的照片 订购比萨的热线电话等
可以将其视为笔者的一个私人数据库 只需要将各种东西粘贴在上面即可 文本 图片 日历等 相比之下 RDBMS更加特殊一些 它要求根据数据类型来对数据排序 第 章将详细地讨论数据类型 就目前而言 只需要关注最容易理解也是RDBMS最好处理的数据类型 文森腊本
就像前面的例子中创建数据库一样 创建一个表也是非常简单的 创建表时 需要指定表中各列的列名和数据类型
CREATE TABLE myLibrary (all_my_books VARCHAR( ))
上面的语句将ALL_MY_BOOKS列定义为字符串数据类型(关于数据类型的更多信息 请参见第 章) 并且定义该列可以容纳 个字符
读者或许已经想到 与上面的例子相比 CREATE TABLE语法还有更多的内容 对于任何一种RDBMS 完整的CREATE TABLE语法列表的长度将超过一页 精通这些选项要求读者具有高级SQL的知识 因此本书只是简要介绍一下CREATE TABLE的语法
在第 章中将会介绍 在创建了一个表之后 还可以从数据库中删除或修改表 SQL提供了对数据库对象的完全控制 可以创建 修改并销毁对象
试一此碧滑试在Microsoft SQL Server 中创建一个数据库
创建数据库通常是数据库管理员的工作 特别是在一个产品级的环境之中 有太多的选项需要权衡和考虑而不是让所有选项保留默认设置 然而对本书而言 只需要使用基本的语法即可 在Microsoft SQL Server中可以采用多种办法来创建数据库 毫无疑问使用SQL ServerManagement Studio Express是最简单的办法 下面列出了相应的操作步骤
( ) 确保SQL Server实例已经安装并处于运行状态(请参考附录B中的安装指南)
( ) 单击Microsoft SQL Server 菜单项 启动SQL Server Management Studio Express(在本练习中 假定SQL Server已经安装到了读者的本地计算机上 因此可以使用Windows
Authentication自动连接)
( ) 首先我们看到一个连接数据库服务器的提示屏幕 如果提示窗口中没有填入默认值 那么将服务器类型设置为Database Engine 将服务器名称设置为 \SQLEXPRESS(如果按照附录B的指南完成了安装的话 否则从下拉列表中选择另外一个名称 该下拉列表中仅显示当前计算机上可见的SQL Server实例) 另外将身份验证设置为Windows Authentication
( ) 单击Connect按钮
( ) SQL Server Management Studio Express将显示一个带有多个窗格的窗口 对于这个练习 我们只需要关注位于窗口左上角的New Query按钮 它就在File菜单之下(如图 所示) 单击New Query按钮
图
( ) 在窗口的中部 将显示一个新的查询窗口 在该窗口中可以输入SQL命令
( ) 输入下面的SQL语句 创建一个数据库
CREATE DATABASE library;
( ) 单击位于上方工具栏中的Execute按钮 如图 所示
( ) 注意观察下方窗格的Messages选项卡中的消息 Command(s) pleted successfully
( ) 新创建的数据库将出现在左侧标题为Object Explorer的窗格的Databases列表之中 如图 所示 单击Databases节点之前的加号 就可以展开列表
图
图
示例说明
Microsoft SQL Server承担了创建数据库过程中的许多复杂工作 在后台 SQL Server将在计算机的硬盘(或者外部存储设备)上创建一系列的文件 在Windows注册表中创建数十个条目和特定于SQL Server的配置文件 它还将创建额外的多个支撑对象用于数据库操作(展开新创建数据库中的LIBRARY节点 就可以看到这些对象)
在该例子中 省略了所有的可选配置选项 使用所有选项的默认值来创建数据库 存储文件名称 位置 初始大小 排序规则等 尽管这并不是创建性能优化的数据库的最好办法(关于性能优化的内容请参见第 章) 但对于本书演示的目的来说已经足够了
返回目录 SQL实战新手入门
编辑推荐
Oracle索引技术
高性能MySQL
lishixinzhi/Article/program/SQL/201311/16486
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怎么创建表
1.1 创建表方法
创建表是指在已存在的数据库中建立新表。这是建立数据库最重要的一步,是进行其他操作的基础。
1.1.1 创建表的语法形式
CREATE TABLE 表名 (
属性名 数据类型 [ 完整性约束条件 ],
属性名 数据类型 [ 完整性约束条件 ],
......
属性名 数漏毁肢据类型 [ 完整性约束条件 ],
)[ 表类型 ] [ 表字符集 ];
SQL 是不区分大小写。下面将会具体介绍SQL,这种创建表是通过什么方式起来的效果怎么样返世?
命名规范:
1. 命名富有意义 ( 英文或英文组合 )
2. 自定义名称使用小写
3. MySQL 语句使用大写
CREATE TABLE IF NOT EXISTS data_house(
id INT,
name VARCHAR(20);
gender BOOLEAN,
) Engine = MyISAM;
上面 SQL 语句的含义是:如果不存在 text1 表,就创建它,包含 3 个字段 id 、 name 和 gender ,它们的类型分别是整形、字符型和布尔型,创建的表的余碧类型是 MyISAM 。
完整性约束条件表
PRIMARY KEY 标识该属性为该表的主键,可以唯一的标识对应的元组
FOREIGN KEY 标识该属性为该表的外键,是与之联系的某表的主键
NOT NULL 标识该属性不能为空
UNIQUE 标识该属性的值是唯一的
AUTO_INCREMENT 标识该属性的值自动增加,这是 MySQL 的 SQL 语句的特色 (null,0)
DEFAULT 标识该属性设置默认值 (not null defualt 0,not null default 0.0,not null default '')
1.1.2 设置表的主键
主键是表的一个特殊字段。该字段能惟一地标识该表中的每条信息。主键和记录的关系,如同身份证和人的关系。主键用来标识每个记录,每个记录的主键值都不同。身份证是用来标明人的身份,每个人都具有惟一的身份证号。设置表的主键指在创建表时设置表的某个字段为该表的主键。
主键的主要目的是帮组 MySQL 以最快的速度查找到表中的某一条信息。
主键必须满足的条件:
1. 主键必须是唯一的,表中任意两条记录的主键字段的值不能相同;
2. 主键的值是非空值;
3. 主键可以是单一的字段,也可以是多个字段组合。
1. 单字段的主键:
CREATE TABLE student1 (
stu_id INT PRIMARY KEY ,
stu_name VARCHAR(20) NOT NULL,
stu_gender BOOLEAN
) Engine = InnoDB;
2. 多字段主键 :
CREATE TABLE student2 (
stu_id INT,
course_id INT,
grade FLOAT,
PRIMARY KEY( stu_id, course_id )
)Engine = InnoDB;
1.1.3 设置表的外键
外键是表的一个特殊字段。如果字段 sno 是一个表 A 的属性,且依赖于表 B 的主键。那么,称表 B 为父表,表 A 为子表, sno 为表 A 的外键。通过 sno 字段将父表 B 和子表 A 建立关联关系。设置表的外键指在创建表设置某个字段为外键。
设置外键的原则:必须依赖于数据库中已存在的父表的主键;外键可以为空值。
外键的作用 : 是建立该表与其父表的关联关系。父表中删除某条信息时,子表中与之对应的信息也必须有相应的改变。例如, stu_id 就 student 表的主键, stu_id 是 grade 表的外键。当 stu_id 为 '123' 同学退学了,需要从 student 表中删除该学生的信息。那么, grade 表中 stu_id 为 '123' 的所有信息也应该同时删除。
CONSTRAINT 外键别名 FOREIGN KEY ( 属性 1.1, 属性 1.2... 属性 1.n);
REFERENCES 表名 ( 属性 2.1, 属性 2.2,..., 属性 2.n)
CREATE TABLE student3 (
id INT PRIMARY KEY,
stu_id INT,
course_id INT,
# 设置外键
CONSTRAINT C_fk FOREIGN KEY (stu_id, course_id) REFERENCES student2(stu_id, course_id)
) Engine = InnoDB;
1.1.4 设置表的非空约束
非空性是指字段的值不能为空值 (NULL) 。非空约束将保证所有记录中该字段都有值。如果用户新插入的记录中,该字段为空值,则数据库系统会报错。例如,在 id 字段加上非空约束, id 字段的值就不能为空。如果插入记录的 id 字段的值为空,该记录将不能插入。设置表的非空约束是指在创建表时为表的某些特殊字段加上 NOT NULL 约束条件。设置非空约束的基本语法规则如下:
属性名 数据类型 NOT NULL
关于sql如何创建表和sql如何创建表结构的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。