zoukankan      html  css  js  c++  java
  • mysql--sql语言之DDL,DML

    CREATE:

    1. 创建数据库                                                      CREATE DATABASE 数据库名称;
    2. 创建数据库(判断,如果不存在则创建)            CREATE DATABASE IF NOT EXISTS 数据库名称;
    3. 创建数据库、并指定字符集                             -- 创建数据库db3、并指定字符集utf8CREATE DATABASE db3 CHARACTER SET utf8;
    4. 创建数据表         

      CREATE TABLE 表名(
      列名1 数据类型1,
      列名2 数据类型2,
      ....
      列名n 数据类型n
      );

    5. 复制表   

      -- 复制product表到product2表
      CREATE TABLE product2 LIKE product;     

       SHOW :

    1. 查询所有数据库                                 SHOW DATABASES;
    2. 查询某个数据库的创建语句(查看字符集)

      -- 查看mysql数据库的创建格式
      SHOW CREATE DATABASE mysql;

    3. 查询库中所有的表                        SHOW TABLES;
    4. 查询表字符集     

      -- 查看mysql数据库中user表字符集
      SHOW TABLE STATUS FROM mysql LIKE 'user'; 

    DESC:      

    1.   查询表结构    

      -- 查询user表结构
      DESC user;

    USE:

    1. 使用数据库:

      -- 使用db4数据库
      USE db4;

    ALTER:

    1. 修改数据库的字符集

      -- 修改数据库db4的字符集为utf8
      ALTER DATABASE db4 CHARACTER SET utf8;

    2. 修改表名 

      -- 修改product2表名为product3
      ALTER TABLE product2 RENAME TO product3;

    3. 修改表的字符集

      -- 修改product3数据表字符集为gbk
      ALTER TABLE product3 CHARACTER SET gbk;

    4. 添加一列

      -- 给product3表添加一列color
      ALTER TABLE product3 ADD color VARCHAR(10);

    5. 修改列的数据类型

      -- 将color数据类型修改为int
      ALTER TABLE product3 MODIFY color INT;

    6. 修改列名

      -- 将color修改为address,数据类型为varchar
      ALTER TABLE product3 CHANGE color address VARCHAR(30);

    7. 删除列

      -- 删除address列
      ALTER TABLE product3 DROP address;

    8. 删除主键

      -- 删除主键(主键是表属性不归于那一列
      ALTER TABLE student DROP PRIMARY KEY;

    9. 建表后单独添加主键

      -- 添加主键(关于主键的去除和添加:除问上,加问下)
      ALTER TABLE student MODIFY id INT PRIMARY KEY;

    10. 删除自动增长

      -- 删除自动增长
      ALTER TABLE student2 MODIFY id INT;

    11. 建表后单独添加自动增长

      -- 添加自动增长
      ALTER TABLE student2 MODIFY id INT AUTO_INCREMENT;

    12. 删除唯一约束

      -- 删除唯一约束
      ALTER TABLE student3 DROP INDEX tel;

    13. 建表后单独添加唯一约束

      -- 添加唯一约束(唯一约束的去除和添加:除问上,加问下)
      ALTER TABLE student3 MODIFY tel VARCHAR(20) UNIQUE;

    14. 删除非空约束

      -- 删除非空约束
      ALTER TABLE student4 MODIFY NAME VARCHAR(20);

    15. 建表后单独添加非空约束

      -- 添加非空约束
      ALTER TABLE student4 MODIFY NAME VARCHAR(20) NOT NULL;

    16. 删除外键约束

      -- 删除外键
      ALTER TABLE orderlist DROP FOREIGN KEY ou_fk1;

    17. 建表后添加外键约束

      -- 添加外键约束
      ALTER TABLE orderlist ADD CONSTRAINT ou_fk1 FOREIGN KEY (uid) REFERENCES USER(id);

    18. 添加级联更新和级联删除

      -- 添加外键约束,同时添加级联更新和级联删除
      ALTER TABLE orderlist ADD CONSTRAINT ou_fk1 FOREIGN KEY (uid) REFERENCES USER(id) ON UPDATE CASCADE ON DELETE CASCADE;

    19.  修改视图2的列名city_id为id(类似重新赋值

      ALTER
      VIEW
      city_country2 (id,city_name,cid,country_name)
      AS
      SELECT t1.*,t2.country_name FROM city t1,country t2 WHERE t1.cid=t2.id;

    20. 修改表的引擎:ALTER TABLE product ENGINE=引擎名称;

    ALTER总结:

    • 对于数据库(表)属性的(不牵扯属于列的具体内容)使用的功能都有具体名称:character set ***;rename to ***;  add;  change;  drop;  (这些我定义为上级功能)
    • 对于要修改表内属于列的具体属性使用的功能:modify(中文是微调:意为调节列的某一属性我把这个功能定义为下级功能

     INSERT INTO:

    1. 格式1:给指定列添加数据

      -- 向product表添加指定列数据
      INSERT INTO product (id,NAME,price) VALUES (2,'电脑',4999);

    2. 格式2:默认给全部列添加数据

      -- 默认给全部列添加数据
      INSERT INTO product VALUES (3,'电视',2999,18,'2099-06-06');

    3. 格式3:批量添加数据

      -- 批量添加数据
      INSERT INTO product VALUES (4,'冰箱',999,26,'2099-08-08'),(5,'洗衣机',1999,32,'2099-05-10');

      -- 批量添加指定列数据
      INSERT INTO product (id,NAME,price) VALUES (6,'微波炉',499),(7,'电磁炉',899);

    UPDATE SET:

    1. 修改表数据语法

      -- 修改手机的价格为3500
      UPDATE product SET price=3500 WHERE NAME='手机';

      -- 修改电视的价格为1800、库存为36
      UPDATE product SET price=1800,stock=36 WHERE NAME='电视';

    (update set修改的是值(数据))

    DELETE FROM:

    1. 删除表数据语法

      -- 删除product表中的微波炉信息
      DELETE FROM product WHERE NAME='微波炉';

            

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

                                             

    迎风少年
  • 相关阅读:
    [算法] 堆栈
    [刷题] PTA 02-线性结构3 Reversing Linked List
    java IO流 (八) RandomAccessFile的使用
    java IO流 (七) 对象流的使用
    java IO流 (六) 其它的流的使用
    java IO流 (五) 转换流的使用 以及编码集
    java IO流 (四) 缓冲流的使用
    java IO流 (三) 节点流(或文件流)
    java IO流 (二) IO流概述
    java IO流 (一) File类的使用
  • 原文地址:https://www.cnblogs.com/ZYH-coder0927/p/13650113.html
Copyright © 2011-2022 走看看