sqlpppppWord文件下载.docx
- 文档编号:18216668
- 上传时间:2022-12-14
- 格式:DOCX
- 页数:8
- 大小:20.51KB
sqlpppppWord文件下载.docx
《sqlpppppWord文件下载.docx》由会员分享,可在线阅读,更多相关《sqlpppppWord文件下载.docx(8页珍藏版)》请在冰豆网上搜索。
也称用户模式,它是数据库用户能够看见和使用的局部数据的逻辑结构和特征的描述。
根据不同的应用需求或者数据库安全的考虑,一个数据库可以有多个外模式。
内模式
也称存储模式,是数据库中全体数据的物理结构和存储方式,它是数据库中的数据在存储设备中的具体组织和实现方式。
一个数据库的内模式是根据不同的现实情况和不同的应用需求来设计的,一经确定,一个数据库只有该一个内模式。
关系模型中的一些基本概念
实体:
客观存在并可以相互区别的事物。
如一个学生、一个学生的成绩、一个病人、一个医生
属性:
实体所具有的特性。
如学生的姓名、年龄、性别、病人的姓名、医生的姓名
实体集:
同一种类型实体的集合。
所有的男生、所有学生的成绩、所有病人、所有医生
关键字:
唯一标识实体的某个属性的字符串。
各种能被计算机处理和存储的信息总称。
如数值、文字、声音、图形、图象、视频等。
字段:
标识实体属性的符号,也称为数据项。
记录:
字段的有序集合。
数据表:
同一类型记录的集合,是一张二维表,行与记录对应,列与字段对应。
在计算机中体现为数据库的一张表。
主关键字(也称主键):
是标识一个记录的唯一标识符字段或字段组。
主关键字必须能够唯一标识表中的每一个记录,因此,不能有一个重复的值。
外关键字:
是表中的一个字段(或一组字段),它们是参照与之相关联的表中的字段。
对象资源管理器:
对象资源管理器采用树形结构表示数据库实例的拥有对象和它们之间的从属关系。
对象的根节点就是实例本身,树中每个节点代表一个数据库对象,叶节点是最小的数据库对象。
1)主数据文件(Primaryfile)
用来存储数据库的数据和数据库的启动信息。
每个数据库必须并且只有一个主数据文件,其扩展名为.MDF。
2)次要数据文件(Secondaryfile)
用来存储数据库的数据,使用辅助数据库文件可以扩展存储空间。
如果数据库用一个主数据文件和多个辅助数据文件来存放数据,并将它们放在不同的物理磁盘上,数据库的总容量就是这几个磁盘容量的和。
辅助数据文件的扩展名为:
.NDF
3)事务日志文件(Transactionlog)
用来存放数据库的事务日志。
凡是对数据库进行的增、删、改等操作,都会记录在事务日志文件中。
当数据库被破坏时可以利用事务日志文件恢复数据库的数据。
每个数据库至少要有一个事务日志文件,事务日志文件的扩展名为:
LDF
数据库分为两类:
系统数据库和用户数据库。
当安装完成后系统会自动创建5个系统数据库,其中4个在SQLServerManagementStudio环境中可见(master、model、tempb、msdb)和1个逻辑上不单独存在,隐藏的系统数据库Resource。
master数据库:
该数据库记录SQLserver2005的所有的服务器系统信息、注册账户和密码以及所有的系统设置信息等大量对系统至关重要的信息,是系统的关键性所在,所以他一旦受到破坏,可能会导致这个系统的瘫痪。
model数据库:
为用户提供了模板和原型,包含了每一用户数据库所需要的系统表。
它的定制结构可以被更改,因为每当用户创建新的数据库时,都是复制model数据库的模板,所以所作的所有更改都将反映到用户数据库当中。
tempdb数据库:
此数据库保存所有的临时性表和临时存储过程,并满足任何其他的临时存储要求。
tempdb数据库是全局资源,在每次启动时都重新创建,因此该数据库在系统启动时总是空白的。
msdb数据库:
此数据库供SQLserver代理程序调度报警和作业调度等活动。
Resource数据库:
是一个只读的数据库,它包含了SQLServer2005中的所有系统对象。
系统对象在物理上保存在Resource数据库文件中,在逻辑上显示在每个数据库的sys架构中。
为了将数据库从一个实例、服务器或应用转到另一个实例、服务器或应用,需要将数据库进行分离与附加操作
字段是数据库中有意义的最小的数据单位
在SQLServer创建表有如下限制:
每个数据库里最多有20亿个表。
每个表上最多可以创建1个聚集索引和249个非聚集索引。
每个表最多可以配置1024个字段。
每条记录最多可以占8060B。
对于带varchar、nvarchar、varbinary或sql_variant列的表,此限制将放宽,其中每列的长度限制在8000字节内,但是它们的总宽度可以超过表的8060字节的限制。
创建表的步骤:
1)定义表结构:
给表的每一列取字段名,并确定每一列的数据类型、数据长度、列数据是否可以为空等。
2)设置约束:
设置约束是为了限制该列输入值的取值范围,以保证输入数据的正确性和一致性。
3)添加数据:
表结构建立完成之后,就可以向表中输入数据了。
字段定义的说明(P272-275)
字段名称规定
不能在同一个表中两次使用同一个字段名;
一个字段名最多只能有64个字符;
字段名内可包含各种字母、数字、空格和特殊符号的组合,但不能用感叹号、顿号、重音符号和括号;
字段名不能以空格或控制符开始。
1.二进制数据
2.字符型数据类型
3.Unicode字符数据
4.日期时间型数据
5.整数型数据
6.精确数值型数据
7.近似数值类型
8.货币数据
9.位类型数据
创建、移除主键
⑴在“对象资源管理器”窗口,展开“医生数据库”节点,右击节点“dbo.医生表”,执行弹出快捷菜单的“修改”菜单项,打开表设计器“表-dbo.医生表”标签页。
⑵用鼠标右击列名“医生工号”,执行弹出快捷菜单的“设置主键”菜单项。
。
⑶保存该表的修改,刷新该表的“键”子节点,就会增加一条“PK_医生表”的叶节点,这就是医生表的主键,如图1所示。
⑷移除主键:
右击列名,执行弹出快捷菜单的“移除主键”菜单项。
新建、删除外键
⑴在“对象资源管理器”窗口,展开上面建立的“医生数据库”节点,右击节点“dbo.医生表”的子节点“键”,执行弹出快捷菜单的“新建外键”菜单项,如图1所示。
⑵打开“外键关系”对话框,单击列表框中“表和列规范”左侧的“+”按钮,展开子项目。
子项目中为缺省定义,如图2所示。
⑶如果缺省定义不符合要求,需要修改。
单击“TablesandColumnsSpecification”右边的“…”按钮,打开“TablesandColumns”对话框。
在“Primarykeytable”和“Foreignkeytable”分别选择相对应的表及列,并保存。
如图3所示
⑸在“对象资源管理器”窗口中刷新并展开该表的“键”子节点,就会增加一条名为“FK_医生表_科室表”的外键,如图4所示。
⑹删除外键的方法是展开该表的“键”子节点,在节点“FK_医生表_科室表”上单击鼠标右键,在弹出的快捷菜单执行“Delete”菜单项,就可以删除外键。
SQLServer2005的数据库查询使用T-SQL语言,其基本的查询语句是SELECT语句。
操作步骤:
选择要查询的数据库,鼠标右键选择“新建查询”,在弹出的查询窗口中,编写T—SQL语句,点击工具栏中的“执行!
”按钮,就可以看到结果。
SELECT字段名列表
FROM<
基本表名或视图名>
[IN外部数据库]
[WHERE<
条件表达式>
]
[GROUPBY<
列名1>
][HAVING子句]
[ORDERBY<
列名2>
][ASC|DESC]
[INTO<
新数据表>
从FROM子句指定的基本表或视图中读取记录。
如果有WHERE子句,根据WHERE子句的条件表达式,选择符合条件的记录。
如果有GROUPBY子句,根据GROUPBY子句的条件表达式,对记录进行分组。
如果有HAVING子句,根据HAVING子句的条件表达式,选择满足条件的分组结果。
如果有ORDERBY子句,根据ORDERBY子句的条件表达式,将按指定的列的取值排序。
最后根据SELECT语句指定列,输出最终的结果。
SELECT子句用于指定所选择的要查询的特定表中的列,它可以是星号(*)、表达式、列表、变量等。
FROM子句用于指定要查询的表或者视图,最多可以指定16个表或者视图,用逗号相互隔开。
WHERE子句用来限定查询的范围和条件。
FROM语句用来指定被查询基本表或视图,使用该语句可以查询单独表的数据也可以查询联合表的数据,具体格式如下:
FROM[<
database_name>
]<
table_name>
[INNERJOIN[<
ON<
连接条件>
SELECT科室表.科室代码,医生基本情况表.姓名,医生基本情况表.职务
FROM科室表INNERJOIN医生基本情况表
ON科室表.科室代码=医生基本情况表.科室代码
创建视图时应该注意:
只能在当前数据库中创建视图。
如果使用分布式查询,视图所引用的基表和视图可以存在于其它数据库或其它服务器中。
在一个视图中最多引用1024列,视图中记录的行数限制由基表中记录数目决定。
视图的名称必须遵循标识符的命名规则,且对每个架构都必须惟一,并且该名称不得与该架构包含的任何表的名称相同。
视图中列的名称一般继承其基表中列的名称,如果视图中某一列是算术表达式、函数、常量或者来自多个表的列名相同,必须要为视图中的列定义名称。
可以将视图创建在其它视图上,SQLServer2005中允许32层的视图嵌套。
不能在视图上创建全文索引,不能将规则、默认绑定在视图上。
不能在临时表上创建视图,也不能创建临时视图。
定义视图的查询语句中不能包含ORDERBY、COMPUTE、COMPUTEBY子句和INTO关键字
例:
在“医生基本情况表”中,查询“医生工号大于51000800005”并且“最高学历为研究生”的所有医生情况。
代码如下:
SELECT*FROM医生基本情况表
WHERE医生工号>
51000800005AND最高学历='
研究生'
在“医生数据库”中,查询在“神经内科”工作,并且姓“赵”的医生信息:
SELECT科室表.科室名称,医生基本情况表.姓名,医生基本情况表.出生日期
ON科室表.科室代码=医生基本情况表.科室代码
WHERE(科室表.科室名称=N'
神经内科'
)AND(医生基本情况表.姓名LIKEN'
赵%'
)
查看医生基本情况表中的所有医生记录,并且按照医生工号排序:
SELECT*FROM[医生数据库].[dbo].[医生基本情况表]
ORDERBY医生工号
本例中省略了ASC关键字,程序默认为ASC。
如果要按医生工号倒序排序的话,则用以下代码:
ORDERBY医生工号DESC
查看医生基本情况表中的所有医生记录,并且按照姓名和科室代码降序排序:
ORDERBY姓名DESC,科室代码DESC
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- sqlppppp