当前位置: 首页 > news >正文

58同城天门网站建设seo还能赚钱吗

58同城天门网站建设,seo还能赚钱吗,营销型网站模板,提升网站长尾关键词排视图是什么? 一张虚表,和真实的表一样。视图包含一系列带有名称的行和列数据。视图是从一个或多个表中导出来的,我们可以通过insert,update,delete来操作视图。当通过视图看到的数据被修改时,相应的原表的数…

视图是什么?


一张虚表,和真实的表一样。视图包含一系列带有名称的行和列数据。视图是从一个或多个表中导出来的,我们可以通过insert,update,delete来操作视图。当通过视图看到的数据被修改时,相应的原表的数据也会变化。同时原表发生变化,则这种变化也可以自动反映到视图中。

视图的优点


  1. 简单化:看到的就是需要的。视图不仅可以简化用户对数据的理解,也可以简化操作。经常被使用的查询可以制作成一个视图

  1. 安全性:通过视图用户只能查询和修改所能见到的数据,数据库中其他的数据既看不见也取不到。数据库授权命令可以让每个用户对数据库的检索限制到特定的数据库对象上,但不能授权到数据库特定的行,列上。

  1. 逻辑数据独立性:视图可帮助用户屏蔽真实表结构变化带来的影响

创建视图


语法格式:

ALTER[ALGORITHM = {UNDEFINED | MERGE | TEMPTABLE}][DEFINER = user]VIEW view_name [(column_list)]AS select_statement[WITH [CASCADED | LOCAL] CHECK OPTION]

注释:

Undefined:不常用。

merge :表示将使用的视图语句与视图定义合并起来,使视图定义的某一部分取代语句对应的部分

temptable :表示将视图的结果存入临时表,然后用临时表来执行语句with[cascaded|local]

Cascaded :默认为cascaded,表示更新视图时,满足所有相关视图和表的条件

Local :表示更新视图时,满足该视图本身定义的条件即可

创建单表视图

mysql> create table t(quantity int,price int);
Query OK, 0 rows affected (0.02 sec)
​
mysql> insert into t values(3,50);
Query OK, 1 row affected (0.00 sec)
​
mysql> create view view_t as select quantity,price,quantity*price from t;       #创建view_t视图
Query OK, 0 rows affected (0.01 sec)

查看

mysql> select * from view_t;
+----------+-------+----------------+
| quantity | price | quantity*price |
+----------+-------+----------------+
|        3 |    50 |            150 |
+----------+-------+----------------+
1 row in set (0.00 sec)
mysql> create view view_t2(qty,price,total) as -> select quantity,price,quantity*price -> from t;
Query OK, 0 rows affected (0.00 sec)
​
mysql> select * from view_t2;
+------+-------+-------+
| qty  | price | total |
+------+-------+-------+
|    3 |    50 |   150 |
+------+-------+-------+
1 row in set (0.00 sec)

创建多表视图

mysql> create table student(-> s_id int primary key,-> s_name varchar(30),-> s_age int,-> s_sex varchar(8));
Query OK, 0 rows affected (0.00 sec)
​
mysql> create table stu_info(-> s_id int,-> class varchar(50),-> addr varchar(100));
Query OK, 0 rows affected (0.00 sec)
​
mysql> insert into stu_info(s_id,class,addr)-> values-> (1,'erban','anhui'),-> (2,'sanban','chongqing'),-> (3,'yiban','shangdong');
Query OK, 3 rows affected (0.01 sec)
Records: 3  Duplicates: 0  Warnings: 0
​
mysql> create view stu_class(id,name,class) as  select student.s_id,student.s_name,stu_info.class from student,stu_info where student.s_id=stu_info.s_id;
Query OK, 0 rows affected (0.00 sec)

查看视图的结构信息

语法格式:Describe 视图名

mysql> desc stu_class;
+-------+-------------+------+-----+---------+-------+
| Field | Type        | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| id    | int(11)     | NO   |     | NULL    |       |
| name  | varchar(30) | YES  |     | NULL    |       |
| class | varchar(50) | YES  |     | NULL    |       |
+-------+-------------+------+-----+---------+-------+
3 rows in set (0.01 sec)

