zoukankan      html  css  js  c++  java
  • MySQL中的DDL,DML

    MySQL中的DDL,DML
    DDL:数据定义语言:
        CREATE,ALTER,DROP    
        DB组件:数据库、表、索引、视图、用户、存储过程、存储函数、触发器、事件调度器等
        CREATE相关的常用命令:
            CREATE DATABASE
            CREATE EVENT
            CREATE FUNCTION
            CREATE FUNCTION UDF
            CREATE INDEX
            CREATE LOGFILE GROUP
            CREATE PROCEDURE
            CREATE SERVER
            CREATE TABLE
            CREATE TABLESPACE
            CREATE TRIGGER
            CREATE USER
            CREATE VIEW
        
    DML:数据操作语言
        INSERT,DELETE,UPDATE,SELECT
        
    数据库:
        CREATE,ALTER,DROP
            {DATABASE|SCHEMA}
            [IF EXISTS]
            [IF NOT EXISTS]
    表:二维关系
        设计表:遵循规范
        定义:字段,索引
            字段:字段名,字段数据类型,修饰符
            约束:索引,应该创建在经常用作查询条件的字段上
                索引:实现级别在存取引擎
                    分类:
                        稠密索引、稀疏索引
                        B+所以、hash索引、R树索引、FULLTEXT索引
                        聚集索引:数据和主键索引存放在一起,按主键索引次序进行存储
                        非聚集索引:索引和数据分开存放,索引通过指针找到原始数据所在位置
                        简单索引(只索引在一个字段上)、组合索引(索引在多个字段上)

    创建表:
        1、直接创建;
        CREATE [TEMPORARY] TABLE [IF NOT EXISTS] tbl_name
        (create_definition,...)
        [table_options]
        [partition_options]
        2、通过查询现存的表创建:新表会被直接插入查询而来的数据;
        CREATE [TEMPORARY] TABLE [IF NOT EXISTS] tbl_name
        [(create_definition,...)]
        [table_options]
        [partition_options]
        [IGNORE | REPLACE]
        [AS] query_expression
        3、通过复制现存的表的表结构创建:不复制数据。
        CREATE [TEMPORARY] TABLE [IF NOT EXISTS] tbl_name
        { LIKE old_tbl_name | (LIKE old_tbl_name) }
    注意:Storage Engine是指表类型,也即在表创建时指明其使用的存储引擎;
          同一个库中的表要使用同一种存储引擎;

    查看表结构:
    DESCRIBE table_name    
    +------------------+--------------+------+-----+---------+-------+
    | Field            | Type         | Null | Key | Default | Extra |
    +------------------+--------------+------+-----+---------+-------+
    | id               | varchar(100) | NO   | PRI | NULL    |       |
    | createTime       | datetime     | YES  |     | NULL    |       |
    | host             | varchar(255) | YES  |     | NULL    |       |
    | name             | varchar(255) | YES  |     | NULL    |       |
    | originalFilename | varchar(255) | YES  |     | NULL    |       |
    | relativeUrl      | varchar(255) | YES  |     | NULL    |       |
    | relativeUrlAbb   | varchar(255) | YES  |     | NULL    |       |
    | savePath         | varchar(255) | YES  |     | NULL    |       |
    | savePathAbb      | varchar(255) | YES  |     | NULL    |       |
    | suffix           | varchar(255) | YES  |     | NULL    |       |
    | url              | varchar(255) | YES  |     | NULL    |       |
    | urlAbb           | varchar(255) | YES  |     | NULL    |       |
    +------------------+--------------+------+-----+---------+-------+  
          
    查看表的状态信息:
    SHOW TABLE STATUS LIKE 'table_name'G;
    *************************** 1. row ***************************
               Name: fansik                    # 表名
             Engine: InnoDB                    # 存储引擎
            Version: 10                        # 版本号
         Row_format: Dynamic                   # 行格式
               Rows: 381042                    # 已有行数
     Avg_row_length: 401                       # 现有的所有行的平均长度
        Data_length: 153026560                 # 表中数据的大小
    Max_data_length: 0                         # 表数据的最大容量,该值与存储引擎有关,0为不限制
       Index_length: 0                         # 索引大小,无索引
          Data_free: 6291456                   # 目前已分配,但尚未存入数据的空间,通常对myisam比较有用
     Auto_increment: NULL                      # 下一次自动增长的字段
        Create_time: 2017-07-11 10:12:06       # 表的创建时间
        Update_time: 2017-10-13 15:58:52       # 表的最近一次的修改时间
         Check_time: NULL                      # 最近一次使用checktable命令检查表的时间
          Collation: utf8_general_ci           # 排序规则
           Checksum: NULL                      # 表的校验和
     Create_options:                           # 创建表时其他的额外选项
            Comment:                           # 注释信息
    1 row in set (0.00 sec)

    修改表:ALTER TABLE
    删除表:DROP TABLE

  • 相关阅读:
    ADO之connection
    函数及自定义函数
    母版页
    XHTML5 与 HTML 4.01的差异
    三层架构的使用
    ExecuteNonQuery&& ExecuteQuery 区别
    常用数据结构的时间复杂度
    图像处理(卷积)作者太棒了
    C#中标准Dispose模式的实现
    计算机网络知识点
  • 原文地址:https://www.cnblogs.com/fansik/p/7661814.html
Copyright © 2011-2022 走看看