资源描述:
《sql server数据库实验代码》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、重庆交通大学学生实验报告实验课程名称数据库应用与设计开课实验室xxxxxxxxx学院xxx年级2011专业班xxxx学生姓名xxxxxx学号xxxxxx开课时间2013至2014学年第2学期总成绩教师签名实验2建立表和定义完整性约束实验名称建立模式、表和定义完整性约束实验内容在实验一建立的数据库的基础上,参照下图和下表建立表并定义完整性约束。仓库号城市面积供应商号供应商名地址仓库职工号经理工资职工供应商职工号供应商号订购单号订购日期金额订购单订购单号序号产品名称单价数量订购单明细表名字段名字段类型关键字约束说明仓库仓库号6个字符是前2位为英文,后4位为数字字符城市1
2、0个字符唯一,不允许为空面积数值大于等于50职工职工号8个字符是前6位参照仓库表的仓库号,后2位为数字字符经理参照职工号,说明该职工的经理是谁,允许空值工资货币大于等于1000,小于等于10000供应商供应商号4个字符是首位为大写字母S,后三位为数字字符供应商名16个字符地址30个字符订购单职工号参照职工表得职工号,不允许空值供应商号参照供应商表得供应商号,允许空值订购单号6个字符是前2位为英文大写字母OR,后四位为数字字符订购日期日期默认为当前日期金额货币默认空值,根据订购单明细的单价和数量计算订购单号是参照订购单表的订购单号,不允许空值订购单明细序号2位数字是产
3、品名称20个字符单价货币大于0,默认空值数量整数大于0,不允许空值实验目的熟练掌握表的建立和数据完整性速描定义方法,实践DBMS提供的数据完整性功能,加深对数据完整性的理解。 实验方法在实验一建立数据库的基础上用CREATE SCHEMA命令建立模式,用CREATE TABLE命令建立表并定义数据完整性约束,用ALTER TABLE命令修改表结构。实验要求1、用CREATE SCHEMA命令建立模式(自己命名模式名称)。 2、在定义的模式下参照图1和表1使用CREATE TABLE命令建立表并定义完整性约束。3、使用ALTER TABLE命令按如下要求修改表结构:
4、a)为订购单增加一个新的字段“完成日期”,类型为日期时间型,默认是空值。 b)为订单明细表的“数量”字段重新定义约束:大于0、小于等于1000的正整数,不允许为空值。 c) 将供应商表的供应商名字段的类型修改为varchar(30)。实验步骤createtable仓库(仓库号nchar(6)primarykeycheck(仓库号like'[A-Z][A-Z][0-9][0-9][0-9][0-9]'),城市nchar(10)notnullunique,面积floatcheck(面积>=50));createtable职工(职工号nchar(8)primarykeyc
5、heck(职工号like'____[0-9][0-9]'),仓库号asconvert(nchar(6),substring(职工号,1,6))persistednotnullforeignkeyreferences仓库(仓库号),经理nchar(8)foreignkeyreferences职工(职工号),工资moneycheck(工资>=1000and工资<=10000));createtable供应商(供应商号nchar(4)primarykeycheck(供应商号like'S[0-9][0-9][0-9]'),供应商名nchar(16),地址nchar(30))
6、;createtable订购单(职工号nchar(8)notnullforeignkeyreferences职工(职工号),供应商名nchar(16),订购单号nchar(6)primarykeycheck(订购单号like'OR[0-9][0-9][0-9][0-9]'),订购日期datetimedefaultgetdate(),金额moneydefaultnull);createtable订购单明细(订购单号nchar(6)notnullforeignkeyreferences订购单(订购单号),序号tinyint,primarykey(订购单号,序号),产品名
7、称nchar(20),单价moneydefaultnullcheck(单价>0),数量intnotnullcheck(数量>0));createtriggerdgdmxon订购单明细afterinsertasbegindeclare@订购单号nchar(6)select@订购单号=订购单号frominsertedupdate订购单set金额=(selectsum(单价*数量)from订购单明细where订购单号=@订购单号)where订购单号=@订购单号end实验3数据操作和完整性约束的作用实验名称数据操作笔完整性约束的作用 实验内容在实验二的基础上完成数据的插