• 创建数据库

    create database if not exists STUDY character set utf8 ;

  • 查看新建数据库的语句

    SHOW CREATE DATABASE STUDY;

  • 查看当前数据库版本

    SELECT @@version ;

  • 删除数据库

    DROP DATABASE IF EXISTS STUDY;

  • 指定数据库

    USE STUDY;

  • 新增数据表

    CREATE TABLE IF NOT EXISTS S_TB_USER(

    ID INT(11) DEFAULT NULL,

    NAME VARCHAR(20) DEFAULT NULL,

    AGE TINYINT DEFAULT NULL

    )ENGINE=INNODB DEFAULT CHARSET=utf8;

  • 查看当前数据库的数据表清单

    SHOW TABLES;

  • 删除表

    DROP TABLE IF EXISTS S_TB_USER;

  • 修改表名称

    ALTER TABLE S_TB_USER RENAME TO S_TB_USERS;

    ALTER TABLE S_TB_USERS RENAME TO S_TB_USER;

  • 增加列

    ALTER TABLE S_TB_USER ADD remark varchar(200);

  • 在中间某字段之后添加字段

    ALTER TABLE S_TB_USER ADD address VARCHAR(100) AFTER age;

  • 在第一个字段前增加字段

    ALTER TABLE S_TB_USER ADD FAMI_ID INT(11) FIRST;

  • 查看当前表脚本

    SHOW CREATE TABLE S_TB_USER;

  • 删除列

    ALTER TABLE S_TB_USER DROP COLUMN ADDRESS;

  • 查看表结构

    DESCRIBE S_TB_USER; DESC S_TB_USER;

  • 修改列名称

    ALTER TABLE S_TB_USER CHANGE remark REMARK VARCHAR(20);

  • 修改字段类型

    ALTER TABLE S_TB_USER MODIFY REMARK VARCHAR(100);

  • 修改主键约束
  • ALTER TABLE TEACHERS ADD PRIMARY KEY (TEACHER_ID);
  • 修改外键约束
  • ALTER TABLE TEACHERS ADD FOREIGN KEY (DEPARTMENT_ID) REFERENCES  DEPARTMENT(D_ID);
  • 复制表(数据+表结构)

    CREATE TEMPORARY TABLE IF NOT EXISTS S_TB_USERS_COPY;

  • 复制表结构

    CREATE TEMPORARY TABLE IF NOT EXISTS S_TB_USER_COPY2 LIKE S_TB_USER;

    在创建表格时,您可以使用TEMPORARY关键词。只有在当前连接情况下,TEMPORARY表才是可见的。当连接关闭时,TEMPORARY表被自动取消。这意味着两个不同的连接可以使用相同的临时表名称,同时两个临时表不会互相冲突,也不与原有的同名的非临时表冲突。(原有的表被隐藏,直到临时表被取消时为止。)您必须拥有CREATE TEMPORARY TABLES权限,才能创建临时表。

  • 主键约束 CREATE TABLE TB_FIRST( ID INT(10) NOT NULL PRIMARY KEY, F_NAME VARCHAR(20) );

    CREATE TABLE TB_SEC(

    ID INT(10) NOT NULL,

    S_NAME VARCHAR(20),

    PRIMARY KEY (ID)

    );

  • 联合主键

    CREATE TABLE TB_THIRD(

    ID INT(10) NOT NULL,

    TH_NAME VARCHAR(20) NOT NULL,

    PRIMARY KEY(ID,TH_NAME)

    );

  • 外键约束

    CREATE TABLE TB_FOUR(

    ID INT(11) NOT NULL,

    S_ID INT(11) ,

    F_NAME VARCHAR(45),

    PRIMARY KEY(ID),

    FOREIGN KEY(S_ID) REFERENCES TB_SEC(ID)

    );

  • 非空约束+唯一约束

    CREATE TABLE TB_FIR(

    ID INT(11) NOT NULL,

    F_NAME VARCHAR(20),

    UNIQUE(ID) );

  • 自增字段

    CREATE TABLE TB_SIX(

    ID INT(11) NOT NULL UNIQUE AUTO_INCREMENT,

    S_NAME VARCHAR(20)

    );

    CREATE TABLE TB_SEVEN(

    ID INT(11) PRIMARY KEY AUTO_INCREMENT,

    S_NAME VARCHAR(20)

    );

  • ALTER TABLE TB_SIX CHANGE ID ID INT(11) NOT NULL AUTO_INCREMENT;
  • 注:只有int类型且为primary key 才可以使用auto_increment.

