数据库SQL应用基础教学PPT第三、四次(共6次).ppt_第1页
数据库SQL应用基础教学PPT第三、四次(共6次).ppt_第2页
数据库SQL应用基础教学PPT第三、四次(共6次).ppt_第3页
数据库SQL应用基础教学PPT第三、四次(共6次).ppt_第4页
数据库SQL应用基础教学PPT第三、四次(共6次).ppt_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1,SQL基础,西南财经大学经济信息工程学院,西南财经大学数据库技术课程组 2011.02,2,SQL基础,SQL概述 (Structured Query Language)结构查询语言的缩写。 是所有关系数据库管理系统的标准语言,也就是说,可以使用SQL对所有关系数据库进行操作。 SQL语句编写规则: 1、关键字不区分大小写; 2、编写SQL语句时关键字需要大写; 3、语句用半角字符; 4、语句以分号结束。,3,关系数据库标准语言SQL,SQL的数据查询功能 SQL的数据定义功能 SQL的数据操纵功能。,4,表的创建、删除、修改操作,1、表名和列名必须以字母、汉字开头,长度不超过30个字符,做到“见名知意”,不能使用oracle服务器的保留字; 2、名字大小写不敏感;,5,创建表,1创建表的基本的命令 在SQL语言中,使用CREATE TABLE命令创建数据表。 【命令】CREATE TABLE ( (宽度 ,小数点位数) ; , (宽度 ,小数点位数 ) 【功能】创建一个以为表的名字、以指定的字段属性定义的数据表。 【说明】定义表的各个属性时,需要指明其数据类型及长度。常用数据类型说明见表,6,创建表,7,创建表,【例23】创建新表customerbk ,其结构和表customer相同。 CREATE TABLE customerbk ( cust_id CHAR(18) , cust_name varCHAR2(20), cust_city varchar2(30) , cust_phone varCHAR2(13), cust_gender CHAR(1) , cust_job varCHAR2(30); 执行CREATE TABLE语句后,新建表成为当前打开的表。,8,创建表,2创建表的同时定义完整性规则 对于数据库表,在创建表的时候,可通过以下命令格式对表的完整性规则进行定义。 【命令】CREATE TABLE ( (宽度 ,小数点位数) ; CONSTRAINT 约束名 NOT NULL CONSTRAINT 约束名 PRIMARY KEY DEFAULT 表达式1 CONSTRAINT 约束名 CHECK 逻辑表达式1 【功能】 创建一个表。 NOT NULL定义字段不能为空 PRIMARY KEY定义表的主索引。 DEFAULT定义字段的默认值。 CHECK定义字段的有效性规则。 说明:DEFAULT定义的默认值的类型应和字段的类型相同。CHECK定义的有效性规则必须是一个逻辑表达式。,9,创建表,【例24】创建新表customerbk ,其结构和表customer相同。同时定义约束条件: cust_id为主键、 cust_name 为非空、 cust_gender默认值为M,其取值范围是F或M CREATE TABLE customerbk ( cust_id CHAR(18) CONSTRAINT custbk_pk PRIMARY KEY, cust_name varCHAR2(20) CONSTRAINT cust_name_nnull NOT NULL, cust_city varchar2(30) , cust_phone varCHAR2(13), cust_gender CHAR(1) DEFAULT M CONSTRAINT cust_gender_mf CHECK (cust_gender=M or cust_gender=F), cust_job varCHAR2(30);,10,创建表,在插入或修改记录时,如果违反约束条件,系统会提示错误信息: 第 * 行出现错误: ORA-02290: 违反检查约束条件 (约束名),11,修改表的结构,在SQL语言中,使用ALTER TABLE命令修改表的结构,包括增加字段、删除字段、修改字段。对于数据库表,可以使用ALTER TABLE命令增加数据完整性规则、删除数据完整性规则和修改数据完整性规则。,12,修改表的结构,1增加字段 【增加一个列命令】 ALTER TABLE ADD (宽度 ,小数点位数) 【增加多个列命令】 ALTER TABLE ADD ( (宽度 ,小数点位数), (宽度 ,小数点位数)) 【功能】在表中增加新字段,并定义字段的属性。 【例25】在Customer表中增加客户生日cust_birth字段,类型是Date ALTER TABLE customerbk ADD cust_birth Date; 【例26】在Customer表中增加客户生日cust_birth字段,类型是Date,客户家庭地址cust_address,类型是varCHAR2(30) ALTER TABLE customerbk ADD ( cust_birth Date,cust_adress varCHAR2(30);,13,修改表的结构,2修改字段 【修改一个列命令】 ALTER TABLE modify (宽度 ,小数点位数) 【修改多个列命令】 ALTER TABLE modify ( (宽度 ,小数点位数), (宽度 ,小数点位数)) 【功能】修改表中字段的属性。 【例27】将Customer表中cust_address字段类型修改为varCHAR2(40) ALTER TABLE customerbk modify cust_adress varCHAR2(40);,14,修改表的结构,3删除字段 【删除改一个列命令】 ALTER TABLE drop column 【删除多个列命令】 ALTER TABLE drop ( , ) 【功能】删除表中指定的字段 【注意】删除表中一个字段有Column关键字,删除多个字段没有 【例28】删除表customerbk中cust_birth和cust_adress字段。 ALTER TABLE customerbk drop ( cust_bith,cust_adress) ;,15,修改表的结构,4定义或修改数据完整性 ALTER TABLE语句操作数据库表的数据完整性的命令格式主要有两 如果增加UNIQUE、PRIMARY KEY、FOREIGN KEY 和CKECK 必须使用ALTER TABLE语句的ADD子句; ALTER TABLE 表名 ADD CONSTRAINT 约束名 约束类型 约束定义 如果增加NOT NULL约束,那么必须使用ALTER TABLE语句的MODIFY子句, ALTER TABLE 表名 MODIFY 列名 CONSTRAINT 约束名NOT NULL; 【功能】在表中定义或修改字段的约束条件。,16,5、改字段名 ALTER TABLE TableName RENAME COLUMN FieldName1 to FieldName2,17,修改表的结构,【例29】在Customerbk中增加约束条件,设置cust_phone为非空 ALTER TABLE customer MODIFY cust_phone CONSTRAINT cust_phone_nnull NOT NULL; 【例30】在Customerbk中增加约束条件,设置cust_phone的长度大于6位 ALTER TABLE customer ADD CONSTRAINT cust_phone_const CHECK (length(cust_phone) = 6);,18,删除表,在SQL语言中,删除表的命令是DROP TABLE。 【命令】DROP TABLE 表名 【功能】删除表。 【例31】从磁盘上删除表Customerbk。 DROP TABLE Customerbk,19,SQL的数据操纵功能,SQL语言的数据操纵也称为数据更新,主要包括插入数据、修改数据和删除数据3种语句。,20,SQL的数据操纵功能,SQL语言的数据操纵也称为数据更新,主要包括插入数据、修改数据和删除数据3种语句。 插入记录 插入数据是把新的记录插入到一个存在的表中。插入数据使用语句INSERT INTO。 【命令】INSERT INTO (,) VALUES(,),21,插入记录,【例32】在表customer中插入一个新的记录(6666,wang,成都F,个体户) insert into customer values(6666,wang,成都, F, 个体户 ) 注意:各列名和数据必须用逗号分开,字符型数据要用字符定界符括起来。 采用上述格式,字段值应该和表的字段顺序一致 【例33】在表customer中插入新记录: cust_id:8888,cust_name:cheng,cust_phoneinsert into customer (cust_id,cust_name,cust_phone) values (8888,cheng 思考8888记录的Cust_gender的值是?,22,更新记录,可以使用UPDATE语句对表中的一个或多个记录的某些列值进行修改。 【命令】UPDATE SET = ,= WHERE 【功能】对表中的一个或多个记录的某些字段值进行修改。 【说明】指定要修改的表;SET给出要修改的字段及其修改以后的值;WHERE指定需要修改的记录应当满足的条件,WHERE省略时,则修改表中所有记录。 【例34】将表customer中客户号为8888的cust_city的值修改为重庆。 update customer set cust_city=重庆,cust_gender=F where cust_id=8888;,23,删除记录,使用DELET

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论