已阅读5页,还剩23页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第2章SQL语句基础之DDL,授课人:吴志霞电话Q:1035837738,课程内容,涉及数据库结构的SQL语句表的创建表的修改,课程目标,掌握SQL语句基础之DDL,课时安排,理论:3学时上机:2学时,授课重点,数据库的创建表的创建表的修改,授课方法,演示法,SQL语言,什么是SQL?SQL(StructuredQueryLanguage)是结构化查询语言。,学生-课程数据库,学生-课程模式:学生表:Student(Sno,Sname,Ssex,Sage,Sdept)课程表:Course(Cno,Cname,Ccredit)学生选课表:SC(Sno,Cno,Grade),Student表(学生表),Course表(课程表),SC表(学生选课表),涉及数据库结构的SQL语句,数据库的创建语法:CREATEDATABASE切换数据库语法:USE数据库的删除语法:DROPDATABASE修改数据库的编码语法:ALTERDATABASEcharactersetutf8,表的创建,CREATETABLE(,);如果完整性约束条件涉及到该表的多个属性列,则必须定义在表级上,否则既可以定义在列级也可以定义在表级。,示例1,建立“学生”表Student,学号是主码,姓名取值唯一,性别只能为男或女,年齡默认值为18。-约束条件定义在列级CREATETABLEStudent(SnoCHAR(9)PRIMARYKEY,SnameVARCHAR(20)UNIQUE,SsexCHAR(2)Check(Ssexin(男,女),SageSMALLINTDefault18,SdeptVARCHAR(20)NOTNULL)注:char,varchar,nvarchar的区别char不够长度自动补空格,示例1(续),-约束条件定义在表级CREATETABLEStudent(SnoCHAR(9),/*列级完整性约束条件*/SnameVARCHAR(20),/*Sname取唯一值*/SsexCHAR(2),SageSMALLINTdefault18,SdeptVARCHAR(20)NOTNULL,constraintpk_snoPrimarykey(Sno),unique(sname),Check(Ssexin(男,女),示例2,创建Course表创建SC表,PRIMARYKEY约束,一个表只能有一个PRIMARYKEY约束PRIMARYKEY约束中的列都不能接受空值。如果PRIMARYKEY约束定义在不止一列上,则一列中的值可以重复,但PRIMARYKEY约束定义中的所有列的组合的值必须唯一。,UNIQUE约束,UNIQUE约束中的列接受null值。保持列的唯一性示例:CREATETABLEStudent(SnoCHAR(9)PRIMARYKEY,SnameVARCHAR(20)UNIQUE,SsexCHAR(2)Check(Ssexin(男,女),SageSMALLINTDefault18,SdeptVARCHAR(20)NOTNULL),DEFAULT定义,默认值示例:CREATETABLEStudent(SnoCHAR(9)PRIMARYKEY,SnameVARCHAR(20)UNIQUE,SsexCHAR(2)Check(Ssexin(男,女),SageSMALLINTDefault18,SdeptVARCHAR(20)NOTNULL),CHECK约束,限制输入到列中的值来强制域的完整性。示例:CREATETABLEStudent(SnoCHAR(9)PRIMARYKEY,SnameVARCHAR(20)UNIQUE,SsexCHAR(2)Check(Ssexin(男,女),SageSMALLINTDefault20,SdeptVARCHAR(20)NOTNULL),FOREIGNKEY约束,FOREIGNKEY约束可引用同一数据库中的表或同一表(自引用表)内的列.示例-创建学生选课表createtableSC(snochar(9)notnull,cnochar(4)notnull,ccreditintnotnull,foreignkey(sno)referencesStudent(sno),foreignkey(cno)referencesCourse(cno),primarykey(sno,cno)FOREIGNKEY与CHECK区别:FOREIGNKEY约束从另一个表中获得有效数值列表。CHECK约束从逻辑表达式判断而非基于其它列的数据。,课堂练习,建立“部门”表Dept,部门编号是主码,部门名称取值唯一建立“员工”表Employee,工号是主码,姓名取值唯一,性别只能为男或女,年齡不可为空,部门必须存在于”部门“表Dept中,工资必须大于等于1300小于等于2000。,参考,createtableDept(deptnochar(4)PRIMARYKEY,deptNamechar(20)notnull)CREATETABLEEmployee(empnoCHAR(9)PRIMARYKEY,nameCHAR(20)UNIQUE,sexCHAR(2)Check(Ssexin(男,女),ageSMALLINTDefault20,deptCHAR(4)Foreignkeyreferencesdept(deptno),salaryint(4)Check(salary=1300andsalary=2000),表的修改,ALTERTABLEADD完整性约束ADDDROPCOLUMNCHANGECOLUMN;添加新列添加某个约束条件实现删除某列相同则修改某列的数据类型/修改某列的列名,示例,例1向Student表增加“入学时间”列,其数据类型为日期型。ALTERTABLEStudentADDS_entranceDatetime不论基本表中原来是否已有数据,新增加的列一律为空值。例2增加课程名称必须取唯一值的约束条件。ALTERTABLECourseADDUNIQUE(Cname)例3删除Student表的“入学时间”列。ALTERTABLEStudentDROPCOLUMNS_entrance例4修改Student表的“名字”列,其数据类型为数值型。ALTERTABLEStudentChangeCOLUMNsnamesnameint改回ALTERTABLEStudentChangeCOLUMNsnamesnamevarchar(255),表的删除,语法:DROPTABLEtable_name注意:1.DROPTABLE不能用于除去由FOREIGNKEY约束引用的表。必须先除去引用的FOREIGNKEY约束或引用的表。2.如果删除表内的所有行运用(DELETEtablename)或(TRUNCATETABLEtable_name)语句。,小结,涉及数据库结构的SQL语句表的创建表的修改,实训一SQL语句基础之DDL,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 中药学三基2026年中药鉴定学基础题库
- 2026年领导如何处理员工冲突的面试问题
- 2026年企业安全生产管理人员风险排查技能测试
- 国际物流组织与管理课件
- 中国电信光纤到户FTTH工程施工及验收规范
- 五年级数学运算定律小数简便计算练习题(每日一练共9份)
- 2026年及未来5年市场数据中国生质氢/甲醇行业市场需求预测及投资战略规划报告
- 2026届辽宁省丹东市重点名校中考英语模拟预测题含答案
- 2026年及未来5年市场数据中国改善肠胃保健品行业市场深度分析及投资策略研究报告
- 2026年及未来5年市场数据中国电池材料回收行业市场发展数据监测及投资战略咨询报告
- 2025神经网络与深度学习卷积神经网络
- 急性上消化道大出血应急预案及处理流程
- 口腔癌的口腔护理
- 购货合同模板写
- DL-T596-2021电力设备预防性试验规程
- NB-T11092-2023水电工程深埋隧洞技术规范
- 专题1.5 整式的乘除章末拔尖卷(北师大版)(解析版)
- 钢结构吊装专项施工方案(钢结构厂房)
- HGT4134-2022 工业聚乙二醇PEG
- 国开2023秋《人文英语3》第5-8单元作文练习参考答案
- 煤矿班组长培训课件
评论
0/150
提交评论