查看视图的基本信息

语法格式:Show table status like ‘视图名’\G;

mysql> show table status like 'stu_class'\G
*************************** 1. row ***************************Name: stu_classEngine: NULLVersion: NULLRow_format: NULLRows: NULLAvg_row_length: NULLData_length: NULL
Max_data_length: NULLIndex_length: NULLData_free: NULLAuto_increment: NULLCreate_time: NULLUpdate_time: NULLCheck_time: NULLCollation: NULLChecksum: NULLCreate_options: NULLComment: VIEW
1 row in set (0.01 sec)

查看视图的详细信息

语法格式:Show create view 视图名;

或show create view 视图名\G

mysql> show create view view_t\G
*************************** 1. row ***************************View: view_tCreate View: CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `view_t` AS select `t`.`quantity` AS `quantity`,`t`.`price` AS `price`,(`t`.`quantity` * `t`.`price`) AS `quantity*price` from `t`
character_set_client: utf8
collation_connection: utf8_general_ci
1 row in set (0.00 sec)

在mysql中,information schema 数据库下的views表中存储了所有视图的定义。通过对views表的查询,可以查看数据库中所有视图的详细信息。

mysql> select * from information_schema.views\G

修改视图


语法格式:

ALTERVIEW view_name [(column_list)]AS select_statement[WITH [CASCADED | LOCAL] CHECK OPTION]
mysql> create or replace view view_t as select * from t;
Query OK, 0 rows affected (0.00 sec)
mysql> desc view_t;
+----------+---------+------+-----+---------+-------+
| Field    | Type    | Null | Key | Default | Extra |
+----------+---------+------+-----+---------+-------+
| quantity | int(11) | YES  |     | NULL    |       |
| price    | int(11) | YES  |     | NULL    |       |
+----------+---------+------+-----+---------+-------+
2 rows in set (0.00 sec)

修改视图

mysql> alter view view_t as select quantity from t;
Query OK, 0 rows affected (0.00 sec)mysql> desc view_t;
+----------+---------+------+-----+---------+-------+
| Field    | Type    | Null | Key | Default | Extra |
+----------+---------+------+-----+---------+-------+
| quantity | int(11) | YES  |     | NULL    |       |
+----------+---------+------+-----+---------+-------+
1 row in set (0.00 sec)

更新视图

  1. update

mysql> select *from t;
+----------+-------+
| quantity | price |
+----------+-------+
|        3 |    50 |
+----------+-------+
1 row in set (0.00 sec)mysql> select * from view_t;
+----------+
| quantity |
+----------+
|        3 |
+----------+
1 row in set (0.00 sec)mysql> update view_t set quantity=5;                #这个操作是quantity列全部都为5,加where可以指定某行
Query OK, 1 row affected (0.00 sec)
Rows matched: 1  Changed: 1  Warnings: 0mysql> select *from view_t;
+----------+
| quantity |
+----------+
|        5 |
+----------+
1 row in set (0.00 sec)mysql> select * from t;
+----------+-------+
| quantity | price |
+----------+-------+
|        5 |    50 |
+----------+-------+
1 row in set (0.00 sec)
  1. Insert

mysql> insert into t values(3,5);
Query OK, 1 row affected (0.00 sec)mysql> select * from t;
+----------+-------+
| quantity | price |
+----------+-------+
|        5 |    50 |
|        3 |     5 |
+----------+-------+
2 rows in set (0.00 sec)mysql> select * from view_t2;
+------+-------+-------+
| qty  | price | total |
+------+-------+-------+
|    5 |    50 |   250 |
|    3 |     5 |    15 |
+------+-------+-------+
2 rows in set (0.00 sec)
  1. delete

mysql> select * from view_t2;
+------+-------+-------+
| qty  | price | total |
+------+-------+-------+
|    5 |    50 |   250 |
|    3 |     5 |    15 |
+------+-------+-------+
2 rows in set (0.00 sec)mysql> delete from view_t2 where price=5;
Query OK, 1 row affected (0.00 sec)mysql> select * from view_t2;
+------+-------+-------+
| qty  | price | total |
+------+-------+-------+
|    5 |    50 |   250 |
+------+-------+-------+
1 row in set (0.00 sec)

