SQL 数据库里是否可以通过视图更改表中的数据?
来源:互联网 发布:c语言命名 编辑:程序博客网 时间:2024/05/24 01:17
2011-09-14 11:23呱呱的蛙 分类:数据库DB | 浏览 6809 次
书上说"视图被看成是虚拟表,它并不代表任何的物理数据,只是用来查看数据的视窗而已。数据库中只储存视图的定义,并不是以一组数据的形式储存在数据库中"。“无论在什么时候修改试图的数据,实际上都是在修改对应的数据表中的数据”。这两句话不矛盾么?我查过百度了,有些说可以改,有些说不可以改,那到底行不行呢? 小弟刚开始学习SQL,请大虾为我解答一下,尽量详细点 ~
2011-09-14 12:32提问者采纳
对于没有复杂处理的 单表 视图, 是可以 UPDATE 的。例如这样的视图CREATE VIEW v_1 AS SELECT * FROM 某表但是 假如你的视图, 是 单表的, 带统计的, 那恐怕是不能 直接 UPDATE 了。例如这样的视图CREATE VIEW v_2 AS SELECT id, COUNT(*) as num FROM 某表--- 前面是单表的, 下面说多表的 ---对于2张表的,假如你的查询里面, 这2张表是 一对一的关系。 且视图里面, 包含了主键,那么是可以 UPDATE 的。例如下面这样的 视图CREATE VIEW temp_view ASSELECT t1.name AS t1Name, t1.age AS t1Age, t2.name AS t2Name, t2.age AS t2AgeFROM t1, t2WHERE t1.name = t2.name 然后直接更新视图。UPDATE temp_view SET t1Age = t2Age;完整的例子, 可参考http://hi.baidu.com/wangzhiqing999/blog/item/767be28f634ddb00c8fc7aba.html但是假如你的视图里面的 2个表, 不是一一对应的。或者是带了 SUM / COUNT 等统计函数的, 那么可能是没办法
0 0
- SQL 数据库里是否可以通过视图更改表中的数据?
- SQL 数据库里是否可以通过视图更改表中的数据?
- 利用弹窗来更改表视图中的数据
- java更改数据库中的数据
- sql server 判断是否存在数据库,表,列,视图
- sql server 判断是否存在数据库,表,列,视图
- sql server 判断是否存在数据库,表,列,视图...
- sql server 判断是否存在数据库,表,列,视图
- sql server 判断是否存在数据库,表,列,视图
- sql server 判断是否存在数据库,表,列,视图
- php 数据库可以查到数据的sql语句,在代码里为什么查不到数据
- SQL语句,查询数据库里是否存在某个表
- SQL语句,查询数据库里是否存在某个表
- SQL语句,查询数据库里是否存在某个表
- 反向工程 通过数据库中的表生成建表视图
- 数据库表中的时间字段是否可以建立索引?
- LINQ通过视图获取数据库随机数据
- 手动将excel表中的数据通过sql语句填入数据库
- SharePoint 2013 开发——发布SharePoint应用程序
- MySQL配置优化(一)——慢查日志
- 【算法学习】AVL平衡二叉搜索树原理及各项操作编程实现(C++)
- AlertDialog.Builder(各种对话框实现)
- Linux学习笔记(三)——安装X图形界面以及简单操作
- SQL 数据库里是否可以通过视图更改表中的数据?
- C/C++面试题:编写类String的构造函数、析构函数和赋值函数。
- opencv学习笔记(三)
- 数据结构习题之线性表
- 剖析一个java对象初始化顺序问题
- 直接拿来用!10款实用Android UI工具
- 第三节VI编辑器的使用
- MKNetworkKit 详细的使用
- [XCode] 通过Assistant Editor完成拖拽映射UI元素和Action