使用sql_server创建表,视图,触发器,存储过程,函数等基本操作。
create table test1( /* 创建一个表 */
num int
)
alter table test1 /* 修改表 */
alter column num int not null /* 修改某一列 */
alter table test1 /* 修改表 */
add constraint pk_num /* 添加约束 */
primary key(num); /* 主键约束 */
create trigger insert_test1 /* 创建触发器 */
on test1 for insert /* 当test1有添加数据时触发 */
as /* as 以后时sql语句 */
begin
print 'success!'
end
select * into test1bak /* 创建备份表 */
from test1
where 1 = 2 /* 备份为空表 */
create view s1 /* 创建视图 s1 */
as /* 注意,这个as不可省略 */
select *from jk
create proc procsumbypurchase
@gname nvarchar(50), /* 指定多个参数 */
@name nvarchar(50),
@num int output /* 输出参数 */
as
begin
select @num = (
select sum(s.sell_num)
from sell s inner join goods g
on g.goo_no = s.goo_no
group by g.goo_name, s.sell_date, g.pro_name
having g.goo_name = @name
and g.pro_name = @gname
and year(s.sell_date) = 2018 /* date筛选年份 */
and month(s.sell_date) = 1 /* date筛选月份 */
)
end
declare @num1 int
exec procsumbypurchase '联想公司', '拯救者15.6英寸轻薄游戏本', @num1 output
select 'sumnum' = str(@num1) /* 将返回的 int 型转变成 字符串 */
create function purchase_total(@start datetime, /* 自定义函数 */
@last datetime) /* 可多个参数 */
returns table /* 返回值类型,这里为表格 */
as /* as以后为 sql 语句 */
return( /* 最后为返回类型 */
select *
from purchase p
where p.pur_date >= @start
and p.pur_date <= @last
)