SQL视图学习(入门概念理解)

 

这两天网上在看SQL视图,可是一直不知所云,不知道视图究竟是什么样子,
很多文章都是教你  创建更新删除视图的SQL语句,感觉不就是写查询,写sql语句,没有一个直观的认识

今动手敲了出代码实践了下,发现一下就明朗多了~
w3school的解释是
在 SQL 中,视图是基于 SQL 语句的结果集的可视化的表。

视图包含行和列,就像一个真实的表。视图中的字段就是来自一个或多个数据库中的真实的表中的字段。我们可以向视图添加 SQL 函数、WHERE 以及 JOIN 语句,我们也可以提交数据,就像这些来自于某个单一的表。

注释:数据库的设计和结构不会受到视图中的函数、where 或 join 语句的影响。

看看下面的图片,你对视图概念的理解是不是容易多了?

我在数据库中建了两张表,一张是Student,一张是cls(班级)

   

然后创建视图,代码如下

1 create view v_stu_cls
2 as
3 select a.age,a.name,b.class from student a 
4 left join Cls b
5 on
6 a.stuid=b.id
7 
8 
9 select * from v_stu_cls

我们可以向视图添加 SQL 函数、WHERE 以及 JOIN 语句,

视图中的字段就是来自一个或多个数据库中的真实的表中的字段。

视图包含行和列,就像一个真实的表。

a  ->  student    b->cls

 

注意:  select * from创建视图或出错

create view v_stu_cls
as
select * from student a
left join Cls b
on
a.stuid=b.id

消息 4506,级别 16,状态 1,过程 v_stu_cls,第 3 行
各视图或函数中的列名必须唯一。在视图或函数 'v_stu_cls' 中多次指定了列名 'stuid'。

因为我两个表中都有   'stuid'  将*改为查具体的属性值a.age,a.name,b.class  就ok~

 链接一篇  关于sql视图的文章

http://www.cnblogs.com/wszhe/archive/2007/07/11/813493.html 

 视图
1:什么是视图
2:视图和查询的区别
3:视图的优点
4:如何创建和管理视图
5:如何通过视图修改基本表的数据
6:如何通过视图实现数据的安全性

 

 

如有问题或建议,欢迎留言 ~ 博客地址:http://www.cnblogs.com/zqiang/

 

 

 

 

 

 

