• 事务,视图,索引


     一,索引
    索引是一个独立的,物理的数据库结构,可以快速找到表或视图的信息
    通常情况下只有需要经常查询索引列中的数据时才在表上创建索引
    基本语法:
    CREATE INDEX StockIndex
    ON appSchema.StockEvents (StockSymbol);
    创建唯一索引:
    Create unique index 索引名称
    On 表名(字段1,字段2)
    聚集索引:clustered 每个键值只有一个聚集索引
    非聚集索引noclustered:索引的键值包含指向表中记录存储位置的指针,不对表中数据排序
    聚集索引的创建:
    Create unique clustered  index 索引名称
    On 表名(字段名 DESC)
    非聚集函数:
    Create unique nonclustered  index 索引名称
    On 表名(字段名)
    两种非聚集索引:建于堆上和建于聚集索引上
    查询索引:exec sp_helpindex 表名
    删除索引:drop index 表名.索引名
    二,视图:
    视图是一种逻辑对象,它是从一个或几个基本表中导出来的表,是一种虚拟表。
    视图的内容可以是:1,基表中列的子集或行的子集 2,两个或多个基表的联合 3,基表的统计汇总 4,其他视图的子集 5,视图和基表的混合 
    视图定义的限制:1, create view语句不能包括compute或comprte by子句,也不能包括into关键字 2,仅当使用top关键字时,create view语句才能包括order by子句
    3,视图不能引用临时表 4,视图不能引用超过1024列 5,在单一批处理中create view语句不能和其他t—sql语句组合使用
    创建视图:
    create view v_uservip
    as
    select [user].userid,[user].username,vipid,vipdate from [user] join vip
    on [user].userid=vip.userid
    更改视图:
    alter view v_uservip
    as
    select [user].userid,sex,[user].username,vipid,vipdate from [user] join vip
    on [user].userid=vip.userid
    删除视图
    drop view dbo.v_uservip
    使用索引视图
    1, 视图上创建的第一个索引必须是唯一聚集索引2, 创建视图时必须使用schemabinging选项 3,视图可以引用基表,但不能引用其他视图4,引用表和用户定义函数的时候,必须使用两部分名称 5,随后使用索引图的连接必须具有相同的选项设置。
    2, 创建索引视图的限制
    视图上创建的第一个索引必须是惟一聚集索引
    创建视图时必须使用 SCHEMABINDING 选项
    视图可以引用基表,但不能引用其他视图
    引用表和用户定义函数的时候,必须使用两部分名称
    随后使用索引视图的连接必须具有相同的选项设置
    三,事务
    事务可以自动提交或回滚,当事务中的一条语句不能执行则事务中的其他语句都不能执行
    每条单独的语句都是一个事务
    begin transaction    事务的起始点
    begin try
    insert into stu values('Jack1',20,1)
    insert into stu values('Jack2',2,1)
    commit transaction  事务提交
    end try
    begin catch
    print '错误'
    rollback transaction   事务回滚
    end catch
    select * from stu

  • 相关阅读:
    P2216-[HAOI2007]理想的正方形
    P2157-[SDOI2009]学校食堂
    Leetcode-5176 Number of Valid Words for Each Puzzle(猜字谜)
    Leetcode-5175 Can Make Palindrome from Substring(构建回文串检测)
    Leetcode-5174 Diet Plan Performance(健身计划评估)
    Task6.PyTorch理解更多神经网络优化方法
    Task5.PyTorch实现L1,L2正则化以及Dropout
    Task4.用PyTorch实现多层网络
    Task3.PyTorch实现Logistic regression
    Task2.设立计算图并自动计算
  • 原文地址:https://www.cnblogs.com/ruixinyu/p/5265387.html
Copyright © 2020-2023  润新知