SQL Service 数据库 基本操作 视图 触发器 游标 存储过程

Posted 勿忘初心

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL Service 数据库 基本操作 视图 触发器 游标 存储过程相关的知识,希望对你有一定的参考价值。

use NewTest1

---声明视图---
create view NewViewte
as
select StudentInfo.name as 姓名,StudentInfo.sex as 性别,course.name as 课程 from StudentInfo join Course on StudentInfo.Cid= Course.id

---调用视图
select * from NewViewte
--- 声明触发器---
create trigger NewTri
on ClassInfo
for insert
as print‘数据插入测试‘
go

create trigger NewTri1
on ClassInfo
for Delete
as print‘数据删除测试‘
go


insert into ClassInfo Values(‘测试name‘,‘测试老师name‘)

Delete from ClassInfo where id=7


create trigger NewTri11
on Course
for insert
as print‘数据插入测试‘
go

create trigger NewTri111
on Course
for Delete
as print‘数据删除测试‘
go

--- 声明游标---
declare  NewDeclare cursor
for
select * from  StudentInfo where Cid=‘1‘

---游标使用---
---打开游标
open NewDeclare
---读取数据 fetch 获取
fetch Next from NewDeclare
select * from  StudentInfo where Cid=‘1‘
--- 关闭游标
close NewDeclare
--- 删除游标 deallocate 释放
deallocate NewDeclare


--- 创建存储过程---

create proc NewProc
@Cname Nvarchar(50),
@TeacheName Nvarchar(50),
@Name Nvarchar(50)
as
begin
  begin try  
     begin tran
     insert into Course values(@Cname)
     insert into ClassInfo values(@Name,@TeacheName)
     commit tran
  end try
  begin catch
  --- 若捕获到异常   ---则操作终止 回滚到最初
  if @@TRANCOUNT>0   ---在SqlServer里,嵌套事务的层次是由@@TranCount全局变量反映出来的
   ---则操作终止 回滚到最初
   begin
   
   rollback
   
   end
  end catch
end

exec NewProc @Cname=‘测试课程名‘,@TeacheName=‘测试老师名‘,@Name=‘测试名‘

  

以上是关于SQL Service 数据库 基本操作 视图 触发器 游标 存储过程的主要内容,如果未能解决你的问题,请参考以下文章

创建带有条件的 SQL 视图

Android 在视图上禁用多点触控

数据库及表的创建

为啥没有调用第二个单点触控视图控制器工具栏按钮事件处理程序

Sql Service的艺术 SQL多表查询

sql service ---- update和delete 误操作数据 ---- 恢复数据