MySQL视图及如何导入导出

1.视图

MySQL 视图(View)是一种虚拟存在的表,同真实表一样,视图也由列和行构成,但视图并不实际存在于数据库中。行和列的数据来自于定义视图的查询中所使用的表,并且还是在使用视图时动态生成的,视图可以从原有的表上选取对用户有用的信息,那些对用户没用,或者用户没有权限了解的信息,都可以直接屏蔽掉,作用类似于筛选。这样做既使应用简单化,也保证了系统的安全

2.视图与数据表的区别

1.视图不是数据库中真实的表,而是一张虚拟表,其结构和数据是建立在对数据中真实表的查询基础上的

2.存储在数据库中的查询操作 SQL 语句定义了视图的内容,列数据和行数据来自于视图查询所引用的实际表,引用视图时动态生成这些数据

3.视图是数据的窗口,而表是内容。表是实际数据的存放单位,而视图只是以不同的显示方式展示数据,其数据来源还是实际表。

4.视图是查看数据表的一种方法,可以查询数据表中某些字段构成的数据,只是一些 SQL 语句的集合。

5.视图的建立和删除只影响视图本身,不影响对应的基本表

3.语法

可以使用 CREATE VIEW 语句来创建视图。语法格式如下:

复制代码
CREATE VIEW <视图名> AS <SELECT语句>

4.导入与导出

导出表数据和表结构

复制代码
mysqldump -u用户名 -p密码 数据库名 > 数据库名.sql(这个名字随便叫)

例如:

复制代码
/usr/local/mysql/bin mysqldump -uroot -pabc >abc.sql

只导出表结构

复制代码
mysqldump -u用户名 -p密码 -d 数据库名 > 数据库名.sql

例如:

复制代码
mysqldump -uroot -p -d abc > abc.sql
  • 导入

方法一:

复制代码
mysql> create database abc;         #建立空数据库
mysql> use abc;                     #选择数据库
mysql> set names utf8;              #设置数据库编码
mysql> source D:/home/abc/abc.sql;  #导入数据

方法二:

复制代码
mysql -u用户名 -p密码 数据库名 < 数据库名.sql

例如:

复制代码
mysql -uroot -p123456 abc < abc.sql

注意:在mysql.ini文件的[mysqld]配置下增加secure_file_priv=E:/test(可修改位置),在重启mysql服务。

  • 导出:

复制代码
  select * from 表名 into outflie 'E:/文件名.sql'
  • 导入

复制代码
  load data infile '/文件名.sql' into table 表名(列名1,...)
相关推荐
学编程的小程11 分钟前
筑牢数据安全防线——金仓数据库SQL防火墙硬核防护解析
数据库·sql
ReSearch14 分钟前
工业物联网的“瘦身”革命:Go 实现 20MB 级边缘存储,基于 LSM-Tree 的深度定制实践
数据库·go
TDengine (老段)19 分钟前
TDengine IDMP 组态面板 —— 锚点
大数据·数据库·物联网·时序数据库·tdengine·涛思数据
Navicat中国26 分钟前
Navicat 模式设计全解:解决数据库开发 3 大核心痛点
数据库·数据库开发·navicat·模式设计
oradh30 分钟前
Oracle 19c 单机安装总结_linux8
数据库·oracle·oracle 19c·oracle安装
瀚高PG实验室31 分钟前
瀚高数据库使用IPv6连接的配置方法
数据库·瀚高数据库
pupudawang31 分钟前
mysql之联合索引
数据库·mysql
刘晨鑫132 分钟前
MySQL的初步认识和安装
数据库·mysql
电商API&Tina33 分钟前
淘宝商品视频的采集需要注意哪些问题||item_video-获得淘宝商品视频
大数据·网络·数据库·人工智能·python·音视频
czlczl2002092534 分钟前
Redis集群批处理下的陷阱
数据库·redis·缓存