sql and access database 终极讲义

上传人:子 文档编号:43002668 上传时间:2018-06-04 格式:DOC 页数:11 大小:17.42KB
返回 下载 相关 举报
sql and access database 终极讲义_第1页
第1页 / 共11页
sql and access database 终极讲义_第2页
第2页 / 共11页
sql and access database 终极讲义_第3页
第3页 / 共11页
sql and access database 终极讲义_第4页
第4页 / 共11页
sql and access database 终极讲义_第5页
第5页 / 共11页
点击查看更多>>
资源描述

《sql and access database 终极讲义》由会员分享,可在线阅读,更多相关《sql and access database 终极讲义(11页珍藏版)》请在金锄头文库上搜索。

1、SQLSQL andand AccessAccess databasedatabase 终极讲义终极讲义SQL and Access database 平时成绩:网络课程考勤期末成绩:笔试总评平时成绩期末成绩第一次课 数据库管理系统概述一、数据库的基本概念二、数据模型:关系模型三、关系数据库1.Access2.SQL Server database 第三章 创建 ACCESS 数据库3.1.3 创建空白数据库3.2.1 打开和关闭数据库的操作3.3 创建 ACCESS 表一、数据类型1.文本2.数字3.备注4.货币5.日期时间6.是否7.OLE 对象8.超链接二、创建表的多种方法:1.表向导:

2、通过示例帮助用户建立数据表.2.表设计器:由用户自己设计表.3.输入数据:通过输入数据由 ACCESS 帮助建立数据表.4.导入表:由其它数据源导入表.5.链接表:建立与外部文件的链接.三、约束为了维护数据库的完整性,为输入的数据设置的一系列的限制条件。(1)主键约束:(primary key)用来保证表中的每一条记录是唯一的,主键不能为空,也不能有重复值。一个表格只能有一个主键。(2)唯一约束:(unique)功能类似于主键约束,但一个表格可以有多个唯一约束,而且唯一约束可以为空,但不能有重复值。(3)外键约束:(foreign key)建立表格之间的关系,保证表之间数据的一致性。(4)检查

