您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 人事档案/员工关系 > 数据库中表的基本操作
第四章数据库中表的基本操作(表)考试数据库学生数据、试题数据、教师数据、试卷数据等要存储起来学生关系模型、试题关系模型、教师关系模型、试卷关系模型第四章数据库中表的基本操作4.1SQLServer表的概述4.2数据库中表的创建4.3表的修改与删除4.4数据的添加与表的查看4.5案例应用举例第四章数据库中表的基本操作4.1SQLServer表的概述一、1、表的概念在SQLServer数据库中,表定义为列的集合,与Excel电子表格相似,数据在表中是按行和列的格式组织排列的。每行代表唯一的一条记录,而每列代表记录中的一个域。学号姓名性别出生日期系部入学时间000101张三男1980计算机2000000201李伟男1981经济管理2000010101王丽女1982数学2001关系名属性(列)属性(列)和属性名关系模式关系元组主键(码)学生表第四章数据库中表的基本操作4.1SQLServer表的概述2、SQLServer表与关系模型的对应关系模型SQLServer表关系名表名关系表关系模式表的定义属性表的列或字段属性名字段名或列名值列值或字段值元组表的行或记录码主键关系完整性SQLServer的约束第四章数据库中表的基本操作4.1SQLServer表的概述3、表的设计过程中,在SQLServer创建表有如下限制:1、每个数据库里最多有20亿个表。2、每个表上最多可以创建一个聚集索引和249个非聚集索引。3、每个表最多可以配置1024个字段。4、每条记录最多可以占8060B,但不包括text字段和image字段。第四章数据库中表的基本操作4.1SQLServer表的概述二、基本的数据类型在创建数据库中的表的时候,牵涉到表体结构,也就是说牵涉到表中的字段数据的格式,所以为数据列选择数据类型是一项非常重要的工作。在定义了表列的数据类型以后,它将作为一项永久的特性被保留下来,而无法改变。所以精心选择表列的数据类型是建立性能良好的表格的前提。数据类型包含8大类,及几种新的数据类型。第四章数据库中表的基本操作4.1SQLServer表的概述1、整型数据类型能够存储精确的不带小数点的数字值的方法,可以分为五大类。bit取值范围只能是0或1,通常用作真假逻辑。bigint占用8个字节int占用4个字节占用字节数决定存储范围的大小smallint占用2个字节tiny占用1个字节第四章数据库中表的基本操作掌握基本的数据类型2、数字数据类型可以精确指定小数点两边的总位数(精度)和小数点右面的位数(刻度).1=精度=380=刻度=精度分配的存储空间随精度的不同而不同numeric唯一的区别就是在主键为indentity列,只能定义numeric类型decimaldecimal(7,3)9999.994/9999.995第四章数据库中表的基本操作掌握基本的数据类型3、浮点数据类型能够存储范围非常大的数字,一般应用于科学计算或者统计计算等,不要求绝对精度的运算场合。real存储范围占用4个字节,精度可达7位。float(n)可以用n来确定科学计数法中的数据尾数的位数,范围可达53位。当n的取值为1~24时,可达到的精度是7位;当n的取值是25~53时,精度是15位,用8个字节来存储。第四章数据库中表的基本操作掌握基本的数据类型4、字符数据类型char每个字符使用一个字节的存储空间,使用固定长度来存储字符,最长可容纳8000个。如果实际的字符串小于给定的最大长度,则会以空格填充,如果实际的字符串大于给定的最大长度,则截断。varchar可以存储到8000个字符的变长字符型数据,存储为实际的字符串的长度。text当要存储的字符的数据量非常庞大时,则使用text数据类型。他的最大长度可以达到2G左右。第四章数据库中表的基本操作掌握基本的数据类型5、二进制数据类型二进制数据在SQL中用十六进制进行表示,前边用0x标记。binary具有固定长度,最大长度可达8kb,当输入的实际数据小于定义的长度时,后面补0。varbinary具有不固定的长度。image用于存储字节数超过8kb的数据,例如图象数据。第四章数据库中表的基本操作掌握基本的数据类型对text、image数据类型:1、不可使用select命令中的orderby、groupby命令。2、不可作为索引文件的关键字。3、也不可使用在where语句中,但是对于text数据可以使用where语句中的模糊查询。第四章数据库中表的基本操作掌握基本的数据类型6、货币数据类型money占用8个字节,前面4个表示货币的整数,后面4个表示小数。smallmoney占用4个字节。7、日期/时间数据类型datetime表示范围1753年1月1日~~9999年12月31日,占用8个字节可以精确到毫秒smalldatetime表示范围1900年1月1日~~2079年6月6日,占用4个字节可以精确到分。第四章数据库中表的基本操作掌握基本的数据类型8、双字节数据类型用于存储要用两个字节才能存储的双字节字符。nchar(n)固定长度的双字节,可以存储1~4000字符。nvarchar(n)可变长度的双字节。ntext(n)可存储大量的字符。9、SQL-variant数据类型可以存储除text、ntext、image以外的各种类型数据,也不可以自身转储。如果SQL-variant类型的数据进行计算,则重新转换为本身的数据类型第四章数据库中表的基本操作掌握基本的数据类型10、table数据类型可以用来定义变量或者用于用户自定义函数的返回值,一般用来存储从数据库中提取出来得结果。11、图象、文本数据使用时涉及到的几个函数12、用户自定义数据类型null建立语法:sp_addtypetype_name,systemtype,notnull删除语法:sp_droptypetype_namenonnull第四章数据库中表的基本操作表的创建1.使用企业管理器创建表的步骤:1)定义表结构:给表的每一列取字段名,并确定每一列的数据类型、数据长度、列数据是否可以为空等。2)设置约束:设置约束是为了限制该列输入值的取值范围,以保证输入数据的正确性和一致性。3)添加数据:表结构建立完成之后,就可以向表中输入数据了。第四章数据库中表的基本操作表的创建2.使用T-SQL语句创建表的基本语法:CREATETABLE[database_name.[owner].|owner.]table_name({column_definition}|[{PRIMARYKEY|UNIQUE}[,...n])column_definition::={column_namedata_type}[COLLATEcollation_name][[DEFAULTconstant_expression]|[IDENTITY[(seed,increment)[NOTFORREPLICATION]]]][column_constraint][...n]第四章数据库中表的基本操作表的创建语法注释:ldatabase_name:指定创建的表所在的数据库lowner:指定表的所有者ltable_name:指定新建表的名称lcolumn_definition:表中字段的定义表达式lcolumn_name:表中的字段名ldata_type:字段的数据类型lseed:自动标识的开始值lincrement:自动编号的步长lCREATETABLE:创建表语句的关键字lPRIMARYKEY:主键约束lUNIQUE:字段唯一性约束lDEFAULT:字段的默认值约束lIDENTITY:自动编号标识第四章数据库中表的基本操作表的创建例:创建带有参照约束的学生表,学生表的表结构定义如下表所示。“学号”字段为学生表的主键,“班级代码”字段为学生表的外键,它必须参照班级表中的“班级代码”字段的值。字段名字段数据类型长度是否为空约束学号char12否主键姓名char8是性别char2是出生日期datetime8是入学时间datetime8是班级代码char9否外键系部代码char2是专业代码char2是表的创建创建“专业”表的代码如下:USEStudentGOCREATETABLE专业(专业代码char(2)notnull,专业名称Varchar(20)notnull,系部代码char(2)notnull)GO创建“班级”表的代码如下:USEStudentGOCREATETABLE班级(班级代码char(9)constraintpk_bjdmprimarykey,班级名称Varchar(20)notnull,专业代码char(2)notnull,系部代码char(2)notnull,备注Varchar(50))GO第四章数据库中表的基本操作表的创建创建“学生”表的代码如下:USESTUDENTGOCREATETABLE学生(学号char(12)CONSTRAINTpk_xhPRIMARYKEY,姓名char(8),性别char(2),出生日期datetime,入学时间datetime,班级代码char(9)CONSTRAINTfk_bjdmREFERENCES班级(班级代码),专业代码char(2),系部代码char(2))GO第四章数据库中表的基本操作表的修改使用企业管理器修改表1)打开企业管理器,选择相应的数据库,展开表节点。2)在企业管理器的明细窗格中,右击要修改的表,在弹出的快捷菜单中选择“设计表”命令,打开表设计器。3)在表设计器中修改各字段的定义,如字段名、字段类型、字段长度、是否为空等。4)添加删除字段。第四章数据库中表的基本操作表的修改语法:ALTERTABLEtable_name{[ALTERCOLUMNcolumn_name{new_data_type[(precision[,scale])][COLLATEcollation_name][NULL|NOTNULL]|{ADD|DROP}ROWGUIDCOL}]|ADD{[column_definition]}[,...n]|DROP{[CONSTRAINT]constraint_name|COLUMNcolumn}[,...n]}语法:column_definition::={column_namedata_type}[[DEFAULTconstant_expression][WITHVALUES]|[IDENTITY[(seed,increment)[NOTFORREPLICATION]]]][ROWGUIDCOL][COLLATEcollation_name][column_constraint][...n]第四章数据库中表的基本操作表的修改语法注释:lALTERCOLUMN:修改表列属性的子句lADD:增加列或约束的子句lDROPCOLUMN:删除表列的子句ltable_name:需要修改表的表格名称lcolumn_name:希望增加的字段名ldata_type:需要增加的字段的数据类型名lcollation_name:排序规则名例:表的修改在学生表中增加“家庭住址”:USEStudentGOALTERTABLE学生ADD家庭住址Varchar(30)nullGO将“家庭住址”字段属性修改代码如下:USEStudentGOALTERTABLE学生ALTERCOLUMN家庭住址Varchar(50)nullGO第四章数据库中表的基本操作表的删除使用企业管理器删除表操作步骤如下:1)打开企业管理器,选择相应的数据库并展开表节点。2)在企业管理器的明细窗格中,右击要删除的表,在弹出的快捷菜单中选择“删除”命令,出现除去对象对话框时,单击“全部除去”按钮即可删除表。使用DROPTABLE语句删除表USESTUDENTGODROPTABLE专业GO第四章数据库中表的基本操作表的查看1)使用企业管理器查看在企业管理器,右击需要查看结构的表,在弹出的
本文标题:数据库中表的基本操作
链接地址:https://www.777doc.com/doc-3827740 .html