<!-- [if gte mso 9]><xml><w:WordDocument><w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel><w:DisplayHorizontalDrawingGridEvery>0</w:DisplayHorizontalDrawingGridEvery><w:DisplayVerticalDrawingGridEvery>2</w:DisplayVerticalDrawingGridEvery><w:DocumentKind>DocumentNotSpecified</w:DocumentKind><w:DrawingGridVerticalSpacing>7.8</w:DrawingGridVerticalSpacing><w:View>Normal</w:View><w:Compatibility></w:Compatibility><w:Zoom>0</w:Zoom></w:WordDocument></xml><![endif]-->
1. 依赖于特定次序的SQL 语句是很不安全的;
2. 可把INSERTSELECT 视为一个导入操作,而把 SELECTINTO 视为一个导出操作;
3. 为了删除一个列的值,可以设置它为NULL ,也可以用
ALTERTABLEa
DROPa
4. 在使用交互式工具时,实际上是使用的是T-SQL 语句,但是,这些语句不是用户编写的,界面工具会自动生成并执行相应的 T-SQL 语句;
5.
ALTER TABLE a
ADD add_a BIT ;
直接加列,中间不用说明COLUMN
6
更新视图时,当不满足基本表中的check 约束时,是显然不可以插入的,当定义视图时,有 where 且指定了 withcheckoption 那么更新时不满足 where 的无法更新
7关于触发器的禁用,启用,查看
DISABLE TRIGGER tri_tmp ON tmp
ENABLE TRIGGER tri_tmp ON tmp
SP_HELPTRIGGER tmp
8使用保留点 , 回退到保留点
SAVE TRANSACTION D1
ROLLBACK TRANSACTION D1
9自动提交
SETIMPLICIT_TRANSACTIONSON--用户每次必须显式提交或回滚。否则当用户断开连接时 , 事务及其所包含的所有数据更改将回滚
SETIMPLICIT_TRANSACTIONSOFF--自动提交模式。在自动提交模式下,如果各个语句成功 , 完成则提交。
你 insert后看到的以为插入进去了,其实没有!要提交后才真正进入
10了解数据库,表,行
sp_databases ;
sp_tables NULL, dbo , test , "'TABLE'"
sp_columns a
11 IDENTITY
自增标识,不能再对其显示插入值,只有当 SET IDENTITY_INSERT tablename ON时允许插入,且插入后 SELECT @@IDENTITY AS newid 为新值,之后以新值开始自增
12不允许在临时上建触发器
临时表指的是##tablename 或 #tablename 断开连接后该表将销毁
13 COLLATE SQL_Latin1_General_CP1_CS_AS
区分大小写
SELECT cust_id , cust_name
FROM customers
WHERE cust_name COLLATE SQL_Latin1_General_CP1_CS_AS LIKE '%E%'
14安全性,用户,登入
15CREATESCHEMA