• 创建数据库

    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. 发现了一个App拉新工具:免填邀请码

    去年公司开始着手开发一个App项目,从调研到开发完成,前前后后历时快半年(没少加班),目前产品已经上架了各个应用市场,名字就不提了,省得说我打广告.今年开年说要开始做冷启动了,大家都知道,这才是最苦逼 ...

  2. @vue-cli3创建项目报错:ERROR command failed: npm install --loglevel error --registry=https://registry.npm.taobao.org --di

    使用@vue-cli3时 在你感觉所以配置都搞好开始创建项目时,不停的报错,就是创建不成功 清npm缓存也不行 改淘宝镜像也不行 就快奔溃了,最后最终(其实我在凑150字,为了能发到首页给更多采坑的兄 ...

  3. 1.2环境安装「深入浅出ASP.NET Core系列」

    官网 在介绍安装环境之前,先介绍周边信息,比如微软net官网. https://www.microsoft.com/net 这个网站是学习微软技术栈比较权威的地方,包括环境下载,学习,架构,文档,社区 ...

  4. 在React中使用Typescript的实践问题总结

    1.布尔值的大小写问题: 声明变量类型的时候,使用小写boolean 2. 对于从父组件传递过来的函数,子组件在模版中调用时,如果采用原来的写法,会报错: 改变写法后是如下这样,如果有参数和函数返回值 ...

  5. Centos7上安装docker

    Docker从1.13版本之后采用时间线的方式作为版本号,分为社区版CE和企业版EE. 社区版是免费提供给个人开发者和小型团体使用的,企业版会提供额外的收费服务,比如经过官方测试认证过的基础设施.容器 ...

  6. java爬虫系列第三讲-获取页面中绝对路径的各种方法

    在使用webmgiac的过程中,很多时候我们需要抓取连接的绝对路径,总结了几种方法,示例代码放在最后. 以和讯网的一个页面为例: xpath方式获取 log.info("{}", ...

  7. Spring MVC(二)基于标注的MVC

    1.基于标注的Spring MVC 1.1 建立一个项目导入jar包(ioc aop mvc) 拷贝容器对应的配置文件到src下 在WEB-INF建立一个login.jsp 1.2 在web.xml ...

  8. 禁用事件event默认行为

    在大多数情况下,为事件处理函数返回false,可以防止默认的事件行为.例如,默认情况下点击一个<a>元素,页面会跳转到该元素href属性指定的页. js中return false作用一般是 ...

  9. SharpMap和NetTopologySuite叠加分析问题

    先附上实现的相交叠加分析的部分代码,然后请教个问题,希望能够得到解答. /// <summary> 执行相交叠加分析 </summary> private void Execu ...

  10. iOS---------获取当前年份

    NSDate *  senddate=[NSDate date]; NSDateFormatter  *dateformatter=[[NSDateFormatter alloc] init]; [d ...