MYsql库与表的管理及视图介绍

目录
  • 库的管理
    • 1、库的管理
    • 2、表的管理
    • 3、表的修改
  • 表操作的练习题
  • 视图
  • 视图的作用
  • 应用场景
  • 创建视图的语法

库的管理

1、库的管理

创建、修改、删除

1、库的创建

CREATE DATABASE UF NOT EXISTS books;

2、库的修改

库名一般不修改,不安全。

更改库的字符集

ALTER DATABASE books CHARACTER SET gbk;

3,删除

DROP DATABASE books;

2、表的管理

创建(create)、修改(alter)、删除(drop)

1、表的创建

创建表的语法:

create table 表名(
	列名 列类型 约束
)

实例:

create table phm_table (`车厢号` INT, `门号` char(10), `车门状态` char(20), `开门次数` INT, `故障码` char(20));

尚硅谷中的实例化添加:

authorID表示作者编号,然后创建auther表

3、表的修改

1、修改列名

ALTER TABLE book CHANGE COLUMN publishdate pubDate DATETIME;

2、修改列的类型或者约束

ALTER TABLE book MODIFY COLUMN pubdate TIMESTAMP;

3、添加新的列

ADD TABLE auther ADD COLUMN annual DOUBLE;

4、删除列

ADD TABLE auther DROP COLUMN annual;

5、修改表名

ADD TABLE auther RENAME TObook_auther;

6、表的删除

DROP TABLE auther;

通用的写法:

7、表的复制

表操作的练习题

#1、创建表dept1
NAME		TYPE
id		INT(7)
NAME		VARCHAR(25)

CREATE TABLE dept1(
		id INT(7),
		NAME VARCHAR(25),
);

#2、将表department中的数据插入新表dept2中
CREATE TABLE dept2
SELECT department_id,department_name
FORM myempolyees.departments;

#3、创建表emp5
NAME NULL TYPE
id				INT(7)
first_name  VARCHAR(25)
last_name		VARCHAR(25)
dept_id		INT(7)

CREATE TABLE emp5(
id				INT(7),
first_name  VARCHAR(25),
last_name		VARCHAR(25),
dept_id		INT(7)
)

#4、将last_name的长度增加到50

ALTER TABLE emp5 MODIFY_COLUMN last_name VARCHAR(50);

#5、根据表employees创建employee2
CREATE TABLE employee2 LIKE myemployees.employees;

#6、删除表emp5
DROP TABLE IF EXISTS emp5;

#7、将表employees2重命名为emp5
ALTER TABLE employees RENAME TO emp5

#8、在表dept和emp5中添加新列test——column,并检查所做的操作

ALTER TABLE employees ADD COLUMN test_column INT;

#9、直接删除表的emp5中的列 dept_id
DESC emp5;
ALTER TABLE emp5 DROP COLUMN 

视图

含义:虚拟的表,和普通的表使用起来是一样的。

mysql15.1版本出现的新特性,通过表动态生成的数据。

视图和普通表的区别:舞蹈班级和普通班级的对比。

视图表是虚拟的,临时的,

视图的作用

将复杂的查询问题简单化。

应用场景

  • 1、多个地方用到同样的查询结果。
  • 2、该查询结果使用到的sql 语句比较复杂

创建视图的语法

视图的使用样例
示例1:

示例2:

