博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
SQL: DDL, DML,表定义与含义
阅读量:5755 次
发布时间:2019-06-18

本文共 4550 字,大约阅读时间需要 15 分钟。

DDL: 数据定义语言;

CREATE, ALTER, DROP

DB组件:数据库、表、索引、视图、用户、存储过程、存储函数、触发器、事件调度器等        CREATE相关的常用命令:           CREATE DATABASE           CREATE EVENT           CREATE FUNCTION           CREATE FUNCTION UDF           CREATE INDEX           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索引(全文索引)                        聚集索引、非聚集索引                        简单索引、组合索引        创建表:CREATE TABLE            (1) 直接创建;            (2) 通过查询现存的表创建;新表会被直接插入查询而来的数据;                CREATE [TEMPORARY] TABLE [IF NOT EXISTS] tbl_name                    [(create_definition,...)]                    [table_options]                    [partition_options]                    select_statement                                                    (3) 通过复制现存的表的表结构创建;不复制数据;                CREATE [TEMPORARY] TABLE [IF NOT EXISTS] tbl_name                 { LIKE old_tbl_name | (LIKE old_tbl_name) }                mysql> SHOW GLOBAL VARIABLES LIKE '%default%engine%';  #查看表引擎                +----------------------------+--------+                | Variable_name              | Value  |                +----------------------------+--------+                | default_storage_engine     | InnoDB |                | default_tmp_storage_engine | InnoDB |                +----------------------------+--------+                2 rows in set (0.00 sec)            注意:Storage Engine是指表类型,也即在表创建时指明其使用的存储引擎;                同一个库中表要使用同一种存储引擎类型;        查看表结构:            DESCRIBE tbl_name;        查看表状态信息:            SHOW [FULL] TABLES [{FROM | IN} db_name] [LIKE 'pattern' | WHERE expr]              mysql> SHOW TABLE STATUS LIKE 't1'\G                *************************** 1. row ***************************                           Name: t1                         Engine: InnoDB                                 Version: 10                     Row_format: Compact        #行格式                           Rows: 2              #已有的行数                 Avg_row_length: 8192           #表中现有的所有行的平均长度                    Data_length: 16384          #表中数据的大小                Max_data_length: 0              #表数据的最大容量,该值与存储引擎有关  #0代表没有上限                   Index_length: 0              #索引大小                      Data_free: 0              #目前已分配,但是没有显示                 Auto_increment: 5              #自动增长字段                    Create_time: 2019-01-29 13:27:33    #创建时间                    Update_time: NULL                     Check_time: NULL                      Collation: latin1_swedish_ci      #排序规则                       Checksum: NULL                   #表的校验和                 Create_options:                        #创建表额外指定的其他选项                        Comment:                        #注释,包含了额外的其他信息。                1 row in set (0.01 sec)        修改表:ALTER TABLE        增加字段    mysql> ALTER TABLE student  ADD  age varchar(20) NOT NULL;            Query OK, 0 rows affected (0.22 sec)            Records: 0  Duplicates: 0  Warnings: 0            mysql> SELECT * FROM student;            +----+----------+---------------+------+-----+            | id | name     | register_date | sex  | age |            +----+----------+---------------+------+-----+            |  1 | ZhanYang | 2018-06-20    | NULL |     |            |  4 | LiuJia   | 2018-05-30    | NULL |     |            |  8 | JiaLiu   | 2018-06-20    | NULL |     |            |  9 | JiaLiu   | 2018-04-20    | NULL |     |            | 10 | gaoyf    | 2018-04-20    | NULL |     |            | 11 | zhujh    | 2018-04-20    | NULL |     |            | 12 | zhouha   | 2018-04-20    | NULL |     |            | 13 | hanzb    | 2018-04-21    | M    |     |            | 16 | ZhanXing | 2018-05-21    | M    |     |            | 17 | XingYan  | 2018-05-21    | M    |     |            | 18 | Jinjiao  | 2019-01-29    | M    |     |            | 19 | Jinjiao  | 2019-01-29    | M    |     |            | 20 | Yinjiao  | 2019-01-28    | F    |     |            +----+----------+---------------+------+-----+            13 rows in set (0.00 sec)        删除表:DROP TABLE

转载于:https://blog.51cto.com/zhanx/2348156

你可能感兴趣的文章
Ubuntu 12.04安装
查看>>
mysql client命令行选项
查看>>
vc遍历网页表单并自动填写提交 .
查看>>
配置ORACLE 11g绿色版客户端和PLSQL远程连接环境
查看>>
设计模式:外观模式(Façade Pattern)
查看>>
ASP.NET中 DataList(数据列表)的使用前台绑定
查看>>
Linux学习之CentOS(八)--Linux系统的分区概念
查看>>
主域控制器的安装与配置步骤与方法
查看>>
JavaScript---事件
查看>>
Android NDK入门实例 计算斐波那契数列一生成jni头文件
查看>>
c/c++性能优化--I/O优化(上)
查看>>
将HTML特殊转义为实体字符的两种实现方式
查看>>
jquery 保留两个小数的方法
查看>>
网站架构设计的误区
查看>>
Standard C++ Programming: Virtual Functions and Inlining
查看>>
iis 故障导致网站无法访问
查看>>
作业抄袭简单检测
查看>>
ASP.NET 回调技术(CallBack)
查看>>
Spark源码分析 – BlockManager
查看>>
JS中的this
查看>>