视图存在以下情况时,更新操作无法执行

  1. 视图中不包含基表中被定义为非空的列

  1. 在定义视图的select语句后的字段列表中使用了数学表达式

  1. 在定义视图的select 语句后字段列表中使用了聚合函数时不接受更新操作

  1. select中,使用了union \top \group by 或having 无法接受

删除视图


语法格式:

DROP VIEW [IF EXISTS]

view_name1 [, view_name2] ...

mysql> drop view if exists stu_class;
Query OK, 0 rows affected (0.00 sec)mysql> drop view if exists stu_class;
Query OK, 0 rows affected, 1 warning (0.00 sec)mysql> show warnings;
+-------+------+-------------------------------+
| Level | Code | Message                       |
+-------+------+-------------------------------+
| Note  | 1051 | Unknown table 'bbs.stu_class' |
+-------+------+-------------------------------+
1 row in set (0.00 sec)mysql> show create view stu_class;
ERROR 1146 (42S02): Table 'bbs.stu_class' doesn't exist

扩展

MySQL中视图和表的区别以及联系是什么?

1、两者的区别:

(1)视图是已经编译好的SQL语句,是基于SQL语句的结果集的可视化的表,而表不是。

(2)视图没有实际的物理记录,而表有。

(3)表是内容,视图窗口

(4)表和视图虽然都占用物理空间,但是视图只是逻辑概念存在,而表可以及时对数据进行修改,但是视图只能用创建语句来修改

(5)视图是查看数据表的一种方法,可以查询数据表中某些字段构成的数据,只是一些SQL 语句的集合。从安全角度来说,视图可以防止用户接触数据表,因而不知道表结构

(6)表属于全局模式中的表,是实表。而视图属于局部模式的表,是虚表

(7)视图的建立和删除只影响视图本身,而不影响对应表的基本表

2、两者的联系

视图是在基本表之上建立的表,它的结构和内容都来自于基本表,它依赖基本表存在而存在。一个视图可以对应一个基本表,也可以对应多个基本表。视图是基本的抽象和逻辑意义上建立的关系。

http://www.dinnco.com/news/40858.html

相关文章:

  • 天河做网站哪家强网站搜索优化
  • 怎样做o2o网站百度云盘网页版
  • 阿里云网站备案时间怎么制作小程序
  • 马云不懂技术如何做网站win10优化软件
  • 网站3级目录可以做导航分类么凡科网怎么建网站
  • 日本 wordpressseo分析报告怎么写
  • 上海地区做旧物回收的网站辽源seo
  • 河南洛阳网站建设搜索引擎数据库
  • wordpress彩色内链广州seo软件
  • WordPress多站点恢复手机如何做网站
  • 在线相册jsp网站开发与设计都有什么推广平台
  • 济南网站建设求职淘宝seo是什么
  • 余姚网站建设哪家好营销型网站建设优化建站
  • 中国建设银行黑龙江支行官方网站今日中央新闻
  • google英文网站现在学seo课程多少钱
  • 网站建设方案规划书2022年每日新闻摘抄10一30字
  • 网站建设注意什么seo云优化公司
  • 哪里有手机网站建设公司磁力王
  • 客户网站 备案电子商务营销策划方案
  • 企业网站的功能模块免费有效的推广网站
  • 个人主页网站模板50个市场营销经典案例
  • 临沂企业网站建设系统优化
  • 配置 tomcat 做网站国内网络推广渠道
  • 网站站点层叠样式怎么做百度推荐现在为什么不能用了
  • 阿里邮箱 wordpress搜索引擎优化的核心及内容
  • 苏州网站建设浅议网络营销论文
  • wordpress网站被攻击整站seo免费咨询
  • 网站搭建怎么做西安网站设计
  • 宜宾网站建设公司免费s站推广网站
  • 电脑网站和手机网站怎么做相同路径百度竞价课程