转载于:https://www.cnblogs.com/zqiang/archive/2012/12/27/2835947.html

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
第1章 RDBMS基础:SQLServer数据库的构成 1.1 数据库对象概述 1.1.1 数据库对象 1.1.2 事务日志 1.1.3 最基本的数据库对象:表 1.1.4 文件组 1.1.5 数据库关系图 1.1.6 视图 1.1.7 存储过程 1.1.8 用户自定义函数 1.1.9 用户和角色 1.1.10 规则 1.1.11 默认值 1.1.12 用户自定义数据类型 1.1.13 全文目录 1.2 SQL Server数据类型 1.3 SQL Server对象标识符 1.3.1 需要命名的对象 1.3.2 命名规则 1.4 本章小结 第2章 SQL Server管理工具 2.1 联机丛书 2.2 SQLServer配置管理器 2.2.1 服务管理 2.2.2 网络配置 2.2.3 协议 2.2.4 客户端 2.3 SQLServer Management Studio 2.3.1 启动Management Studio 2.3.2 “查询”窗口 2.4 SQL Server集成服务(SSIS) 2.5 BulkCopy Program(bcp) 2.6 SQL ServerProfiler 2.7 sqlcmd 2.8 Power Shell 2.9 本章小结 第3章 T-SQL基本语句 3.1 基本SELECT语句 3.1.1 SELECT语句与FROM子句 3.1.2 WHERE子句 3.1.3 ORDERBY子句 3.1.4 使用GROUPBY子句聚合数据 3.1.5 使用HAVING子句给分组设置条件 3.1.6 使用FORXML子句输出XML 3.1.7 通过OPTION子句利用提示 3.1.8 DISTINCT和ALL谓词 3.2 使用INSERT语句添加数据 3.2.1 多插入 3.2.2 INSERTINTOSELECT语句 3.3 用UPDATE语句更改数据 3.4 DELETE语句 3.5 本章小结 3.6 练习 第4章 连接 4.1 连接 4.2 内部连接 4.3 外部连接 4.3.1 简单的外部连接 4.3.2 处理更复杂的外部连接 4.4 完全连接 4.5 交叉连接 4.6 JOIN语句的早期语法结构 4.6.1 内部连接的早期语法结构 4.6.2 外部连接的早期语法结构 4.6.3 交叉连接的早期语法结构 4.7 联合 4.8 本章小结 4.9 练习 第5章 创建和修改数据表 5.1 SQLserver的对象名 5.1.1 模式名 5.1.2 数据库名 5.1.3 通过服务器命名 5.1.4 回顾默认值 5.2 CReATE语句 5.2.1 CREATEDATAASE 5.2.2 CREATETABLE 5.3 ALTER语句 5.3.1 AITERDATABASE 5.3.2 ALTERTABLE 5.4 DROP语句 5.5 使用GUI工具 5.5.1 使用ManagementStudio创建数据库 5.5.2 回到代码:使用MariagementStudio创建脚本的基础知识 5.6 本章小结 5.7 练习 第6章 约束 6.1 约束的类型 6.1.1 域约束 6.1.2 实体约束 6.1.3 参照完整性约束 6.2 约束命名 6.3 键约束 6.3.1 主键约束 6.3.2 外键约束 6.3.3 唯一约束 6.4 CHECK约束 6.5 DEFAuLT约束 6.5.1 在cREATETABLE语句定义DEFAULT约束 6.5.2 在已存在的表添加DEFAUIT约束 6.6 禁用约束 6.6.1 在创建约束时忽略无效的数据 6.6.2 临时禁用已存在的约束 6.7 规则和默认值 6.7.1 规则 6.7.2 默认值 6.7.3 确定哪个表和数据类型使用给定的规则或默认值 6.8 用于实现数据完整性的触发器 6.9 如何选择 6.1 0本章小结 第7章 更复杂的查询 7.1 子查询的概念 7.2 关联子查询 7.2.1 关联子查询的工作原理 7.2.2 在WHERE子句的关联子查询 7.2.3 处理NULL数据——ISNULL函数 7.3 派生表 7.4 EXISTS运算符 7.5 混合数据类型:CAST和CONVERT 7.6 MERGE命令 7.6.1 BYl.ARGET和BYSOURCE 7.6.2 OUTPUT子句 7.7 性能方面的考虑 7.8 本章小结 7.9 练习 第8章 规范化和其他基本设计问题 8.1 表 8.2 保持数据“规范 8.2.1 准备工作 8.2.2 第一范式 8.2.3 第二范式 8.2.4 第三范式 8.2.5 其他范式 8.3 关系 8.3.1 一对一关系 8.3.2 一对一或一对多关系 8.3.3 多对多关系 8.4 数据库关系图 8.4.1 表 8.4.2 添加和删除表 8.4.3 关系 8.5 反规范化 8.6 超出规范化的一些规则 8.6.1 保持简单 8.6.2 选择数据类型 8.6.3 尽量进存储 8.7 创建一个快速示例 8.7.1 创建数据库 8.7.2 添加数据库关系图和初始表 8.7.3 添加关系 8.7.4 添加一些约束 8.8 本章小结 8.9 练习 第9章 SQLServer存储和索引结构 9.1 SQLServer存储机制 9.1.1 数据库 9.1.2 区段 9.1.3 页 9.1.4 9.1.5 稀疏列 9.2 理解索引 9.2.1 平衡树(B.树) 9.2.2 SQLServer访问数据的方式 9.3 创建、修改和删除索引 9.3.1 CREATEINDEX语句 9.3.2 创建XML索引 9.3.3 随约束创建的隐含索引 9.3.4 在稀疏列和地理空间列上创建索引 9.4 明智地选择——在何时何地使用何种索引 9.4.1 选择性 9.4.2 注意成本 9.4.3 选择群集索引 9.4.4 列顺序问题 9.4.5 修改索引 9.4.6 删除索引 9.4.7 从查询计划获取提示 9.4.8 使用数据库引擎调整向导 9.5 维护索引 9.5.1 碎片 9.5.2 确定碎片和页拆分的可能性 9.6 本章小结 9.7 练习 第10章 视图 10.1 简单的视图 10.2 更加复杂的视图 10.3 使用T-SOL编辑视图 10.4 删除视图 10.5 在MaliagementStudio创建和编辑视图 10.6 审查:显示现有的代码 10.7 保护代码:加密视图 10.8 关于模式绑定 10.9 使用VIEWMETADATA使视图看起来像表一样 10.10 索引(物化)视图 10.11 本章小结 10.12 练习 第11章 编写脚本和批处理 11.1 脚本的基础知识 11.1.1 USE语句 11.1.2 声明变量 11.1.3 使用@@IDENTITY 11.1.4 使用@@ROWCOUNT 11.2 批处理 11.2.1 批处理的错误 11.2.2 何时使用批处理 11.3 sqlcmd 11.4 动态SQL:用ExEC命令动态生成代码 11.5 控制流语句 11.5.1 IFELSE语句 11.5.2 CASE语句 11.5.3 用WHILE语句进循环 11.5.4 WAITOR语句 11.5.5 TRY/CATCH块 11.6 本章小结 11.7 练习 第12章 存储过程 12.1 创建存储过程:基本语法 12.2 使用ALTER修改存储过程 12.3 删除存储过程 12.4 参数化 12.5 通过返回值确认成功或失败 12.6 错误处理 12.6.1 以前的方式 12.6.2 在错误发生前处理错误 12.6.3 手动引发错误 12.6.4 添加自定义的错误消息 12.7 存储过程的优点 12.7.1 创建可调用的进程 12.7.2 为了安伞性使用存储过程 12.7.3 存储过程和性能 12.8 扩展存储过程(XP) 12.9 递归简介 12.10 调试 12.10.1 启动调试器 12.10.2 调试器的组成 12.10.3 使用调试器 12.11 .NET程序集 12.12 本章小结 第13章 用户自定义函数 13.1 UDF的定义 13.2 返回标量值的uDF 13.3 返回表的UDF 13.4 调试用户自定义函数 13.5 数据库的.NET 13.6 本章小结 13.7 练习 第14章 事务和锁 14.1 事务 14.1.1 BEGINTRAN 14.1.2 COMMITTRAN 14.1.3 ROLLBACKTRAN 14.1.4 SAVETRAN 14.2 SQLServer日志的工作方式 14.2.1 失败和恢复 14.2.2 隐式事务 14.3 锁和并发 14.3.1 通过锁可以防止的问题 14.3.2 可以锁定的资源 14.3.3 锁升级和锁对性能的影响 14.3.4 锁定模式 14.3.5 锁的兼容性 14.3.6 指定一种特有的锁定类型——优化器提示 14.4 设置隔离级别 14.5 处理死锁(1205错误) …… 第15章 触发器 第16章 初识XML 第17章 Reporting Services 第18章 使用Integration Services进集成 第19章 扮演管理员的角色 附录
SQL Server是一种关系型数据库管理系统(RDBMS),用于存储和管理大量数据。从入门到精通SQL Server,以下是一些步骤和概念: 1. 安装和配置:首先,你需要下载和安装SQL Server软件。安装过程,你可以选择要安装的组件和配置选项。确保按照安装向导的指示进操作。 2. 数据库基础知识:学习SQL语言和数据库基础知识是理解SQL Server的关键。了解表、列、、主键、外键等概念。 3. 创建数据库:使用SQL Server Management Studio (SSMS)或Transact-SQL (T-SQL)语句,你可以创建一个新的数据库。在创建数据库时,考虑命名、文件组、文件位置和初始大小等因素。 4. 表设计和数据类型:学习如何设计表结构,并选择合适的数据类型来存储不同类型的数据。了解常用的数据类型,如整数、字符、日期等。 5. 数据插入和查询:使用INSERT语句将数据插入表,使用SELECT语句查询数据。了解如何使用WHERE子句进过滤、使用ORDER BY排序结果。 6. 更新和删除数据:学习使用UPDATE语句更新表的数据,使用DELETE语句删除数据。注意备份数据以防止意外删除。 7. 索引和性能优化:了解索引的作用和类型,如聚集索引和非聚集索引。学习如何创建和管理索引,以提高查询性能。 8. 视图和存储过程学习创建和使用视图来简化复杂的查询,以及创建和执存储过程来实现可重用的代码逻辑。 9. 安全性和权限管理:学习如何设置用户和角色,并为数据库对象分配适当的权限。确保只有授权用户能够访问和修改数据。 10. 故障恢复和备份:了解如何进数据库备份和还原操作,以及应对故障和数据丢失的方法。 以上是SQL Server从入门到精通的一些关键步骤和概念。不断实践和深入学习,你将逐渐掌握SQL Server的高级技能。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值