数据定义语言(DDL Data Definition Language)基础学习笔记的更多相关文章

  1. mysql数据库-mysql数据定义语言DDL (Data Definition Language)归类(六)

    0x01 创建数据库并指定字符集和排序规则 -- 三种实例写法 create database temptab2 character set utf8 collate utf8_general_ci; ...

  2. MySQL之数据定义语言(DDL)

    写在前面 本文中 [ 内容 ] 代表啊可选项,即可写可不写. SQL语言的基本功能介绍 SQL是一种结构化查询语言,主要有如下几个功能: 数据定义语言(DDL):全称Data Definition L ...

  3. <MySQL>入门三 数据定义语言 DDL

    -- DDL 数据定义语言 /* 库和表的管理 一.库的管理:创建.修改.删除 二.表的管理:创建.修改.删除 创建:create 修改:alter 删除:drop */ 1.库的管理 -- 库的管理 ...

  4. ODPS SQL <for 数据定义语言 DDL>

    数据定义语言:(DDL) 建表语句: CREATE TABLE [IF NOT EXISTS] table_name [(col_name data_type [COMMENT col_comment ...

  5. 30441数据定义语言DDL

    数据定义:指对数据库对象的定义.删除和修改操作. 数据库对象主要包括数据表.视图.索引等. 数据定义功能通过CREATE.ALTER.DROP语句来完成. 按照操作对象分类来介绍数据定义的SQL语法. ...

  6. Hive 5、Hive 的数据类型 和 DDL Data Definition Language)

    官方帮助文档:https://cwiki.apache.org/confluence/display/Hive/LanguageManual+DDL Hive的数据类型 -- 扩展数据类型data_t ...

  7. MySQL中的DDL(Data Definition Language,数据定义语言)

    create(创建表) 标准的建表语句: create table [模式名.]表名 ( #可以有多个列定义 columnName1 dataType [default expr(这是默认值)], . ...

  8. SQLite基础-4.数据定义语言(DDL)

    目录 一.创建数据库 1. 创建方式 2. 数据库命名规范 二. 创建表 1. 基本用法 2. 数据表命名规范 3. 字段命名规范 三. 删除表 一.创建数据库 1. 创建方式 在第二章中我们讲了如何 ...

  9. oracle 数据定义语言(DDL)语法

    DDL语言包括数据库对象的创建(create).删除(drop)和修改(alter)的操作 1.创建表语法 create table table_name( column_name datatype  ...

随机推荐

  1. KnockOut绑定之Click绑定

    example(click绑定) Click绑定对DOM元素添加一个函数,当DOM元素被点击的时候调用.在button,input 或者a标签中常用,但其实他适用于任何可见的DOM元素. 每当你点击b ...

  2. golang命令行库cobra的使用

    简介 Cobra既是一个用来创建强大的现代CLI命令行的golang库,也是一个生成程序应用和命令行文件的程序.下面是Cobra使用的一个演示: Cobra提供的功能 简易的子命令行模式,如 app ...

  3. 【带着canvas去流浪(6)】绘制雷达图

    目录 一. 任务说明 二. 重点提示 三. 示例代码 示例代码托管在:http://www.github.com/dashnowords/blogs 博客园地址:<大史住在大前端>原创博文 ...

  4. PHP正则表达式二分法实现mysql盲注脚本

    $sUrl = 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'; $sPost = 'inject=Inject&injection='; $sCharset = 'AB ...

  5. 封装继承多态(OOP)

    封装:把事物封装成类,私有化属性. 继承:共同的特性封装在父类,子类就有父类的属性 父类已经实现了的方法,子类也有需要前面+New 隐藏父类的方法,就不报错了,有这个语法,面试的时候问过,不推荐用. ...

  6. Java_基础篇(数组排序)

    Java_基础之数组排序(从小到大) 1.冒泡排序: 冒泡排序可以写成两层循环. 每次循环将最大的数值交换到数组的最后一个. 每排序完一次,后面就少比较一次.所以二层循环的判断条件写成:arry.le ...

  7. 对HTML5标签的认识(四)

    这篇随笔讲讲HTML5中的表单和表单的一些元素 一.表单的作用是什么? 概念:表单在网页中主要是负责对数据信息的采取,表单一共分成三个部分: 1.表单的标签:这里面包含了处理表单的数据所用CGI程序以 ...

  8. Ajax常见面试题

    1,什么是ajax? 为什么要使用ajax? 1.ajax是"asynchornous javascript and xml "的缩写,指一种创建交互式网页应用的网页开发技术. 2 ...

  9. Cesium 绘制点、线、面和测距

    本文基于ES6,采用React+Cesium的Webgis前端开发框架,目前threejs和cesium的结合正在研究中.此段代码采用原生javascript,可能过程中用到了es6的扁平化语法,如( ...

  10. 2D射影几何和变换

    阅读<计算机视觉中的多视图集合> 2D射影几何和变换 2D射影平面 本章的关键是理解线和点的对偶性.从射影平面模型出发,IP^2^内的点(a, b ,c)由IP^3^空间中一条过原点的射线 ...