文档详情

《MySQL_从零开始学——数据表的基本操作》.doc

发布:2015-10-06约3.4万字共27页下载文档
文本预览下载声明
4.1 创建数据表 在创建完数据库之后,接下来的工作就是创建数据表。所谓创建数据表指的是在已经创建好了的数据库中建立新表。创建数据表的过程是规定数据列的属性的过程,同时也是实施数据完整性(包括实体完整性、引用完整性和域完整性等)约束的过程。本节将介绍创建数据表的语法形式、如何添加主键约束、外键约束、非空约束等。 4.1.1 创建表的语法形式 数据表属于数据库,在创建数据表之前,应该使用语句“USE 数据库名”指定操作是在哪个数据库中进行,如果没有选择数据库,会抛出“No database selected”的错误。 创建数据表的语句为 CREATE TABLE,语法规则如下: CREATE TABLE 表名 ( 字段名1 数据类型 [列级别约束条件] [默认值], 字段名2 数据类型 [列级别约束条件] [默认值], …… [表级别约束条件] ); 使用CREATE TABLE创建表时,必须指定以下信息: ⑴ 要创建的表的名称,不区分大小写,不能使用SQL语言中的关键字,如DROP,ALTER,INSERT等。 ⑵ 数据表中每一个列(字段)的名称和数据类型,如果创建多个列,要用逗号隔开。 【例4.1】创建员工表tb_emp1,结构如【表4.1】 表4.1 tb_emp1 表结构 字段名称 数据类型 备注 id INT(11) 员工编号 name VARCHAR(25) 员工名称 deptId INT(11) 所在部门编号 salary FLOAT 工资 首先选择创建表的数据库,SQL语句如下: USE test; 创建tb_emp1表,SQL语句为: CREATE TABLE tb_emp1 ( id INT(11), name VARCHAR(25), deptId INT(11), salary FLOAT ); 语句执行后,便创建了一个名称为tb_emp1的数据表,使用SHOW TABLES;语句查看数据表是否创建成功,SQL语句如下: mysql SHOW TABLES; +-----------------------+ | Tables_in_ test | +----------------------+ | tb_emp1 | +----------------------+ 1 row in set (0.00 sec) 可以看到test数据库中已经有了数据表tb_tmp1,数据表创建成功。 4.1.2 使用主键约束 主键,又称主码,是表中一列或多列的组合。主键约束(Primary Key constraint)要求主键列的数据唯一,并且不允许为空。 1. 单字段主键 主键由一个字段组成,SQL语句格式分以下两种情况。 ⑴ 在定义列的同时指定主键,语法规则如下: 字段名 数据类型 PRIMARY KEY 【例4.2】定义数据表tb_emp 2,其主键为id,SQL语句如下: CREATE TABLE tb_emp2 ( id INT(11) PRIMARY KEY, name VARCHAR(25), deptId INT(11), salary FLOAT ); ⑵ 在定义完所有列之后指定主键。 [CONSTRAINT 约束名] PRIMARY KEY [字段名] 【例4.3】定义数据表tb_emp 3,其主键为id,SQL语句如下: CREATE TABLE tb_emp3 ( id INT(11), name VARCHAR(25), deptId INT(11), salary FLOAT, PRIMARY KEY(id) ); 上述两个例子执行后的结果是一样的,都会在id字段字段上设置主键约束。 2. 多字段联合主键 主键由多个字段联合组成,语法规则如下: PRIMARY KEY [字段1, 字段2,. . ., 字段n] 【例4.4】定义数据表tb_emp4,假设表中间没有主键id,为了唯一确定一个员工,可以把name、deptId联合起来做为主键,SQL语句如下: CREATE TABLE tb_emp4 ( name VARCHAR(25), deptId INT(11), salary FLOAT, PRIMARY KEY(name,deptId) ); 语句执行后,便创建了一个名称为tb_emp4的数据表,name字段和deptId字段组合在一起成为tb_emp4的多字段联合主键。 4.1.3 使用外键约束 外键用来在两个表的数据之间建立链接,它可以是一列或者多列。一个表可以有一个或多个外键。外键对应的是参照完整性,一个表的外键可以为空值,若不为空值,则每一个外键值必须等于另一个表中主键的某个值。 外键:
显示全部
相似文档