到此这篇关于MYsql库与表的管理及视图介绍的文章就介绍到这了,更多相关MYsql 表管理内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • MySQL数据库表被锁、解锁以及删除事务详解

    目录 背景 故障追踪 解决方案 第一步:查看表使用 第二步:查看进程 第三步:查看当前运行的所有事务 第四步:查看当前出现的锁 第五步:查询锁等待的对应关系 第六步:kill掉事务 MySQL的锁 MySQL锁表场景 Waiting for table metadata lock 场景一:长事务运行,阻塞DDL,继而阻塞所有同表的后续操作. 场景二:为提交事务,阻塞DDL,继而阻塞所有同表的后续操作. 场景三:显式事务失败操作获得锁,未释放 小结 总结 背景 在程序员的职业生涯中,总会遇到数据库

  • MySQL之终端Terminal(dos界面)管理数据库、数据表、数据的基本操作

    MySQL有很多的可视化管理工具,比如"mysql-workbench"和"sequel-pro-". 现在我写MySQL的终端命令操作的文章,是想强化一下自己对于MySQL的理解,总会比使用图形化的理解透彻,因为我本来就比较喜欢写代码.同时写出来这些文章,是想要给大家当个参考,希望也能对大家有所帮助,有所提升,这就是我为什么要写终端操作MySQL的文章了. 注意:MySQL数据库命令不区分大小写.但在MAC的终端,如果你想使用tab自动补全命令,那么你就必须使用大

  • MySQL数据库如何查看表占用空间大小

    目录 前言 1.切换数据库 2.查看所有数据库容量大小 3.查看指定数据库使用大小 4.查看表使用大小 5.查看所有数据库容量大小 6.查看所有数据库各表容量大小 7.查看指定数据库容量大小 8.查看指定数据库各表容量大小 总结 前言 CentOS7 安装MySQL8详细步骤 CentOS7 环境下MySQL常用命令 在mysql中有一个默认的数据表information_schema,information_schema这张数据表保存了MySQL服务器所有数据库的信息.如数据库名,数据库的表,

  • MySQL数据库操作DQL正则表达式

    前言: 正则表达式(regular expression)描述了一种字符串匹配的规则,正则表达式本身就是一个字符串,使用这个字符串来描述.用来定义匹配规则,匹配一系列符合某个句法规则的字符串.在开发中,正则表达式通常被用来检索.替换那些符合某个规则的文本. MySQL通过REGEXP关键字支持正则表达式进行字符串匹配. -- ^ 在字符串开始处进行匹配 SELECT 'abc' REGEXP '^a'; -- 1 -- $ 在字符串末尾开始匹配 SELECT 'abc' REGEXP 'a$';

  • mysql主从只同步部分库或表的思路与方法

    同步部分数据有两个思路,1.master只发送需要的:2.slave只接收想要的. master端: binlog-do-db      二进制日志记录的数据库(多数据库用逗号,隔开) binlog-ignore-db 二进制日志中忽略数据库 (多数据库用逗号,隔开) 举例说明: 1)binlog-do-db=YYY 需要同步的数据库,不在内的不同步.(不添加这行表示同步所有) 这里主库只同步test1,test2库. 2)binlog-ignore-db = mysql  这是不记录binlo

  • 为什么Mysql 数据库表中有索引还是查询慢

    目录 前言: 1.字段类型不匹配导致的索引失效 2.被索引字段使用了表达式计算 3.被索引字段使用了内置函数 4.like 使用了 %X 模糊匹配 5.索引字段不是联合索引字段的最左字段 6.or 分割的条件 7.in.not in 可能会导致索引失效 总结 前言: 问题分析: 在进行数据库查询的时候,我们都知道索引可以加快数据查询的效率.但是在实际的业务场景下,经常会遇到即使在表中增加了索引,但是同样还是会出现数据查询慢的问题.这就需要具体分析数据查询慢的具体原因到底是什么了. 首先需要进行确

  • Mysql如何删除数据库表中的某一列

    目录 删除数据库表中的某一列 Mysql删除列,添加列的sql语句 删除数据库表中的某一列 删除某一字段的值 update table_name SET field_name = ''; 删除某一列 ALTER TABLE table_name DROP COLUMN field_name; Mysql删除列,添加列的sql语句 已有表actor,且包含列last_name -- 删除列, 以下两种方式都可以 alter table actor drop  column last_name; a

  • MYsql库与表的管理及视图介绍

    目录 库的管理 1.库的管理 2.表的管理 3.表的修改 表操作的练习题 视图 视图的作用 应用场景 创建视图的语法 库的管理 1.库的管理 创建.修改.删除 1.库的创建 CREATE DATABASE UF NOT EXISTS books: 2.库的修改 库名一般不修改,不安全. 更改库的字符集 ALTER DATABASE books CHARACTER SET gbk; 3,删除 DROP DATABASE books; 2.表的管理 创建(create).修改(alter).删除(d

  • MySQL查看数据库表容量大小的方法示例

    本文介绍MySQL查看数据库表容量大小的命令语句,提供完整查询语句及实例,方便大家学习使用. 1.查看所有数据库容量大小 select table_schema as '数据库', sum(table_rows) as '记录数', sum(truncate(data_length/1024/1024, 2)) as '数据容量(MB)', sum(truncate(index_length/1024/1024, 2)) as '索引容量(MB)' from information_schema

  • MySQL分库分表详情

    一.业务场景介绍 假设目前有一个电商系统使用的是MySQL,要设计大数据量存储.高并发.高性能可扩展的方案,数据库中有用户表.用户会非常多,并且要实现高扩展性,你会怎么去设计? OK咱们先看传统的分库分表方式 当然还有些小伙伴知道按照省份/地区或一定的业务关系进行数据库拆分 OK,问题来了,如何保证合理的让数据存储在不同的库不同的表里呢?让库减少并发压力?应该怎么去制定分库分表的规则?不用急,这不就来了 二.水平分库分表方法 1.RANGE 第一种方法们可以指定一个数据范围来进行分表,例如从1~

  • mysql 基础教程之库与表的详解

    MySQL是一个大数据库.有的数据库里面个有种各样的数据.如果不按照规定划分好会显得看起来很乱.凡是东西都要通过整理才能规矩,每一堆数据整理到了一起,然后,所以有了产生了表与库这个东西. 我们创建网站的时候都会现在数据库里创建一个库,每一个库的数据都对应着一个网站的数据.创建了这个库表明了我们接下在的数据都要在这个库里存放了,也算是提前做好了一个储物柜. 创建库的方法 create database <数据库名>; 查看库 show databases; 选库 use <数据库名>

  • MySQL库表名大小写的选择

    1.决定大小写是否敏感的参数 在 MySQL 中,数据库与 data 目录中的目录相对应.数据库中的每个表都对应于数据库目录中的至少一个文件(可能是多个文件,具体取决于存储引擎).因此,操作系统的大小写是否敏感决定了数据库大小写是否敏感,而 Windows 系统是对大小写不敏感的,Linux 系统对大小写敏感. 默认情况下,库表名在 Windows 系统下是不区分大小写的,而在 Linux 系统下是区分大小写的.列名,索引名,存储过程.函数及事件名称在任何操作系统下都不区分大小写,列别名也不区分

  • MySQL如何查看建库建表语句

    目录 MySQL查看建库建表语句 MySQL建库建表语句分享 建库语句 建表语句 总结 MySQL查看建库建表语句 有时候我们需要查看mysql的建表语句,以下是具体操作 查看数据库创建语句 SHOW CREATE DATABASE ZOOG; 类似的查看建表语句: 查看所有存储引擎:SHOW ENGINES G; 查看默认存储引擎:SHOW VARIABLES LIKE ‘storage_engine’; 查看当前使用数据库:SELECT DATABASE(); 或者使用命令:STATUS w

  • MySQL用户和数据权限管理详解

    目录 1.管理用户 1.1.添加用户 1.2.删除用户 1.3.修改用户名 1.4.修改密码 2.授予权限和回收权限 2.1.授予权限 2.2.权限的转移和限制 2.3.回收权限 1.管理用户 1.1.添加用户 可以使用CREATE USER语句添加一个或多个用户,并设置相应的密码 语法格式: CREATE USER 用户名 [IDENTIFIED BY [PASSWORD]'密码'] CREATE USER用于创建新的MySQL账户.CREATE USER会在系统本身的mysql数据库的use

  • session 加入mysql库的方法

    我们知道,session是一种会话技术,用来实现跨脚本共享数据或者检测跟踪用户状态. session的工作原理 (1)当一个session第一次被启用时,一个唯一的标识被存储于本地的cookie中. (2)首先使用session_start()函数,PHP从session仓库中加载已经存储的session变量. (3)当执行PHP脚本时,通过使用session_register()函数注册session变量. (4)当PHP脚本执行结束时,未被销毁的session变量会被自动保存在本地一定路径下

  • MySQL用户权限验证与管理方法详解

    本文实例讲述了MySQL用户权限验证与管理方法.分享给大家供大家参考,具体如下: 一.Mysql权限分两阶段验证 1. 服务器检查是否允许连接:用户名.密码,主机地址. 2. 检查每一个请求是否有权限实施. 二.Mysql权限列表 权限 权限级别 权限说明 create 数据库.表或索引 创建数据库.表或索引权限 drop 数据库或表 删除数据库或表权限 grant option 数据库.表或保存的程序 赋予权限选项 references 数据库或表 外键权限 alter 表 更改表,比如添加字

  • MySQL用户与权限的管理详解

    本文实例讲述了MySQL用户与权限的管理.分享给大家供大家参考,具体如下: 用户连接到MySQL,可以做各种查询,这都是MySQL用户与权限功能在背后维持着操作. 用户与数据库服务器交互数据,分为两个阶段: (1)你有没有权连接上来 (2)你有没有权执行本操作 1.你有没有权连接上来 服务器如何判断用户有没有权连接上来? 依据: 1)你从哪里来?host 2)你是谁?user 3)你的密码是多少?password 用户的这三个信息,存储在mysql库中的user表中. 修改host域,使IP可以

随机推荐