位置: 编程技术 - 正文
1. ACID:指数据库事务正确执行的四个基本要素缩写:1.原子性2.一致性3.隔离性4.持久性
2.数据库对象:表(table) 视图(view) 存储过程(stored procedure) 函数(function)索引(index)
3.SQL Server 中包含master、model、msdb、tempdb四个系统数据库。
4.使用T-SQL语句创建数据库:CREATE DATABASE [ApressFinacial] ON PRIMARY ( NAME = N'ApressFinacial', FILENAME = N'I:Program FilesMicrosoft SQL ServerMSSQL.1MSSQLDATAApressFinacial.mdf' , SIZE = KB , FILEGROWTH = KB )LOG ON ( NAME = N'ApressFinacial_log', FILENAME = N'I:Program FilesMicrosoft SQL ServerMSSQL.1MSSQLDATAApressFinacial_log.ldf' , SIZE = KB , FILEGROWTH = %)
5.T-SQL语句删除数据库:drop database[数据库名]
6.常见的约束类型:主键约束、唯一约束、检查约束、默认约束、外键约束。
7.添加约束的语法: Alter table 表名 Add constraint 约束名 约束类型 具体的约束说明
8.删除约束:alter table 表名 Drop constraint 约束名
9.授权语法: grant 权限[on 表名] to 数据库用户 例:grant select insert update On students to zhangsan
.T-SQL语句创建登录名: Create login[yuan] With password='' Go
.数据库完整性分为:实体完整性、域完整性、参照完整性、用户自定义完整性。
.T-SQL 中的运算符:运算符 含义= 等于> 大于< 小于>= 大于等于<= 小于等于<> 不等于! 非通配符 解释 示例_ 一个字符 A Like 'C_'% 任意长度的字符 B Like 'CO_%'[] 括号中所指定范围内的一个字符 C Like '9W0[1-2]'[^] 不在括号中所指定范围内的一个字符 D Like '%[A-Z][^1-2]'.查询语句:select 列名 from 表名 where 条件 如:select* from students where no=1
.插入数据行:insert [into]<表名> [列名]values<值列表> 例:intset into students(name,address,grade,email,sex) Values('长青菜','上海松江',5,'zqc@souhu.com','男') 注意:(不能为标识列指定值,因为它的数字是自动增长的)
.更新数据行:update <表名> set<列名=更新值> [where<更新条件>] 例:update students Set address='石家庄' Where address='保定'
.删除数据行: delete from<表名>[where<删除条件>] 例:delete from studentinfo where no=''
.问题:如果标识列A的初始值为1,增长量为2,则输入三行数据以后,再删除两行,下次再输入数据行的时候,标识值从多少开始? ( 7 )
.删除列: alter table student drop column address
.Exists: if exists (select*from?where name='yuanDB') drop database stuDB
.变量: 局部变量(必须以标记@作为前缀) 全局变量(必须以标记@@作为前缀) 全局变量由系统定义和维护,我们只能读取,不能修改全局变量的值。
.局部变量声明: 例:Decalre @name vachar(8) decare @seat int 赋值:set @变量名=值或select@变量名=值 set @name='张三' Select @name=sname from students where no='1'
.逻辑控制语句: IF-ELSE语句 If(条件) Begin 语句1 语句2........... End Else Begin 语句1 语句2......... End 注:else是可选的。
例: decalre @myavg float Select @myavg =AVG(course) from score Print'平均分'+convert(varchar(5),@myavg) If(@myavg>) Begin Print '本班成绩优秀,前三名成绩为:' Select top 3 * from score order by score desc End Else Begin Print '本班成绩较差,后三名成绩为:' Select top 3 *from score order by score End
.while循环语句: while(条件) Begin 语句1 语句2.......... Break End 例:DECLARE @n int WHILE(1=1) --条件永远成立 BEGIN SELECT @n=COUNT(*) FROM score WHERE score< --统计不及格人数 IF (@n>0) UPDATE score --每人加2分 SET score=score+2 ELSE BREAK --退出循环 END print '加分后的成绩如下:' SELECT * FROM score
.case--end多分支语句 语法: case When 条件1 then 结果1 When 条件2 then 结果2 .............. Else 其他结果 End 例:print 'ABCDE五级显示成绩如下:' Select studentID, 成绩=case When score< then'E' When score between and then 'D' When score between and then 'C' Else 'A' End From score
.批处理语句示例: SELECT * FROM stuInfo SELECT * FROM stuMarks UPDATE stuMarks SET writtenExam=writtenExam+2 GO
.习题及答案: 习题内容:则根据如下规则对成绩进行反复加分,直到平均分超过分为止。请编写T-SQL语句实现。分以上: 不加分-分: 加1分-分: 加2分-分: 加3分分以下: 加5分习题答案:SELECT * FROM score --原始成绩DECLARE @labAvg intWHILE(1=1) BEGIN UPDATE score SET score= CASE WHEN score< THEN score+5 WHEN score between AND THEN score+3 WHEN score between AND THEN score+2 WHEN score between AND THEN score+1 ELSE score END SELECT @labAvg=AVG(score) FROM score IF @labAvg>= BREAK ENDSELECT * FROM score --加分后的成绩
.把一个表中的数据复制到另一个表中: insert into <表名>(列名) Select <列名> From <源表名>
.把查询结果放在新表中同时插入新的标识列: Select 列名 identity(数据类型,标识种子,标识增长量)as 列名 into 新表 from 原始表 例: select students.sname, students.saddress, students.semail, identity(int,1,1) as studentID into tongxunlu from students
.更新数据行: 语法: update<表名> Set<列名=更新值> Where <更新条件> 例: update students Set address='软件学校' Where address='软件学院'
.问题:按多列排序:例:select no,name,address,grade From students Where sex in(1,0) Order by no,grade
.字符串函数: Replace: select replace('莫勒可切.杨可','可',‘兰') 返回结果:莫勒兰切.杨兰 Upper: select upper('sql server 课程') 返回结果:SQL SERVER 课程 Getdate: select getdate()获取当前时间。 Dateadd: select dateadd(mm,4,'//') 返回结果:// Datename: select datename(dw,'//') 返回结果: Saturday
.聚合函数:Max-min: select AVG(score) as 平均成绩,MAX(score) as 最高分,MIN(score) as最低分 from score where score>=Count: select count(*)as 及格人数 from score Where score>=
. 分组查询: .习题: 假如成绩单中记录了学生的几次考试成绩,要查询每位学生的每门课的总成绩,怎么查?.分组查询--HAVINGHaving:指定了组或聚合的搜索条件,常常与group by子句一起使用。例:.多表查询——内联结 例:.多表联结——三表联结 例:.多表联结查询——右外联结 例:.银行案例——多表联结——左外联结: 例: .子查询: 例:.例:内联结(等值联结).局部变量:例:将姓名为里斯的学生的学号,出生日期和平均成绩分别赋给局部变量@no_str @birthday_str @avgrade_num (用select语句来实现).自连接查询: 例:(注:student2为不存在,是创建的).声明局部变量:declare @变量名 数据类型
.if语句 例:查询学号为的学生,如果成绩及格,则打印其姓名和成绩。.if-else语句:对于给定学号的查询,如果平均成绩不及格则打印姓名和平均成绩,否则打印学号。.多分支的if语句查询并实现分等级打印学生成绩.case 语句 使用select语句查询学生的学号,然后用case函数对学生的姓名和爱好进行简要说明。 Select 学号=sno,姓名及爱好= Case sno When ‘' then ‘李好,游泳' 。。。。。。。 Else ‘没有这人' End From student
.while语句 (如果学生平均成绩低于分,则循环执行对每位学生成绩加0.5%,在循环过程中,如果最高成绩超过分则退出循环;在加分过程中,当成绩的平均成绩大于或等于分时打印出当前成绩的平均成绩).子查询:查询成绩刚好通过分的学生 Select sname from students Inner Join score ---内连接 ON students.scode=score.studentid Where score= Go
.事务的特性:原子性、一致性、隔离性、永久性。 事务分类:显示事务、隐性事务、自动提交事务。
.系统存储过程的名称都以“sp_”开头或“xp_”开头。 EXEC sp_databases 列出当前系统的数据库 EXEC sp_help students 查看表students的信息
.定义存储过程的语法: Create proc[edure] 存储过程名 @参数1 数据类型=默认值 output, ................... @参数n 数据类型=默认值 output As SQL语句 Go (注:参数可选,参数分输入参数、输出参数,输入参数允许有默认值)
.创建不带参数的存储过程: 例:.调用存储过程: 语法: EXEC 过程名[参数] 例:EXEC proc_stu
.输入参数的默认值: 例:.调用带参数默认值的存储过程: EXEC proc_stu -------采用默认值 EXEC proc_stu ------不采用默认值 EXEC proc_stu @scorePass=
.带输出参数的存储过程:.调用带输出参数的存储过程:(注:调用时必须带output关键字,返回结果将存放在变量@sum 中).错误处理: 使用Raiserror语句:.使用raiserror语句.调用存储过程: 例:.带输出参数的存储过程: 例:.创建触发器语法: .Insert 触发器 例:. 插入一条语句 例:. Delete触发器示例: Create trigger tri_delete_transInfo On transInfo For delete As Print '开始备份数据,请稍候......' If not exists(select * from sysobjects where name='backupTable') Select * into backupTable from deleted ------------从deleted表中获取被删除的交易记录。 Else Insert into backupTable select * from deleted Print '备份数据成功,备份表中的数据为:' Select * from backupTable Select * from transInfo GO
. Update 触发器:. 列级update触发器.数据库阶段数据管理的主要特点:1.采用数据模型表示复杂的数据结构;2.有较高的数据独立性;3.为用户提供了方便的用户接口;4.提供数据控制功能;5.增加系统 的灵活性。
. DB(数据库):存储在计算机内有组织的、统一管理的相关数据的集合。 DBMS(数据库管理系统):位于用户与操作系统之间的数据管理软件。 DBS(数据库系统):是实现有组织的、动态的存储大量关联数据,以方便用户访问计算就硬件、软件和株距资源组成的计算机系统。
.物理数据独立性和逻辑数据独立性: 物理数据独立性:内模式的修改,只需对模式/内模式映象做相应修改,而不需修改 概念模式。逻辑数据独立性:概念模式的修改,只需对外模式/模式映象做相应修改,而不需修改外模式。
. DBMS的主要功能: 数据定义(DDL):三级结构、两级映象、完整性约束等。数据操纵(DML):检索、更新。数据保护:数据恢复、并发控制、完整性控制、安全性控制等。数据维护:数据载入、转换、存储、、性能监控等。数据字典(DD):存储三级结构定义的数据库称为DD,即系统数据库。DBMS主要功能:数据库定义功能、数据存取功能、数据库运行管理功能、数据库的建立和维护功能。
.--1、创建存储过程--..代码:.导出SQL Server数据库中数据:
推荐整理分享SQL Server 2005基础知识详细整理(sql server基本知识),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:sql server2005使用方法,sql server基础知识,sql server基本知识,sql server2005使用方法,sql server 2005使用,sql server 2005使用教程,sql server 2005使用教程,sql server 2005使用,内容如对您有帮助,希望把文章链接给更多的朋友!
Sql实现行列转换方便了我们存储数据和呈现数据 从MSSqlServer微软就推出了pivot和unpivot实现行列转换,这极大的方便了我们存储数据和呈现数据。今天就对这两个关键字进行分析,结合实例讲解如何
SQL Server 的cmd_shell组件的开启方法 SQLServer中的cmd_shell组件功能强大,几乎可通过该组建实现Windows系统的所有功能,正因此,这个组件也是SQLServer的最大安全隐患。SQLServer中这个组件是
sql server 中使用with实现递归的方法 WITHfw_requestion_note_temp(old_apply_id)AS(--取根节点放入临时表SELECTold_apply_idFROMfw_requestion_note--WHEREold_apply_id='ee-8b5c-4f-9b-cdaef'--根据已取到的数据
标签: sql server基本知识
本文链接地址:https://www.jiuchutong.com/biancheng/319415.html 转载请保留说明!友情链接: 武汉网站建设