zoukankan      html  css  js  c++  java
  • Mysql常用命令

    DDL(Data Definition Language):数据定义语言

    create、drop、alter、rename、truncate

    -- 创建表
    create table if not exists student(
    id int not null auto_increment,         -- 自增
    s_id varchar(20) not null unique,       -- 非空约束、唯一约束
    s_name varchar(20) not null,
    age int default 12,                     -- 默认值
    sex enum('男','女') default '男',       -- 枚举
    create_time datetime default current_timestamp,  -- 时间戳
    update_time datetime default current_timestamp,
    primary key(id)           -- 主键
    )Engine = InnoDB;         -- 表引擎
    
    -- 删除表
    drop table student;  
    -- 显示表结构
    desc student;
    -- 显示创建表的语句
    show create table student;
    
    -- 修改表  分为以下三种类型:
       -- 1、增、删、改字段
    alter table student add address varchar(20);
    alter table student drop address;
    alter table student change column s_age age int default 12; -- 注意,修改字段会导致默认值的设定失效,若要保留默认值,需要明确设定
       -- 2、改字段类型
    alter table student modify column s_id int not null; -- 修改字段会导致not null约束失效
       -- 3、增、删五大约束(primary key、foreign key、unique、not null、check)
    	    -- 增、删加主键约束
    alter table student add constraint primary key(id);
    alter table student drop primary key id; -- 自增字段必须有唯一或者主键约束
    			-- 增、删外键约束
    alter table student add constraint fk_s_id foreign key(s_id) references stu_tea(s_id);
    alter table student drop foreign key fk_s_id;
    			-- 增、删唯一约束
    alter table student add unique(s_id);
    alter table student drop index s_id;
    			-- 增、删非空约束
    alter table student modify column s_id int not null; -- 同修改字段类型的语句一样
    alter table student modify column s_id int; -- 修改字段类型会导致not null约束失效
    			-- 增、删检查约束 (mysql允许使用check,但是并不产生效果)
    alter table student add constraint check_age check(age>10 and age<25);
    alter table student drop check_age;
    -- 更改表名
    alter table student rename student_1;
    rename table student to student_1;
    -- 完全清空一个表
    truncate table student;
    
    -- delete删除数据,保留表结构,可以回滚,如果数据量大,很慢
    -- truncate 删除所有数据,保留表结构,不可以回滚,一次全部删除所有数据,速度相对很快
    -- drop 删除数据和表结构以及约束,删除速度最快
    

     

    DML(Data Manipulation Language):数据操作语言

    insert、delete、update、select

    -- 增、删、改、查
    insert into student(s_id,s_name,age,sex) values('13477125','zcj',23,'男'); 
    insert into student(s_id,s_name,age,sex) values('13477120','xcm',23,'男');
    delete from student where s_id='13477120';  
    update student set update_time = current_timestamp where s_name='zcj';
    select * from student;
    

      

    DCL(Data Control Language):数据控制语言

    grant、revoke

    Transaction Control:事务控制

    commit、rollback、savepoint

    触发器:

    create trigger trigger_update before update on student for each row
    begin
    	set new.update_time = current_timestamp;
    end
    drop trigger trigger_update
    

      

  • 相关阅读:
    Datatables 在asp.net mvc中的使用
    nexus离线安装索引及一些问题
    享元模式
    My97DatePicker的使用
    oracle定时器,调用存储过程,定时从n张表中取值新增到本地一张表中
    oracle触发器,一个表新增、修改的同时同步另一张表
    plsql客户端显示菜单等
    telnet测试制定地址端口号
    mybatis新增数据后获取自增主键
    ajax提交表单
  • 原文地址:https://www.cnblogs.com/mengfff/p/6764796.html
Copyright © 2011-2022 走看看