• 创建数据库

    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. 强化学习(五)用时序差分法(TD)求解

    在强化学习(四)用蒙特卡罗法(MC)求解中,我们讲到了使用蒙特卡罗法来求解强化学习问题的方法,虽然蒙特卡罗法很灵活,不需要环境的状态转化概率模型,但是它需要所有的采样序列都是经历完整的状态序列.如果我 ...

  2. .NET西安社区 [拥抱开源,又见 .NET] 第二次活动简报

    「拥抱开源, 又见 .NET」 随着 .NET Core的发布和开源,.NET又重新回到人们的视野. .NET Core的下个3.0即将release,加入非常多的新功能,越来越拥抱变化,DevOps ...

  3. windows系统dokuwiki安装部署设置 xampp环境配置

    简单记录一次安装dokuwiki的过程 dokuwiki下载 dokuwiki下载地址 https://download.dokuwiki.org/ 下载前有一些可选项目,版本.语言.插件,可以按照需 ...

  4. C# 30分钟完成百度人脸识别——进阶篇(文末附源码)

    距离上次入门篇时隔两个月才出这进阶篇,小编惭愧,对不住关注我的卡哇伊的小伙伴们,为此小编用这篇博来谢罪. 前面的准备工作我就不说了,注册百度账号api,创建web网站项目,引入动态链接库引入. 不了解 ...

  5. SpringCloud系列——SSO 单点登录

    前言 作为分布式项目,单点登录是必不可少的,文本基于之前的的博客(猛戳:SpringCloud系列——Zuul 动态路由,SpringBoot系列——Redis)记录Zuul配合Redis实现一个简单 ...

  6. 上传图片截图预览控件不显示cropper.js 跨域问题

    上传图片到图片服务器,因为域名不同,多以会有跨域问题. No 'Access-Control-Allow-Origin' header is present on the requested reso ...

  7. Ext JS中的typeOf

    Ext JS中的typeOf:以字符串格式,返回给定变量的类型 其中对字符串对象.元素节点.文本节点.空白文本节点判断并不准确 测试代码如下: <!DOCTYPE HTML PUBLIC &qu ...

  8. python之循环(增删)内使用list.remove()

    dat=['] for item in dat: ': dat.remove(item) print(dat) #按要求是把'0'都删掉的,输出结果是['1', '2', '3', '0'] ?? 首 ...

  9. 生鲜配送管理系统_升鲜宝V2.0 小标签打印功能说明_15382353715

    小标签打印说明 小标签打印可以打印本系统的订单商品数量,也可以把外部的订单商品导入本系统进行打印. 打印本系统中的订单商品操作说明 1.1    界面说明 1.2     查询条件 1.2.1     ...

  10. SQL 获取时间段内日期列表

    declare @start date,@end date; set @start='2010-01-01'; set @end='2010-02-01'; --获取时间段内日期列表 select [ ...