• SQL--数据表--基本操作


    表操作

    表与字段是密不可分的.

    新增数据表

    Create table [if not exists] 表名(字段名字 数据类型,字段名字 数据类型 --最后一行不需要逗号) [表选项] ;


    if not exists: 如果表明不存在,那么就创建,否则不执行创建代码:检查功能
    表选项:控制表的表现
    字符集:charset/character set 具体字符集; -- 保证表中数据存储的字符集
    校对集:collate 具体校对集;
    存储引擎:engine 具体的存储引擎(innodb 和 myisam)

    任何一个表的设计都必须指定数据库.
    方案1:显示的指定表所属的数据库
    Create table 数据库名.表名(); -- 将当前数据表创建到指定的数据库下

    方案2:隐式的指定表所属数据库:先计入到某个数据库环境,然后这样创建的表自动归属到某个指定的数据库.
    进入数据库环境:use 数据库名字;

    当创建数据表的SQL指令执行之后,到底发生了什么?
    1. 指定数据库下已经存在对应的表
    2. 在数据库对应的文件夹下,会产生对应表的结构文件(跟存储引擎有关系)

     

    查看数据表

    数据库能查看的方式,表都可以查看.
    1. 查看所有表:show tables ;

    2. 查看部分表:模糊匹配:show tables like 'patten' ;

     

    3. 查看表的创建语句 : show create table 表名 ;

     

    4. 查看表结构:查看表中的字段信息
    desc/describe/show columns 表名 ;

    修改数据表

    表本身存在,还包含字段:表的修改分为两个部分:修改表本身和修改字段

    修改表本身
    表本身可以修改:表名 和 表选项
    修改表名:rename table 老表名 to 新表名 ;


    修改表选项:字符集,校对集和存储引擎
    alter table 表名 表选项 [=] 值 ;

    修改字段
    字段操作很多:新增,修改,重名 ,删除

    新增字段
    alter table 表名 add [column] 字段名 数据类型 [列属性] [位置]
    位置:字段名可以存放表中的任意位置
    first:第一个位置
    after:在哪个字段之后:after 字段名;默认的是在最后一个字段之后

     


    修改字段 : 修改通常是修改属性或者数据类型
    alter table 表名 modify 字段名 数据类型 [属性] [位置] ;


    重命名字段
    alter table 表名 change 旧字段名 新字段名 数据类型 [属性] [位置] ;


    删除字段
    alter table 表名 drop 字段名;

    小心:如果表中已经存在数据,那么删除字段会清空该字段的所有数据(不可逆)

    删除数据表

    Drop table 表名1,表名2....; -- 可以一次性删除多张表

    当删除数据表的指令之后发生了什么?
    1. 在表空间中,没有了指定的表(数据也没有了)
    2. 在数据对应的文件夹下,表对应的文件(与存储引擎有关)也会被删除

     

     

  • 相关阅读:
    CKeditor3.6.2 配置与精简
    CKEditor与CKFinder整合并实现文件上传功能
    实体关联关系映射:
    status pending状态
    wx:for
    小程序
    获取指定控件的值
    报表
    dataGridView 设置
    SQLite 的使用
  • 原文地址:https://www.cnblogs.com/sunhao96/p/7545697.html
Copyright © 2020-2023  润新知