视图是由查询结果形成的一张虚拟表。 2.使用场景 (1)如果某个查询结果出现的非常频繁,也就是,要经常拿这个查询结果来做子查询。 (2)需要隐藏某些数据而展现其他数据时。 3.创建视图create view 视图名 as select 语句;4.更新视图update 视图名 set 语句;5.修改视图 alter view 视图名 as select 语句;6.查看视图 6.1 使用desc语句desc 视图名; 6.2 show table status语句查询视图基本信息show table status like ‘视图名‘;...
cust_name,cust_contact FROM customers c inner join orders o on c.cust_id=o.cust_id inner join orderitems oi on oi.order_num=o.order_num and prod_id=‘TNT2‘2 .创建 视图 productcustomers(没有prod_id=‘TNT2‘限制条件 )create view productcustomers as select cust_name,cust_contact,prod_id FROM customers c inner join orders o on c.cust_id=o.cust_id inner join orderitems oi on oi.order_num=o.order_num...
连接查询:事先将两张或多张表join,根据join的结果进行查询; 【导入hellodb.sql数据库】,输入密码即可[root@pc0003 home]# mysql -uroot -p mydb < /home/hellodb.sql hellodb.sql数据库下载链接:http://pan.baidu.com/s/1pJKK4w7 密码:a0re【查看students表】mysql> select * from students; +-------+---------------+-----+--------+---------+-----------+ | StuID | Name | Age | Gender | ClassID | Teach...
视图由数据库中的一个或多个表导出的虚拟表,用户可以不用看到整个数据库表中的数据而只关心对自己有用的数据,也保障了数据库系统的安全性。数据库只存放视图的定义,其数据来源于原来的表中。所以源表中数据改变,视图的数据也会改变。视图可以简化重复的查询操作,增加数据的安全性。 1.创建视图 create [algorithm={undefined|merge|temptable}] view 视图名 [(属性清单)] as select 语句 [with [cascaded|local] check opti...
数据库中的视图是一个虚拟表。视图是从一个或者多个表中导出的表,视图的行为与表非常相似,在视图中用户可以使用SELECT语句查询数据,以及使用INSERT、UPDATE和DELETE修改记录。视图可以使用户操作方便,而且可以保障数据库系统安全。 视图一经定义便存储在数据库中,预期相对应的数据并没有像表那样在数据库中再存储一份,通过视图看到的数据只是存放在基本表中的数据。当对通过视图看到的数据进行修改时,相应的基本表中的数据也...
view(视图):虚拟表主要用来看(查)数据基表的数据变化会在视图中体现出来 权限控制将多表查询的结果整合在视图中方便用户查看 create view v1 as select ...查询语句WITH CHECK OPTION 选项-- 插入后的数据,通过视图能够查询出来就符合WITH CHECK OPTION 否则就不符合 DROP VIEW IF EXISTS t_student;CREATE VIEW t_student AS SELECT * FROM studentWITH CHECK OPTION; 该视图是查询student表中的所有记录,进行更新的语句如下。...
DESC查看视图 mysql> desc view_user;+-------+-------------+------+-----+---------+-------+| Field | Type | Null | Key | Default | Extra |+-------+-------------+------+-----+---------+-------+| name | varchar(10) | YES | | NULL | || age | int(11) | YES | |NULL | |+-------+-------------+------+-----+---------+-------+2 rows in set (0.01 sec) 使用show table atstu...
创建数据库、导入数据 [root@localhost ~]# mysql -uroot -p -e"create database viewdb;"Enter password:[root@localhost ~]# mysql -uroot -p viewdb< viewdb.sqlEnter password: mysql> show databases;+--------------------+| Database |+--------------------+| information_schema || db2 || liujing || mysql || performance_schema || sys || viewdb ...
转自:http://www.cnblogs.com/wangtao_20/archive/2011/02/24/1964276.html 一、使用视图的理由是什么?1.安全性。一般是这样做的:创建一个视图,定义好该视图所操作的数据。之后将用户权限与视图绑定。这样的方式是使用到了一个特性:grant语句可以针对视图进行授予权限。2.查询性能提高。3.有灵活性的功能需求后,需要改动表的结构而导致工作量比较大。那么可以使用虚拟表的形式达到少修改的效果。 这是在实际开发中比较有用的...
视图是从一个或多个表中导出来的虚拟表。视图就像一个窗口,通过这个窗口可以看到系统专门提供的数据。1、视图简介1.1 视图的含义视图是从一个或多个表中导出来的虚拟表,还可以从已经存在的视图的基础上定义。 数据库中只存放视图的定义,而不存放视图中的数据,这些数据仍存放在原来的表中。一旦表中的数据发生变化,显示在视图中的数据也会相应变化。 MySQL的视图并不支持输入参数的功能,即交互性上较差,但对于变化不是很大...
[OR REPLACE] [ALGORITHM = {UNDEFINED | MERGE | TEMPTABLE}]VIEW view_name [(column_list)]AS select_statement[WITH [CASCADED | LOCAL] CHECK OPTION]该语句能创建新的视图,如果给定了OR REPLACE子句,该语句还能替换已有的视图。select_statement是一种SELECT语句,它给出了视图的定义。该语句可从基表或其他视图进行选择。该语句要求具有针对视图的CREATE VIEW权限,以及针对由SELECT语句选择的每一列上的某些权限。对于在...
单词:view 什么是视图: 视图可以看作是一个“临时存储的数据所构成的表”(非真实表),其实本质上只是一个select语句。只是将该select语句(通常比较复杂)进行一个“包装”,并设定了一个名字,其后就可以通过该名字并把该名字当作一个表来使用。 如果一个select语句比较复杂,又在多个页面需要使用它,则可以将它做成一个视图,方便使用。 又如果,某个数据表中的某些字段不想给别人看(不同公司之间的数据业务交换的时...
什么是视图 视图是从一个或多个表中导出来的表,是一种虚拟存在的表。 视图就像一个窗口,通过这个窗口可以看到系统专门提供的数据。 这样,用户可以不用看到整个数据库中的数据,而之关心对自己有用的数据。 数据库中只存放了视图的定义,而没有存放视图中的数据,这些数据存放在原来的表中。 使用视图查询数据时,数据库系统会从原来的表中取出对应的数据。 视图中的数据依赖于原来表中的数据,一旦表中数据发生改变,显示在视图...
create [or replace] [algorithm ={undefined|merge|temptable}]view view_name [(column_list)]as select_statement[with [cascaded|local] check option] replace 替换已经创建的视图algorithm 视图选择的算法undefind mysql将自动选择算法merge将使用的视图语句与视图定义合并起来,使得视图定义的某一部分取代语句对应的部分temptable 将视图的结果存入临时表,然后用临时表执行语句view_name 视图的名称column_list 为属性列se...
格式:CREATE VIEW 视图名称 AS SQL语句 CREATE VIEW v1 AS SELET nid, name FROMA WHEREnid > 4 2、删除视图--格式:DROP VIEW 视图名称DROP VIEW v1 3、修改视图-- 格式:ALTER VIEW 视图名称 AS SQL语句ALTER VIEW v1 AS SELET A.nid,B. NAME FROMA LEFT JOIN B ON A.id = B.nid LEFT JOIN C ON A.id = C.nid WHEREA.id > 2 AND C.nid < 5 4、使用视图 视图的使用和普通表一样,由于视图是虚拟表,所以无法对其真实表进行创建...