SQL总结与收集语句
SQL收集语句
表
创建表
create table employee
(first varchar(15),
last varchar(20),
age number(3),
address varchar(30),
city varchar(20),
state varchar(20));
修改表名与字段名:
例1:更改orders表的列p_id 名称为 products_id
exec sp_rename 'orders.[p_id]','product_id','column'
例2: 更改orders表的名称为p_orders
exec sp_rename 'orders','p_orders'
添加删除表字段
ALTER TABLE table_name ADD column_name datatype
ALTER TABLE table_name DROP COLUMN column_name
修改表字段
视图
创建视图:
Create view test_view
as
select * from Fa_Family
with check option
修改视图:
alter view test_view
as
select * from Fa_Family
with check option
规则
创建规则:
create rule test_rule
as
@a>0
GO
绑定规则:
EXEC sp_bindrule '规则', '表.字段'
存储过程
创建存储过程:
Create Proc sp_insert
@F_Code varchar(10),@F_Name varchar(100),@F_Address varchar(100),@F_tel int,@F_BuildDate smalldatetime,@F_TotalPersons int
as
insert into Fa_Family(Fa_Code,Fa_Name,Fa_Address,Fa_Tel,Fa_BuildDate,Fa_TotalPersons)Values
(@F_Code,@F_Name,@F_Address,@F_Tel,@F_BuildDate,@F_TotalPersons)
Return
指明当前的用户登录是否是指定的服务器角色的成员。
返回类型
int
注释
IS_SRVROLEMEMBER 返回下面三个值。
返回值 | 描述 |
---|---|
0 | login 不是 role 的成员。 |
1 | login 是 role 的成员。 |
NULL | role 或 login 是无效的。 |
如果要通过程序检测当前用户是否可以执行某个活动(该活动要求服务器角色的权限),那么这个函数很有用。
如果为 login 指定一个 Windows NT 用户(例如 London\JoeB),而先前没有使用 sp_grantlogin 或 sp_denylogin 授予或拒绝该用户直接访问 Microsoft SQL Server 的权限,那么 IS_SRVROLEMEMBER 就会返回 NULL。
update PieceWorkInput set WorkProcName = b.WP_WorkProcName from PieceWorkInput,(select WP_FactoryID,WP_WorkProcID,WP_WorkProcName from WP_WorkProc) b where PieceWorkInput.FactoryID = b.WP_FactoryID and PieceWorkInput.WorkProcID = b.WP_WorkProcID
BEGIN
drop procedure sp_sel_order
END
GO
BEGIN
Drop view rpt_sodtl
End
BEGIN
Drop view rpt_sodtl
End
if (NOT exists ( select * from dbo.syscolumns where name = 'lc_Shopname' and id in
(select id from dbo.sysobjects where id = object_id(N'[dbo].[rpt_StockRpt]') and OBJECTPROPERTY(id, N'IsUserTable') = 1))
)
alter table rpt_StockRpt add lc_Shopname nvarchar(20)