失效链接处理 |
MySQL视图 PDF 下载
本站整理下载:
相关截图:
![]()
主要内容:
什么是视图?视图就是一张虚拟的表,我们称为视图表,但是这张虚拟的表里边的内容和真实的表内容是一样的,里边有字段,有数据,只不过这张表在服务器上不是以数据的形式存在的,就是视图里的数据在数据库目录下是没有所对应的文件的,那视图里的数据是从哪来的呢?是从一个基表里引用来的,基表就是存储在数据库目录下的那些物理表,当我们对基表里的数据进行更新时,那视图表里的数据也会跟着更新。更新视图表的数据时,那基表里的数据也会跟着更新。
那我们为什么要用视图呢?做视图是可以控制用户对表的限制,我希望用户能看到那些数据,能够对那些数据操作, 我就把那些数据做成一个视图表,然后让用户去访问视图表就可以了,基表里的所有数据它是看不到的,只能看到指定的数据,这就是视图的作用。
语法格式:
create view(关键字) 视图表名称 as(关键字) SQL查询;
解释:创键视图时,视图表里的数据完全取决于我们的SQL查询
讲视图之前先把/etc/passwd这个文件先导入到数据库里去。
进入数据库创键表
mysql> create database userdb;
Query OK, 1 row affected (10.00 sec)
进入库
mysql> use userdb;
创键表,根据文件内容创键表
mysql> create table user(
-> name char(30),
-> passwd char(1),
-> uid smallint(3),
-> gid smallint(3),
-> info char(100),
-> home char(100),
-> shell char(50)
-> );
Query OK, 0 rows affected (0.01 sec)
查看导入路径
mysql> show variables like "secure_file_priv";
拷贝系统文件到MySQL默认导入路径
[root@master ~]# cp /etc/passwd /var/lib/mysql-files/
执行数据导入
mysql> load data infile "/var/lib/mysql-files/passwd" //指定导入文件路径
-> into table user //指定导入当前库的user表
-> fields terminated by ":" //指定文件内的分隔符
-> lines terminated by "\n"; //指定换行符
Query OK, 21 rows affected (0.05 sec)
查看表数据
mysql> mysql> select * from user;
向表里添加行号字段
mysql> alter table user
-> add ID smallint(3) primary key auto_increment first;
//设置主键与自增长,添加在所有字段前边
Query OK, 0 rows affected (0.04 sec)
查看表记录
mysql> select * from user;
到此为止环境就没问题了
创键视图
mysql> create view user_view as select name,shell from user;
Query OK, 0 rows affected (0.01 sec)
|