当前位置:首页 » 编程语言 » sql数据库对视图可以修改吗
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

sql数据库对视图可以修改吗

发布时间: 2022-07-24 06:35:14

sql中如果修改了基本表的数据,视图也会自动随之修改吗

如果改动了基本表,视图来源于这个基本表,那视图给呈现的结果也会随之发生变化。因为视图是一个虚拟表,其内容有查询定义。视图中的数据是由一张或多张表中的数据组成的。

view还是materialized view,如果是前者肯定会修改,因为view只是个sql,查询的还是基本表,后者需要定制刷新,才会自动修改。

(1)sql数据库对视图可以修改吗扩展阅读

SQL语言主要是高级的非过程化编程语言,允许用户在高层数据结构上工作。它不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式。

具有完全不同底层结构的不同数据库系统,可以使用相同的结构化查询语言作为数据输入与管理的接口。SQL语言语句可以嵌套,这使他具有极大的灵活性和强大的功能。

⑵ 关于SQL数据库的问题,视图怎么改创建

不可以的 视图是虚表 它是方便用户使用的 把几张表集中在一个视图里 视图不可以修改 一般情况下之进行创建和删除

⑶ sql数据库,怎样利用视图修改信息

首先,我们要明白;在多表构成的视图下,我们是无法通过修改视图,来实现修改表的.
在明白这个原则后,代码应该如下:
update 学生表 set sname='吴明' where sno = '091650101'
如果avg(mark)是一个列的话
update 成绩表 set avg(mark) =90 where sno='091650101'

⑷ SQL中视图的创建。修改,删除

1、创建视图

CREATE [OR REPLACE] VIEW 视图名(列1,列2...)

AS SELECT (列1,列2...)

FROM ...;

[WITH [CASCADED|LOCAL] CHECK OPTION]

(4)sql数据库对视图可以修改吗扩展阅读:

SQL语言基本上独立于数据库本身、使用的机器、网络、操作系统,基于SQL的DBMS产品可以运行在从个人机、工作站到基于局域网、小型机和大型机的各种计算机系统上,具有良好的可移植性。

可以看出标准化的工作是很有意义的。早在1987年就有些有识之士预测SQL的标准化是“一场革命”,是“关系数据库管理系统的转折点”。

数据库和各种产品都使用SQL作为共同的数据存取语言和标准的接口,使不同数据库系统之间的互操作有了共同的基础,进而实现异构机、各种操作环境的共享与移植。

参考资料:网络-SQL

⑸ sql 数据库中可以用创建好的视图来修改表的内容吗

只要满足下列条件,即可通过视图修改基础基表的数据:

1、任何修改(包括 UPDATE、INSERT 和 DELETE 语句)都只能引用一个基表的列。

2、视图中被修改的列必须直接引用表列中的基础数据。不能通过任何其他方式对这些列进行派生,如通过以下方式:
1)聚合函数:AVG、COUNT、SUM、MIN、MAX、GROUPING、STDEV、STDEVP、VAR 和 VARP。
2)计算。不能从使用其他列的表达式中计算该列。使用集合运算符 UNION、UNION ALL、CROSSJOIN、EXCEPT 和 INTERSECT 形成的列将计入计算结果,且不可更新。

3、被修改的列不受 GROUP BY、HAVING 或 DISTINCT 子句的影响。

4、TOP 在视图的 select_statement 中的任何位置都不会与 WITH CHECK OPTION 子句一起使用。

上述限制适用于视图的 FROM 子句中的任何子查询,就像其应用于视图本身一样。通常情况下,数据库引擎必须能够明确跟踪从视图定义到一个基表的修改

⑹ 对sql视图进行修改时是否会改变基本数据表数据

会的。

视图只是数据库在磁盘上的一个缩小范围的逻辑影像,任何修改都会修改到基本数据表的。

⑺ SQL数据库里是否可以通过视图更改表中的数据

对于没有复杂处理的 单表 视图, 是可以 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 AS

SELECT

t1.name AS t1Name,

t1.age AS t1Age,

t2.name AS t2Name,

t2.age AS t2Age

FROM

t1, t2

WHERE

t1.name = t2.name

然后直接更新视图。

UPDATE temp_view SET t1Age = t2Age;

完整的例子, 可参考:

http://hi..com/wangqing999/blog/item/767be28f634ddb00c8fc7aba.html

但是假如你的视图里面的 2个表, 不是一一对应的。

或者是带了 SUM / COUNT 等统计函数的, 那么可能是没办法更新了。

⑻ sql 修改视图

数据库中视图的值只能通过 select语句从一个或多个表中查询出来的结果,并不能修改值。需要修改值还得到视图引用的表中去改

⑼ sql中修改了基本表的数据视图也会自动随之修改吗

本期我们用 MySQL 提供的 DBUG 工具来研究 MySQL 的 SQL 处理流程。

起手先造个实例

本次实验中,我们借助了 MySQL 的 DBUG 包,来让 MySQL 将处理过程暴露出来。MySQL 中类似的技术还有不少,比如 performance_schema,OPTIMIZER_TRACE 等等。

这些技术将 MySQL 的不同方向的信息暴露出来,方便大家理解其中机制。

⑽ SQL SERVER数据库中 是否可以对视图进行修改删除

用drop view 视图名称就可以了,和删除表是一样的,在视图中,对表的修改就是对视图的修改