zoukankan      html  css  js  c++  java
  • 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='测试名'
    

      

    反思 空杯 担当
  • 相关阅读:
    Flutter
    Flutter
    项目冲刺——第二天
    练习三:用例图
    项目冲刺——第一天
    作业六:团队项目冲刺前期准备
    作业四:软件案例分析
    作业五:需求规格说明书
    【非作业部分】队内暂时安排
    第二次练习——团队展示
  • 原文地址:https://www.cnblogs.com/oralig/p/7883902.html
Copyright © 2011-2022 走看看