zoukankan      html  css  js  c++  java
  • mysql库和表的管理

    #DDL
    /*
    数据定义语言
    
    库和表的管理
    
    一、库的管理
    创建、修改、删除
    二、表的管理
    创建、修改、删除
    
    创建: create
    修改: alter
    删除: drop
    
    */
    
    #一、库的管理
    #1、库的创建
    /*
    语法:
    create database  [if not exists]库名;
    */
    
    #案例:创建库Books
    
    create databaseif not exists】 库名【 character set 字符集名】;
    CREATE DATABASE IF NOT EXISTS books ;
    
    #2、库的修改
    
    RENAME DATABASE books TO 新库名;
    
    #更改库的字符集
    
    alter database 库名   character set 字符集名;
    ALTER DATABASE books CHARACTER SET gbk;
    
    #3、库的删除
    
    drop databaseif exists】 库名;
    DROP DATABASE  IF EXISTS   books;
    
    #二、表的管理
    #1.表的创建 ★
    
    /*
    语法:
    方式1:
    create table 表名(
        列名 列的类型【(长度) 约束】,
        列名 列的类型【(长度) 约束】,
        列名 列的类型【(长度) 约束】,
        ...
        列名 列的类型【(长度) 约束】
    )
    方式2:使用子查询
     CREATE TABLE 表名
        [(column, column...)]
        AS 子查询;
    
    */
    #案例:创建表Book
    
    create table emp1 as select * from employees;
    
    CREATE TABLE book(
        id INT,#编号
        bName VARCHAR(20),#图书名
        price DOUBLE,#价格
        authorId  INT,#作者编号
        publishDate DATETIME#出版日期
    
    );
    DESC book;
    #案例:创建表author
    CREATE TABLE IF NOT EXISTS author(
        id INT,
        au_name VARCHAR(20),
        nation VARCHAR(10)
    )
    DESC author;
    #2.表的修改
    
    /*
    语法
    alter table 表名 add|drop|modify|change column 列名 【列类型 约束】;
    
    */
    
    #①修改列名,把book表的publishdata列明修改为pubDate。
    
    ALTER TABLE 表名  CHANGE COLUMN 旧列名       新列名   类型;
    ALTER TABLE book CHANGE COLUMN publishdate pubDate DATETIME;
    
    #②修改列的类型或约束
    
    ALTER TABLE 表名  MODIFY COLUMN  列名     新类型 【新约束】;
    ALTER TABLE book MODIFY COLUMN  pubdate TIMESTAMP;
    
    #③添加新列
    
    ALTER TABLE 表名    ADD COLUMN 列名    类型 【first|after 字段名】;
    ALTER TABLE author ADD COLUMN annual DOUBLE; 
    
    #④删除列
    
    ALTER TABLE 表名         DROP COLUMN  列名;
    ALTER TABLE book_author DROP COLUMN  annual;
    
    #⑤修改表名
    
    ALTER TABLE 表名    RENAME 【to】 新表名;
    ALTER TABLE author RENAME  TO    book_author;
    DESC book;
    
    #3.表的删除
    
    DROP TABLEIF EXISTS】 表名;
    DROP TABLE IF EXISTS    book_author;
    
    SHOW TABLES;
    
    #通用的写法:
    
    DROP DATABASE IF EXISTS 旧库名;
    CREATE DATABASE 新库名;
    
    DROP TABLE IF EXISTS 旧表名;
    CREATE TABLE  表名();
    
    #4.表的复制
      1、复制表的结构
        create table 表名 like 旧表;
      2、复制表的结构+数据
        create table 表名
        select 查询列表 from 旧表【where 筛选】;
    
    INSERT INTO author VALUES
    (1,'村上春树','日本'),
    (2,'莫言','中国'),
    (3,'冯唐','中国'),
    (4,'金庸','中国');
    
    SELECT * FROM Author;
    SELECT * FROM copy2;
    #1.仅仅复制表的结构
    
    CREATE TABLE copy LIKE author;
    
    #2.复制表的结构+数据
    CREATE TABLE copy2 
    SELECT * FROM author;
    
    #只复制部分数据
    CREATE TABLE copy3
    SELECT id,au_name
    FROM author 
    WHERE nation='中国';
    
    
    #仅仅复制某些字段
    
    CREATE TABLE copy4 
    SELECT id,au_name
    FROM author
    WHERE 0;//0表示false,1表示true。
  • 相关阅读:
    Asp.net 通过Repeater循环添加对应的一组控件
    JS将number数值转化成为货币格式
    Asp.net 在 Postback 之后 执行 javascript 方法
    Asp.net 通过Repeater嵌套Repeater循环添加对应的一组控件
    向SharePoint 2010中添加Permission Level,Group,以及相应的User
    Asp.net 前后台操作cookie 实现数据的循环下载
    JS 将 string 转换成为 number
    C# Dictionary通过value获取对应的key值
    手机相机下的世界
    自定义Data Service Providers — (3)IServiceProvider和DataSources 服务提供者和数据源
  • 原文地址:https://www.cnblogs.com/konglxblog/p/14728991.html
Copyright © 2011-2022 走看看