• 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   新的表选项

  • 相关阅读:
    JDK Integer.reverse 算法实现分析
    HomeBrew更新
    时序数据简介
    MQTT协议简析
    Maven+Spring Profile实现生产环境和开发环境的切换
    Thread与Runnable的一个小陷阱
    HashMap的内部实现机制,Hash是怎样实现的,什么时候ReHash
    该不该在C#中使用var关键词
    疑难问题解决备忘录(3)——ubuntu12.04配置vsftp本地用户登录
    疑难问题解决备忘录(2)——ubuntu12.04分配swap
  • 原文地址:https://www.cnblogs.com/hebao0514/p/4661247.html
Copyright © 2020-2023  润新知