回顾:
1、建库、建表、加约束、创建登陆账号
2、基本语句: 增删改查
3、聚合函数:
4、表连接:
课程内容:
1、三大规范设计数据库
2、SQL 2008 T-sql 编程级DDl语法
3、存储过程封装复杂业务逻辑
4、视图简化开发
5、用户自定义函数
6、触发器
7、游标
8、安全性管理
9、备份与还原
10、索引及性能优化
一、规范
二、编程需求分析:分析业务和数据处理
概要设计:设计数据库E-R模型,去野人需求信息的正确性和完整性
详细设计:将E-R图转化为多张表,并进行三大范式审核
代码编写阶段:功能进行物理实现
测试阶段:。。。安装部署:。。。。。
1.1标识对象(实体entity)
如:用户:普通用户、版主。 用户主贴。跟帖。版块:每个版块信息
1.2标识实体属性(attribute)
如:用户的:用户名,密码,邮件 ,生日。。。。等等的基本信息。帖子的:发帖人,表情,数量,标题。。。等等。 回帖:帖子编号,回帖人,标题,正文。。。等等回帖信息。版块的:版块名称,版主,点击率,帖子数。。。等等
1.3标识对象之间的关系(relationship)
如:跟帖和主贴关系,跟帖的跟的是谁。版块和用户:从用户对象中可以根据版块对象查处对应的版主用户情况。板块与帖子(主 跟)主从关系。
E-R图--》数据库 E-R图要构造一个1对多的关系,如1个用户针对多个帖子,一个主贴有多个跟帖
第一范式:确保每列的原子性,每列不能再被分解,如:中国北京-可分为 中国 和北京
第二范式:除主键外的其他列都依赖该主键(每个表只描述一件事)如 表字段(订单编号,产品编号,订购日期,价格)--->日期有订单编号决定,价格由产品编号决定,因此要分成两个表。
第三范式:不能很出现传递依赖如:订单编号,供应商ID,供应商姓名 , 订单编号决定供应商ID,供应商ID决定姓名
使用变量
局部变量:@age
全局变量:@@ ,全局变量是系统定义的,只能使用不能自定义。@@version sql版本 @@servername 服务器名 @@error错误编号
if——else声明变量:declare @name varchar(10)
变量赋值:set @name='张三' 或 select @name=stuname from student where Sid=8877
例:查找某人编号的相邻的两个人
declare @num int select * from tb1 where name=张三 --为了显示张三的全部信息 select @num=num from tb1 where name=张三 --张三号码 select * from tb1 where (num=@num+1) or (num=@num-1) --张三好吗分别加减获得。
if () begin 语句1 语句2 end else begin 语句 end
注意:为了使 消息和输出结果在同一窗口内显示,需要设置输出格式为文本, 工具--选项--常规--显示结果--以文本
while()--end 循环