sqlsever 视图和事物以及索引的概念

简介: 视图: 相当于将一个表用一个视图来存储create view vw_1asselect top 100 emp.
视图:            相当于将一个表用一个视图来存储
create view vw_1
as
select 
    top 100 
    emp.Employee_Id as 员工编号,
    emp.Employee_Name as 员工姓名,
    dept.Department_Name as 部门
    from Employees as emp inner join Departments as dept
    on emp.Department_Id=dept.Department_ID
    order by dept.Department_ID    //前提得有top

select * from vw_1

drop view vw_1
--注意:在子查询,或视图等中不能使用order by子句,除非指定了top语句。

聚合索引和索引:
创建主键的时候就有了聚合索引 所以不需要创建 聚合索引是确定一条数据在数据集中的位置 存储记录是物理上连续存在
非聚合索引 :逻辑上的连续性
查看索引:select * from sys.indexes

select * from Employees

update Employees set Salary=Salary-1000 where Employee_Id=1
update Employees set Salary=Salary+1000 where Employee_Id=2

--把这两句话放到一个事务中
begin transaction 
    declare @sumerrors int = 0
    --set @sumErrors=0
    --执行操作

update Employees set Salary=Salary-1000 where Employee_Id=1
    --立刻验证一下这句话是否执行成功了
set @sumerrors=@sumerrors+@@ERROR
update Employees set Salary=Salary+1000 where Employee_Id=2
set @sumErrors=@sumErrors+@@error

if @sumerrors=0
begin 
    commit
end
else
begin
    rollback
end
--默认Sql Server是自动提交事务。insert ....

 ALTER TABLE  Employees
add constraint xx CHECK (Salary<100000)    约束的名字交  xx   如果这个约束一开始表就违反了  就会报错

ALTER TABLE  Employees
drop constraint xx    是删除这个约束  
没有修改约束的命令.
先增加一个新的约束,再删除旧的约束。
目录
相关文章
|
SQL 存储 关系型数据库
MySQL基础下篇[表的创建/约束的使用/事务和范式以及索引的使用]~1
MySQL基础下篇[表的创建/约束的使用/事务和范式以及索引的使用]~
|
存储 SQL 关系型数据库
MySQL基础下篇[表的创建/约束的使用/事务和范式以及索引的使用]~2
MySQL基础下篇[表的创建/约束的使用/事务和范式以及索引的使用]~2
|
SQL 存储 关系型数据库
MySQL基础下篇[表的创建/约束的使用/事务和范式以及索引的使用]~3
MySQL基础下篇[表的创建/约束的使用/事务和范式以及索引的使用]~
|
SQL 存储 Oracle
Oracle的视图,索引,约束,事务,数据库范式
🍅程序员小王的博客:程序员小王的博客 🍅 欢迎点赞 👍 收藏 ⭐留言 📝 🍅 如有编辑错误联系作者,如果有比较好的文章欢迎分享给我,我会取其精华去其糟粕 🍅java自学的学习路线:java自学的学习路线
115 0
Oracle的视图,索引,约束,事务,数据库范式
|
SQL 物联网 数据库
关系模型知识点总结(2)—— 关系完整性约束&关系操作基础
关系模型应提供定义和检验这类完整性机制,以便用统一的系统方法处理他们,而不需要由应用程序承担
341 0
关系模型知识点总结(2)—— 关系完整性约束&关系操作基础
|
SQL 数据库
sqlsever视图的学习
为什么需要视图: 总结: 简化查询 避免了代码的冗余 笔迷那了属性大量重复的sql语句 什么是视图: 视图从代码上来看是select...
955 0
|
SQL Java 数据库连接
JDBC上关于数据库中多表操作一对多关系和多对多关系的实现方法
黑马程序员我们知道,在设计一个Java bean的时候,要把这些BEAN 的数据存放在数据库中的表结构,然而这些数据库中的表直接又有些特殊的关系,例如员工与部门直接有一对多的关系,学生与老师直接又多对多的关系,那么这些表的关系如何表示呢?首先在建立数据库的时候就应该建立这样的对应关系。
1186 0