SQL基础巩固1
直接开门见山------F4
1.查询
对指定的数据表或是视图进行检索查询,找出符合查询条件功能,具体包括以下SQL语法如下所示,其中【】为可选项
Select<列名> From<表名> 【Where <条件>Group by <列名> Having <条件>Order by<列名>】
2.定义DDL
Data Definition Language ,语言是用来对指定的数据库对象(数据表,视图,索引,存储过程,用户等)进行定义和撤销的,
①.对数据表进行“创建/修改/删除”操作的“Create Table/Alter Table/Drop Table”的语句;
②.对数据库用户进行“创建、修改口令/删除”操作的"Create User/Alter User/Drop User"的语句;
③.对数据索引进行“创建、删除”操作的“Create Index/Drop Index”的语句;
以上都属于DDL的范畴。
3.操纵DML
Data Manipulation Language,数据操纵,也称为数据更新,是指对数据库中的数据进行除查询之外的其他更新操作,主要包括增删改,具体语法如下:
①插入数据
Insert Into<表名> 【(<列名1>[{,<列名2>}]) 】 Values (<值1>【{,<值2>}】)
②删除数据
Delete From <表名>[ where <条件> ]
③修改(更新)数据
Update<表名> SET <列名>=<表达式>[,<列名>=<表达式>]...[WHERE<条件>]
4.控制 DCL
Date Control Language ,即数据控制,主要是用来管理数据库用户权限,数据完整性,安全性并发性等数据库管理操作的,授予和收回用户权限的语法如下
㈠授予用户权限
GRANT<系统管理>|<角色>【{,<系统权限>|<角色>}】To<用户名>|<角色>|PUBLIC【{,<用户名>|<角色>】【WITH ADMIN OPTION】
㈡收回用户权限
REVOKE<系统管理>|<角色>【{,<系统权限>|<角色>}】From<用户名>|<角色>|PUBLIC【{,<用户名>|<角色>】
T-SQL与SQL的区别:
T-SQL是SQL更为详细的增强版,因为微软觉得SQL语言本身有些不太理想的地方,比如不能像其他高级语言一样进行变量的声明和初始化,没有IF,Switch,while等程序控制语句,内置的函数不够丰富,因而觉得有必要进行扩展。
具体三个区别:1.结构化的程序设计,2.内置函数,3.系统预存程序。
附加一些T-SQL特殊类型:
sql variant:可以存储int ,binary,char值,最大长度为8016字节。
timestamp:为自动生成的唯一二进制数,一个表只能有一个timestamp列,每次插入或更新包含timestamp列的行时,其值都会更新。
uniqueidentifier:全局唯一标示符,比较运算符可与其一起使用,例如=,<>,<,>,<=,>=和检查NULL(IS NULL和IS NOT NULL)
table:其用于存储结果集以供后续处理。该数据类型主要用于临时存储一组行,这些行将作为表值函数的结果返回。
数据类型优先级:
sql_variant>datetime>smalldatetime>float>real>decimal>money>smallmoney>bigint>int>smallint>tinyint>bit>ntext>text>image>timestamp>uniqueidentifier>nvarchar>nchar>varchar>char>varbinary>binary.
T-SQL有很多SQL不具有的关键字,掌握这些关键字是用好T-SQL的关键:
⑴IF..ELSE
IF(@A>@B) PRINT 'YES' ELSE PRINT 'NO'
⑵GOTO 跳转到指定的语句处
ABCD .... GOTO ABCD
⑶WHILE
WHILE @COUNTER<10 @A=@A*2 @COUNTER=@COUNTER+10 CONTINUE
⒁CONTINUE
WHILE @COUNTER<10 @A=@A*2 IF(@A>50) BREAK //跳出循环 ElSE @COUNTER=@COUNTER+1 CONTINUE//继续执行下一次循环
⒂BREAK 同上
⑹BEGIN....END 包含一组语句块
IF(@A>@B) BEGIN PRINT 'YSE' END ELSE PRINT 'NO'
⑺WAIT FOR指定触发语句块,存储过程或事务执行的时间,时间隔离时间
BEGIN WAITFOR TIME '21:00' EXECUTE sp_abc END //在晚上九点执行ap——abc
⑻RETURN 无条件退出过程,语句块或批处理
IF(SELECT 年龄 FROM 学生 WHERE 姓名=@param)=22 RETURN 1 ELSE RETURN 2
⑼BEGIN TRANSACTION 标记衣蛾事务的起点
BEGIN TRANSACTION T1 UPDATE table1...
⑽ROLLBACK TRANSACTION 对一个事务执行回滚操作
ROLLBACK TRANSACTION T1
声明赋值操作关键字
1.DECLARE //声明变量 例如:Declare @A INT
2.SET //给变量赋值 例如: SET @A=5
3.EXECUTE //执行指定的用户自定义函数或存储过程 例如: DECLARE @procname varchar(30) SET2procname='sp_abc' EXEC @proc_name //指定名为sp_abd的存储过程
4.COMMIT //标志一个事务的完成 例如: BEGIN TRANSACTION USER 学生信息 GO UPDATE 学生表 SET 年龄=年龄+2 WHERE 姓名=‘张三’ GO COMMIT //完成该事务的标志 GO
SQL基础巩固1的更多相关文章
- [SQL] SQL 基础知识梳理(一)- 数据库与 SQL
SQL 基础知识梳理(一)- 数据库与 SQL [博主]反骨仔 [原文地址]http://www.cnblogs.com/liqingwen/p/5902856.html 目录 What's 数据库 ...
- [SQL] SQL 基础知识梳理(二) - 查询基础
SQL 基础知识梳理(二) - 查询基础 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5904824.html 序 这是<SQL 基础知识梳理( ...
- [SQL] SQL 基础知识梳理(三) - 聚合和排序
SQL 基础知识梳理(三) - 聚合和排序 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5926689.html 序 这是<SQL 基础知识梳理 ...
- [SQL] SQL 基础知识梳理(四) - 数据更新
SQL 基础知识梳理(四) - 数据更新 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5929786.html 序 这是<SQL 基础知识梳理( ...
- [SQL] SQL 基础知识梳理(五) - 复杂查询
SQL 基础知识梳理(五) - 复杂查询 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5939796.html 序 这是<SQL 基础知识梳理( ...
- 黑马程序员+SQL基础(上)
黑马程序员+SQL基础 ---------------<a href="http://edu.csdn.net"target="blank">ASP ...
- Oracle SQL 基础学习
oracel sql 基础学习 CREATE TABLE USERINFO ( ID ,) PRIMARY KEY, USERNAME ), USERPWD ), EMAIL ), REDATE DA ...
- 第一章 SQL基础
第一部分:SQL基础1. 为什么学习SQL自人类社会形成之日起,社会的运转就在不断地产生和使用各种信息(文献.档案.资料.数据等):在如今所谓的信息时代,由于计算机和互联网的作用,信息的产生和使用达到 ...
- SQL基础--> 约束(CONSTRAINT)
--============================= --SQL基础--> 约束(CONSTRAINT) --============================= 一.几类数据完 ...
- SQL基础-->层次化查询(START BY ... CONNECT BY PRIOR)[转]
--====================================================== --SQL基础-->层次化查询(START BY ... CONNECT BY ...
随机推荐
- 给Nginx配置一个自签名的SSL证书
转自廖雪峰的官方网站http://www.liaoxuefeng.com/ 要保证Web浏览器到服务器的安全连接,HTTPS几乎是唯一选择.HTTPS其实就是HTTP over SSL,也就是让HTT ...
- aspx与ashx
ashx在VS的中文版是新建“一般处理程序”,其实是一个实现类System.Web.IHttpHandler接口的类.而任何一个实现了IHttpHandler接口的类都能作为一个外部请求的目标程序.H ...
- BZOJ3084 : [Algorithmic Engagements 2011]The Shortest Period
枚举答案长度$L$,设$A$和$B$分别为第一个循环节和反串的第一个循环节. 1.坏点不在$A$,那么可以暴力匹配检验. 2.坏点不在$B$,那么把串翻转后不在$A$中,转化为1. 3.坏点在$A$和 ...
- gulp plugins 插件介绍
目录 [−] gulp API gulp.src(globs[, options]) gulp.dest(path[, options]) gulp.task(name[, deps], fn) gu ...
- Java 生产者模式 消费者模式
// The standard idiom for calling the wait synchronized(sharedObject) { while(condition){ sharedObje ...
- ACM: poj 1094 Sorting It All Out - 拓扑排序
poj 1094 Sorting It All Out Time Limit:1000MS Memory Limit:10000KB 64bit IO Format:%lld & ...
- NOIp 2013 #2 花匠 Label:爆0的Water
题目描述 花匠栋栋种了一排花,每株花都有自己的高度.花儿越长越大,也越来越挤.栋栋决定 把这排中的一部分花移走,将剩下的留在原地,使得剩下的花能有空间长大,同时,栋栋希 望剩下的花排列得比较别致. 具 ...
- 如何在osg中删除EventHandler
最近在一个项目中需要动态的添加和删除EventHandler,添加的时候很顺利,使用view->addEventHandler()函数就可以了. 不过在删除的时候,出现点麻烦. 直接调用vi ...
- Find a way——L
L. Find a way Pass a year learning in Hangzhou, yifenfei arrival hometown Ningbo at finally. Leave N ...
- 练习一:SQLite基本操作
一.基础知识: 运用场景: 1>应用运行需要保存一系列有一定关系有一定结构的数据(文本也可以但是存储效率低) 2>文件类型:.db(一个数据库就是一个.db文件) 3>路径:/dat ...