直接开门见山------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的更多相关文章

  1. [SQL] SQL 基础知识梳理(一)- 数据库与 SQL

    SQL 基础知识梳理(一)- 数据库与 SQL [博主]反骨仔 [原文地址]http://www.cnblogs.com/liqingwen/p/5902856.html 目录 What's 数据库 ...

  2. [SQL] SQL 基础知识梳理(二) - 查询基础

    SQL 基础知识梳理(二) - 查询基础 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5904824.html 序 这是<SQL 基础知识梳理( ...

  3. [SQL] SQL 基础知识梳理(三) - 聚合和排序

    SQL 基础知识梳理(三) - 聚合和排序 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5926689.html 序 这是<SQL 基础知识梳理 ...

  4. [SQL] SQL 基础知识梳理(四) - 数据更新

    SQL 基础知识梳理(四) - 数据更新 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5929786.html 序 这是<SQL 基础知识梳理( ...

  5. [SQL] SQL 基础知识梳理(五) - 复杂查询

    SQL 基础知识梳理(五) - 复杂查询 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5939796.html 序 这是<SQL 基础知识梳理( ...

  6. 黑马程序员+SQL基础(上)

    黑马程序员+SQL基础 ---------------<a href="http://edu.csdn.net"target="blank">ASP ...

  7. Oracle SQL 基础学习

    oracel sql 基础学习 CREATE TABLE USERINFO ( ID ,) PRIMARY KEY, USERNAME ), USERPWD ), EMAIL ), REDATE DA ...

  8. 第一章 SQL基础

    第一部分:SQL基础1. 为什么学习SQL自人类社会形成之日起,社会的运转就在不断地产生和使用各种信息(文献.档案.资料.数据等):在如今所谓的信息时代,由于计算机和互联网的作用,信息的产生和使用达到 ...

  9. SQL基础--&gt; 约束(CONSTRAINT)

    --============================= --SQL基础--> 约束(CONSTRAINT) --============================= 一.几类数据完 ...

  10. SQL基础-->层次化查询(START BY ... CONNECT BY PRIOR)[转]

    --====================================================== --SQL基础-->层次化查询(START BY ... CONNECT BY ...

随机推荐

  1. ccc 调试方法

    当修改完一个函数,但是不知道哪个函数调用的时候没有传递正确的参数的时候 需要找出调用这个函数的所有语句,于是我注释掉这个函数就可以了

  2. BZOJ4384 : [POI2015]Trzy wieże

    首先只有一种字符的情况可以通过双指针在$O(n)$的时间内处理完毕. 设$cnt[i][j]$表示前$i$个字符中$j$字符出现的次数,那么对于两个位置$j<i$: 如果 $cnt[i][0]- ...

  3. Android -----listView的属性大全

    http://www.cnblogs.com/zhengbeibei/archive/2013/03/29/2988814.html 01     <?xml version="1.0 ...

  4. NOIp 2014 #4 无线网络发射器选址 Label:模拟

    题目描述 随着智能手机的日益普及,人们对无线网的需求日益增大.某城市决定对城市内的公共场所覆盖无线网. 假设该城市的布局为由严格平行的129 条东西向街道和129 条南北向街道所形成的网格状,并且相邻 ...

  5. LinkedHashMap和HashMap的比较使用(转)

    (转)http://www.cnblogs.com/hubingxu/archive/2012/02/21/2361281.html import java.util.HashMap; import  ...

  6. [深入浅出WP8.1(Runtime)]网络编程之HttpClient类

    12.2 网络编程之HttpClient类 除了可以使用HttpWebRequest类来实现HTTP网络请求之外,我们还可以使用HttpClient类来实现.对于基本的请求操作,HttpClient类 ...

  7. 【BZOJ】3670: [Noi2014]动物园

    http://www.lydsy.com/JudgeOnline/problem.php?id=3670 题意:太水了= = #include <bits/stdc++.h> using ...

  8. 【BZOJ3207】花神的嘲讽计划I 可持久化线段树/莫队

    看到题目就可以想到hash 然后很自然的联想到可持久化权值线段树 WA:base取了偶数 这道题还可以用莫队做,比线段树快一些 可持久化线段树: #include<bits/stdc++.h&g ...

  9. BZOJ2453维护队列&&BZOJ2120数颜色

    2016-05-28 11:20:22 共同的思路: 维护某种颜色上一次在哪里出现pre,可以知道当pre<询问的l时更新答案 块内按照pre排序 修改的时候重新O(n)扫一遍,如果和之前的不一 ...

  10. LINQ to Entities 事务简单例子

    默认LINQ to Entities会使用隐式事务,即:对于每一个savechanges都分开在单独的事务之中. 也可以显式地指定事务: using (var db = new TestEntitie ...