MySQL(5):数据表操作

表名的前缀:

两个student表,为了区分相同逻辑表名的不同应用,给逻辑表名,增加前缀

//学生管理

create table info_student (

name varchar(20),

stu_no varchar(20)

);

//在线考试

create table exam_student (

name varchar(20),

stu_no varchar(20),

score int

);

1.有哪些表?

show tables;

2.

show tables [like 'pattern'];

其中like pattern 部分,表示只获得那种规则的表名

show tables like 'exam_%';//-----%表示任意字符的组合----称之为通配符

3.使用 show create table 查看数据表

show create table exam_student;

也可以使用:

show create table exam_studentG (数据很多时候,这样显示容易看懂)

4.使用 describe 语句查看数据表结构

describe exam_student;

也可以简写成如下:

desc info_student;

数据库对应着目录,显然数据库内容对应的就应该是目录的内容,文件

我们追踪到磁盘上面的数据库文件如下

 

这里的frm文件:存储的是列表结构

5.删除表格

drop table tbl_name;

如果表不存在,执行删除操作就会报错,有时候也可以这样操作可以避免这种报错

drop table if exists democlass;(同时也适用drop database if exists db_name

6.修改表

(1)修改表名

重命名:rename table old_tbl_name to new_tbl_name;

同时给多个表rename:

rename table info_student to infos, exam_class to classes;

上面我们可以先show tables 获取所有的tables,然后批量修改rename table info_student to infos, exam_class to classes,……;

支持跨数据库重命名:

从原来数据库php_one中的infos列表 存放到 demo数据库中的infos列表

我们进去看看demo数据中的内容:

上面支持跨数据库重命名,可以实现数据库重命名。

重新创建一个新的数据库,旧的数据库的表,都rename到新到数据库内,删除旧的数据库;

(2) 修改列定义

修改表结构,上面的子命令,上级是,alter table tbl_name  [add|drop|change|modify]

add (增加一个新的列):

modify(修改一个列的定义):修改列的类型 和属性

drop(删除一个列):

change(重命名一个列):提供重命名的服务

(3)修改表选项

alter table  tbl_name   新的表选项

原文地址:https://www.cnblogs.com/hebao0514/p/4661247.html