• 创建数据库

    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. SpringBoot + Spring Security 学习笔记(三)实现图片验证码认证

    整体实现逻辑 前端在登录页面时,自动从后台获取最新的验证码图片 服务器接收获取生成验证码请求,生成验证码和对应的图片,图片响应回前端,验证码保存一份到服务器的 session 中 前端用户登录时携带当 ...

  2. SLAM+语音机器人DIY系列:(一)Linux基础——2.安装Linux发行版ubuntu系统

    摘要 由于机器人SLAM.自动导航.语音交互这一系列算法都在机器人操作系统ROS中有很好的支持,所以后续的章节中都会使用ROS来组织构建代码:而ROS又是安装在Linux发行版ubuntu系统之上的, ...

  3. SpringBoot基础系列-SpringCache使用

    原创文章,转载请标注出处:<SpringBoot基础系列-SpringCache使用> 一.概述 SpringCache本身是一个缓存体系的抽象实现,并没有具体的缓存能力,要使用Sprin ...

  4. 论AOP面向切面编程思想

    原创: eleven 原文:https://mp.weixin.qq.com/s/8klfhCkagOxlF1R0qfZsgg [前言] AOP(Aspect-Oriented Programming ...

  5. ssh登录错误ECDSA host key for ip has changed解决方案

    当我们使用ssh root@ip登录Linux服务器时,服务器报错: @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ WAR ...

  6. PHP 二维数组排序保持键名不变

    对二维数组指定的键名排序,首先大家想到的是array_multisort函数,关于array_multisort的用法我之前也写了一篇废话不多言,我们看个实例: <?php $data = ar ...

  7. 学JAVA第十二天,今天写java控制台输入流及String的类型转换

    今天老师讲了一天狗跳楼的问题,昨天解开始说了,今天都没讲新课, 所以,今天自学了Scanner类及String的类型转换 先来Scanner类实现键盘输入功能: 代码: package pkg1; i ...

  8. Ext.isIterable

    Ext.isIterable用于判断传入的参数是否为可迭代的 在这4种情况下,函数返回true 1:数组2:函数参数arguments3:HTML collections : NodeList4:HT ...

  9. 《JavaScript高级程序设计》笔记:BOM(八)

    BOM(浏览器对象模型)提供了很多对象,用于访问浏览器的功能,这些功能与任何网页内容无关. window对象 全局作用域 定义全局变量与在window对象上直接定义属性还是有一点差别:全局变量不能通过 ...

  10. Dynamics 365-关于Solution的那些事(三)

    这一篇的内容,是关于Solution的使用建议的,如果大家有什么实用的建议,欢迎留言讨论. 一. 版本控制 Solution是有版本号的,率性的人可能在新建一个solution的时候,直接赋值1.0, ...