还剩3页未读,继续阅读
文本内容:
数据库表的创建-实验报告在数据库中,数据表是其中最重要、最基本的操作对象,是数据存储的基本单位数据表被定义为列的集合,数据在表中是按照行和列的格式来存储的每一行代表一条唯一的记录,每一列代表记录中的一个域
一、创建数据表☆创建数据表在创建数据表之前,我们需要选择一个数据库,在该数据库里面进行创建数据表等相关操作use db_name;创建数据表的语句为:字段名数据类型[列的约束条件][默认值],1Efl egcreatetablu二:namevarchar30,,m salary floatgender intlEB创建完成后,可以查看当前数据库中的数据表:showtabl.es;1row inset
0.00sec☆使用主键约束主键约束,要求主键列的数据唯一,且不允许为空它能够唯一地标识表中的一条记录,可以结合外键类定义不同表之间的关系,并且可以加快数据库查询的速度主键分为两种类型单字段主键和多字段联合主键单字段主键O单字段主键由一个字段组成,语句的格式分为下面两种情况
①在定义列的同时指定主键SQL字段名数据类型[默认值],primary keyegvarchar30,s〈】:〈】ryf1oat量■饕Efl
②在定义完所有列之后指定主键:<约束名》]字段名;[constraint primary key createtableinfoegsalaryi nt;「「primary keyid义idEfl多字段联合主键O主键由多个字段联合组成:字段字段[字段primary key1,2,3,...]createtable infoegidint10,salaryprimary keyid,name#定义id.nameffl【注意】并不是每一个表都需要一个主键,当多个表之间进行连接操作时需要用到主键,所以不需要为每个表建立主键,而且有些情况最好不使用主键☆使用外键约束一个表可以有一个或多个外键外键对应的是参照完整性,一个表的外键可以为空值首先,外键是表中的一个字段,它可以不是本表的主键,但对应的是另外一个表的主键定义外键后,不允许删除在另一个表中具有关联关系的行外键的作用是保持数据的一致性、完整性对于外键来说,有主表和从表之分主表(父表)对于两个具有关联关系的表而言,相关联字段中主键所在的按个表即使主表从表(子表)对于两个具有关联关系的表而言,相关联字段中外键所在的那个表即是从表创建外键的语法规则如下[constraint<外键名>]foreign key字段名1[,字段名2,・・・]references<主表名主键歹U egdint10primary key,namevarchar30salary floatgendcinti;[_i nt」♦primary varchar301Jconstraint fk_info foreignkeyinforeferences infoidffl【注意】外键约束不能跨引擎使用也就是说当从表要设置关联主表的外键约束时,主表的存储引擎与子表的必须一致,否则将导致设置外键约束失败所以说,存储引擎的设置并非完全随意☆使用非空约束非空约束指字段的值不能为空尹段名数据类型not null,eg——一namevarchar30notnull][—,了f io己tEB【注意】执行上面的命令后,后续在字段插入值时,该值也不可为空name☆使用唯一性约束唯一性约束要求该列唯一,允许为空,但只能有一个为空(同样是唯一)在定义完列之后直接指定唯一约束O字段名数据类型unique,eg、,,,■骸namevarchar30unique salary float,■■■■■■■■■♦♦11-Efl在定义完所有列后指定唯一约束<约束名>]字段名[constraint uniqueeg「na.ieva char30salary floatgender intlconstraint uni_que uniquenameEfl【注意】和的区别unique primary key一个表中可以有多个字段声明为但只能有一个声明,且声明为的列不允许有空值,但是声明为的字段确允许有空值的存在(即unique,primary key使只能有一个为空)primarykeyunique☆使用默认约束默认约束一一指定某列的默认值齐段名数据类型默认值,default egvarchar“「n float丁[genderintldefaultconstraint uni_que uniquenameffl☆设置表的属性值自动增加在中,默认的初始值是每新增一条记录,字段值自动加一个表只能有一个字段使用约束,且该字段必须为主键或主键的一部分MySQL autojncrement1,lo字段名数据类型autojncrementauto_increment,egdint10primarykeyauto_increment,varchar30salaryfloat.-I—int「Efl【注意】属性并不是只能从开始自增,当我们定义该属性时,可以指定第一条插入记录的自增字段的初始值,这样后续插入的记录的自增值将从你指定autojncrement1的初始值开始自增。
个人认证
优秀文档
获得点赞 0