数据定义语言(DDL Data Definition Language)基础学习笔记
创建数据库
create database if not exists
STUDYcharacter 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)基础学习笔记的更多相关文章
- mysql数据库-mysql数据定义语言DDL (Data Definition Language)归类(六)
0x01 创建数据库并指定字符集和排序规则 -- 三种实例写法 create database temptab2 character set utf8 collate utf8_general_ci; ...
- MySQL之数据定义语言(DDL)
写在前面 本文中 [ 内容 ] 代表啊可选项,即可写可不写. SQL语言的基本功能介绍 SQL是一种结构化查询语言,主要有如下几个功能: 数据定义语言(DDL):全称Data Definition L ...
- <MySQL>入门三 数据定义语言 DDL
-- DDL 数据定义语言 /* 库和表的管理 一.库的管理:创建.修改.删除 二.表的管理:创建.修改.删除 创建:create 修改:alter 删除:drop */ 1.库的管理 -- 库的管理 ...
- ODPS SQL <for 数据定义语言 DDL>
数据定义语言:(DDL) 建表语句: CREATE TABLE [IF NOT EXISTS] table_name [(col_name data_type [COMMENT col_comment ...
- 30441数据定义语言DDL
数据定义:指对数据库对象的定义.删除和修改操作. 数据库对象主要包括数据表.视图.索引等. 数据定义功能通过CREATE.ALTER.DROP语句来完成. 按照操作对象分类来介绍数据定义的SQL语法. ...
- Hive 5、Hive 的数据类型 和 DDL Data Definition Language)
官方帮助文档:https://cwiki.apache.org/confluence/display/Hive/LanguageManual+DDL Hive的数据类型 -- 扩展数据类型data_t ...
- MySQL中的DDL(Data Definition Language,数据定义语言)
create(创建表) 标准的建表语句: create table [模式名.]表名 ( #可以有多个列定义 columnName1 dataType [default expr(这是默认值)], . ...
- SQLite基础-4.数据定义语言(DDL)
目录 一.创建数据库 1. 创建方式 2. 数据库命名规范 二. 创建表 1. 基本用法 2. 数据表命名规范 3. 字段命名规范 三. 删除表 一.创建数据库 1. 创建方式 在第二章中我们讲了如何 ...
- oracle 数据定义语言(DDL)语法
DDL语言包括数据库对象的创建(create).删除(drop)和修改(alter)的操作 1.创建表语法 create table table_name( column_name datatype ...
随机推荐
- 强化学习(五)用时序差分法(TD)求解
在强化学习(四)用蒙特卡罗法(MC)求解中,我们讲到了使用蒙特卡罗法来求解强化学习问题的方法,虽然蒙特卡罗法很灵活,不需要环境的状态转化概率模型,但是它需要所有的采样序列都是经历完整的状态序列.如果我 ...
- .NET西安社区 [拥抱开源,又见 .NET] 第二次活动简报
「拥抱开源, 又见 .NET」 随着 .NET Core的发布和开源,.NET又重新回到人们的视野. .NET Core的下个3.0即将release,加入非常多的新功能,越来越拥抱变化,DevOps ...
- windows系统dokuwiki安装部署设置 xampp环境配置
简单记录一次安装dokuwiki的过程 dokuwiki下载 dokuwiki下载地址 https://download.dokuwiki.org/ 下载前有一些可选项目,版本.语言.插件,可以按照需 ...
- C# 30分钟完成百度人脸识别——进阶篇(文末附源码)
距离上次入门篇时隔两个月才出这进阶篇,小编惭愧,对不住关注我的卡哇伊的小伙伴们,为此小编用这篇博来谢罪. 前面的准备工作我就不说了,注册百度账号api,创建web网站项目,引入动态链接库引入. 不了解 ...
- SpringCloud系列——SSO 单点登录
前言 作为分布式项目,单点登录是必不可少的,文本基于之前的的博客(猛戳:SpringCloud系列——Zuul 动态路由,SpringBoot系列——Redis)记录Zuul配合Redis实现一个简单 ...
- 上传图片截图预览控件不显示cropper.js 跨域问题
上传图片到图片服务器,因为域名不同,多以会有跨域问题. No 'Access-Control-Allow-Origin' header is present on the requested reso ...
- Ext JS中的typeOf
Ext JS中的typeOf:以字符串格式,返回给定变量的类型 其中对字符串对象.元素节点.文本节点.空白文本节点判断并不准确 测试代码如下: <!DOCTYPE HTML PUBLIC &qu ...
- python之循环(增删)内使用list.remove()
dat=['] for item in dat: ': dat.remove(item) print(dat) #按要求是把'0'都删掉的,输出结果是['1', '2', '3', '0'] ?? 首 ...
- 生鲜配送管理系统_升鲜宝V2.0 小标签打印功能说明_15382353715
小标签打印说明 小标签打印可以打印本系统的订单商品数量,也可以把外部的订单商品导入本系统进行打印. 打印本系统中的订单商品操作说明 1.1 界面说明 1.2 查询条件 1.2.1 ...
- SQL 获取时间段内日期列表
declare @start date,@end date; set @start='2010-01-01'; set @end='2010-02-01'; --获取时间段内日期列表 select [ ...