3、约束:(check)限制输入数据的取值范围。(5)默认值约束:(default)可以减少输入的工作量,默认值可以是常量、表达式或内置函数。(6)空值约束:(null)有些字段允许为空,有些字段不允许为空。eg3.1:use marketgocreate table customers( 客户编号 int primary key,姓名 varchar(20) not null,地址 varchar(50),电话 varchar(20) unique,出生日期 datetime)eg3.2:use marketgocreate table goods(货品名称 varchar(20) primar

4、y key,库存量 int,供应商 varchar(50),状态 bit default 0,价格 money)eg3.3:use marketgocreate table orders( 订单号 int identity(1,1) primary key,货品名称 varchar(20) not null references goods(货品名称),客户编号 int foreign key references customers(客户编号),数量 int not null check(数量0),总金额 money,订货日期 datetime default getdate()3.设置约束

5、(1)主键约束(2)唯一约束(3)外键约束(4)检查约束4.向表中添加数据(1)使用企业管理器添加数据:图 3.11(2)用 insert 语句添加数据:insert.values(.)insert.select.四、修改表1.使用企业管理器修改表表由结构和数据组成,当前修改表是指修改表的结构和约束。(1)添加字段(2)删除字段(3)修改约束2.使用 alter table 语句修改表(1)使用 add 子句添加列eg3.4:use marketalter table customersadd 电子邮件 varchar(50) not null(2)使用 add constraint 子句添加

6、约束eg3.5:use marketalter table customersadd constraint def_e default for 电子邮件注意:1.当前建立的默认值约束只对从这个位置开始后面的数据起作用。2.每种约束在 SQL 语句中的表达形式不同,要注意总结。(3)使用 drop constraint 子句删除约束eg3.6:use marketalter table customersdrop constraint def_e(4)使用 drop column 子句删除列eg3.7:use marketalter table customersdrop column 电子邮

7、件(5)使用 alter column 子句修改列属性eg3.8:use market alter table customersalter column 电子邮件 char(50) null注意:将原来允许为空的列设置为不允许为空,必须保证之前没有存放空值的记录。(6)使用 nocheck constraint 子句使约束无效或重新有效。eg3.9:use marketalter table customers nocheck constraint def_ealter table customers check constraint def_e五、删除表(1)界面操作(2)SQL 语句eg

8、: use marketdrop table ordersdeletetruncate table第四部分 数据的查询与更新前提:1.完成了用户数据库的创建,并且数据库处于打开的状态。2.对应的表已经存在于数据库当中。对数据的操作:1.从数据库中查找出满足条件的数据:select(查找的结果是一个动态集,不占用数据库的存储空间)2.添加、修改和删除数据:insert,update,delete一、select 语句的基本语法格式select 字段名称 1,字段名称 2,.,字段名称 ninto 新表名from 表名 1,表名 2,.,表名 nwhere 条件表达式group by 字段名hav

9、ing 条件表达式order by 字段名 asc|desc二、简单查询1.使用 select 子句选取字段(1)输出表中所有的列eg4.1:查询 customers 表中所有列的信息。use marketselect * from customers(2)输出表中的部分列eg4.2:从 customers 表中选取“姓名”和“电话”2 个字段作为查询的输出字段。use marketselect 姓名,电话 from customers(3)为结果集内的列指定别名当结果集中的列是表中现成的列,可以使用表中原有的列名。但有的时候,结果集中的有些列是原表中一列或多列的运行结果,这个时候需要对这样的

10、列重命名。为结果集指定列名的语句格式:1.select 列别名=原列名 from 数据源2.select 原列名 as 列别名 from 数据源eg4.3:从 goods 表中选取“货品名称”和“总价格”2 个字段,其中总价格是库存量*价格计算确定。use marketselect 货品名称 as 商品名称,总价格=库存量*价格 from goods(4)过滤结果集中的重复行查询的结果集中可能会出现重复的记录,使用 distinct 关键字能够除去这些重复的记录。eg4.4:从 orders 表中输出“货品名称” ,删除重复列。use marketselect distinct 货品名称 fr

11、om orders(5)限制返回的行数top n 子句top n percent 子句eg4.5:查询 customers 前 3 条记录。use marketselect top 3 * from customers2.使用 into 子句可以将 select 语句的结果集存储为一个新的表格,但前提是用户要有创建新表的权限。注意:1.where 子句中的表达式恒为假时,形成一个和原表结构一样的空表。2.into 子句后的表名如果是以“#”开头,则生成的是一个临时表,如果不带“#”,则生成的是一个永久表。eg4.6:创建一个与 customers 表结构完全相同的空表 newtab.use m

12、arketselect * into newtab from customers where 1=2select * from newtab3.使用 where 子句:查找所有记录中满足条件的数据。(1)比较运算符eg4.7:查询 goods 表中库存量大于等于 100 的货品记录。use marketselect * from goods where 库存量=100(2)范围运算符:测试表达式的值在或不在指定的范围之内。测试表达式 not between 起始值 and 终止值eg4.8:查询 goods 表中库存量不在 100500 之间的货品记录。use marketselect * f

13、rom goods where 库存量 not between 100 and 500(3)列表运算符:提供一系列的可选值,不指定范围。测试表达式 not in(列值 1,.,列值 n) eg4.9:查询 customers 表中姓名是“王兰” “李红”的客户信息。use marketselect * from customers where 姓名 in(王兰,李红)(4)模式匹配运算符:判断字符型的数据是否和指定的格式相匹配。like 通配符 和 not like 通配符%:代表 0 个或者多个字符_:代表单个字符:选取指定范围内的单个字符:代表不在指定范围内的单个字符测试表达式 not l

14、ike 通配符eg4.10:查询 customers 表中姓李的客户信息。use marketselect * from customers where 姓名 like 李%(5)空值运算符测试表达式 is not nulleg4.11:查询 goods 表中不知道供应商名称的货品信息,即供应商为空。use marketselect * from goods where 供应商 is not null(6)逻辑运算符:not ,and,oreg4.12:用 2 种方法查询 goods 表种库存量在 1001000 之间的货品记录。use marketselect * from goods where 库存量 between 100 and 1000select * from goods where 库存量=100 and 库存量=1000

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 科普知识

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号