zoukankan      html  css  js  c++  java
  • MySQL增删改查的常用操作指令总结

    总结:
    1、数据库操作:
    创建库:
        create database db_name;
    
    查询库:
        show databases;     //显示所有的数据库
        show create databases db_name; //显示特定的数据库
    
    删除库:
        drop database db_name;
    
    修改库:
        alter database db_name [modify command];
        alter database db_name character set gbk;
    
    2、表操作:
    创建表:
        use db_name;
        create table tbl_name (column_structure) [tbl_option];
    如:
        create table tbl_name(
        variable_name1 varchar(10)
        variable_name2 int
        );
    或 create table db_name.tbl_name(
        variable_name1 varchar(10)
        variable_name2 int
        );
    
    查询表:
    查看有哪些表:   
        show tables;
    或show tables like 'pattern_%';
    查看表的创建信息:
        show create table tbl_name; 
    或show create table tbl_name G
    查看表的结构:
        describe tbl_name;
    或desc tbl_name;]
    
    删除表:
        drop table [if exists] tbl_name;
    
    修改表:
    修改表名:
    单个:rename table old_tbl_name to new_tbl_name;
    多个:rename table old_tbl_name1 to new_tbl_name1, old_tbl_name2 to new_tbl_name2;
    跨数据库:rename table old_tbl_name to db_name.new_tbl_name;
    修改列定义:
    增加新列定义:add
        alter table tbl_name add new_column_name data_type;  
    如alter table exam_student add height int;
    修改列的定义(新的属性或者数据类型):modify
        alter table tbl_name modify column_name new_data_type;
    删除一个列:drop
        alter table tbl_name drop column_name;
    重命名一个列:change
        alter table tbl_name change old_column_name new_column_name new_data_type;
    修改表选项:
        alter table tbl_name new_tbl_option;
        alter table tbl_name character set utf8;
    
    3、数据操作:
    创建数据:
        insert into tbl_name (fields_list) values (values_list);
    如:insert into exam_student (stu_name, stu_no) values ('xiaoming', 'php030_01');
    若插入所有字段值:
    insert into exam_student values ('xiaoming', 'php030_01', 98);
    
    查询数据:
    查看字段信息:
        select * from tbl_name;
    参看具体字段列表信息:    
    select fields_list from tbl_name where condition;
    如:默认状态下select stu_name, stu_no from exam_student;
    或:select stu_name, stu_no from exam_student where 1;
    有条件查询:
    select * from tbl_name where condition;
    如select * from exam_student where fenshu >= 60;
    
    删除数据:
        delete from tbl_name condition;
    如delete from exam_student where fenshu <= 50;
    
    修改数据:
        update tbl_name set field = new_value where condition;
    如:update exam_student set fenshu =100 where fenshu >= 97;
    
    4、主键:primary
    如:法一:
    create table teacher(
    t_id int primary key [auto_increment],
    t_name varchar(5),
    class_name varchar(6),
    t_days tinyint unsigned
    );
    法二:
    create table teacher(
    t_id int,
    t_name varchar(5),
    class_name varchar(6),
    t_day tinyint unsigned,
    primary key (t_id)
    );
    insert into teacher values (1, '王老师', '0225', 23);
    自动增长:auto_increment
        alter table tbl_name auto_increment initial_value;
    
    5、外键:foreign key
    如:
    主表:
    create table itcast_class(
    class_id int primary key auto_increment,
    class_name varchar(10) not null default 'itcast_php' comment '班级名称'
    ) character set utf8;
    从表:
    create table itcast_student(
    stu_id int primary key auto_increment,
    stu_name varchar(10) not null default '',
    class_id int,
    foreign key (class_id) references itcast_class (class_id)
    ) character set utf8;
    插入数据的顺序:先主表,后从表
    insert into itcast_class values (null, 'php0331');
    insert into itcast_student values (null, '张三', 1);
    删除操作:
    alter table itcast_student drop foreign key itcast_student_ibfk_1;
    alter table itcast_student add foreign key (class_id) references itcast_class (class_id) 
    on delete set null;/*主表里删除某个字段,从表若对应外键则变成null*/
    或者
    on delete cascade;/*主表删除一个字段,从表对应的外键则会删除相应的值*/
    又或者
    on update restrict;/*不允许主表进行更新操作*/
    delete from itcast_class where class_id = 1;
    

      

  • 相关阅读:
    hdu1085
    hdu1028
    hdu2189
    母函数
    博弈论
    nginx安装
    学习好站点
    nginx在linux下安装
    wget 命令用法详解
    U盘安装CentOS7的帖子
  • 原文地址:https://www.cnblogs.com/Andya/p/5657061.html
Copyright © 2011-2022 走看看