DDL(data definition language)

DDL主要的命令有CREATE、ALTER、DROP等,DDL主要是用来创建,删除,修改数据库和表对象。

一、数据库操作

1.查看数据库

SHOW DATABASES;

2.新建数据库

CREATE DATABASE <数据库名>;

3.连接数据库

USE <数据库名>;

4.查看数据库中的表

SHOW TABLE;

5.删除数据库

DROP DATABASE <数据库名>;


二、数据表操作

1.创建数据表

1.1创建表的语法格式

CREATE TABLE 要创建的表名字

(

字段名1 数据类型(字段大小) [约束条件] ,

字段名2 数据类型(字段大小) [约束条件]

);

1.2主键约束(PRIMARY KEY CONSTRAINT)

主键能够唯一的标识表中的一行记录,因此主键不能有重复且不能为空。主键又分单字段主键和复合主键两种类型。

单字段主键

可以在定义列时一起指定

字段名 数据类型(字段大小)  PRIMARY KEY

也可以在定义完所有列后指定

[CONSTRAINT  <约束名>]  PRIMARY KEY 字段名

复合主键

[CONSTRAINT  <约束名>]  PRIMARY KEY(字段1,字段2)

1.3外键约束(FOREIGN KEY CONSTRAINT)

外键用来在两个表的数据之间建立连接,对应的是参照完整性。外键必须是另一个表的主键,和主键一样它可以是一列或多列,不过与主键不一样的是:一个表可以有多个外键。主表名是外键所依赖的表的名字。

[CONSTRAINT  <约束名>]  FOREIGN KEY(字段1, 字段2) REFERENCES 主表名(字段1, 字段2)

1.4非空约束(NOT NULL CONSTRAINT)

非空约束是指该列的值不能为空,在插入一条记录时如果没有给定值,数据库系统就会报错。

字段名 数据类型 NOT NULL

1.5唯一性约束(UNIQUE CONSTRAINT)

唯一性约束是指该列的值不允许重复,允许一个空值。

字段名 数据类型 UNIQUE

1.6默认约束(DEFAULT CONSTRAINT)

默认约束是指该列有默认值,在插入一条记录时,如果没有指定该字段的值,则自动为该字段赋默认值。

字段名 数据类型 DEFAULT 默认值

1.7设置属性值自动增加

这个功能的意思就是每插入一条新记录时自动生成字段的主键值。可以通过为主键设置AUTO_INCREMENT关键字来实现。它初始化为1,每添加一条记录,就会增加1。一个表只能为一个字段添加AUTO_INCREMENT,且该字段必须是主键或为主键的一部分。

字段名 数据类型 AUTO_INCREMENT



2.查看数据表结构

2.1查看表基本结构

DESCRIBE/DESC语句可以查看表的字段信息,包括:字段名,数据类型,约束条件等。

DESCRIBE 表名

DESC 表名

2.2查看表详细结构

SHOW CREATE TABLE语句可以查看创建表时的建表语句,存储引擎,字符编码等

SHOW CREATE TABLE 表名\G

\G可加可不加,加的话显示效果会更加直观。



3.修改数据表

3.1修改表名

ALTER TABLE 原表名  RENAME [TO]  新表名;

RENAME TABLE  原表名  TO  新表名;

3.2修改字段数据类型

ALTER TABLE 表名  MODIFY  字段名  数据类型;

3.3修改字段名

ALTER TABLE  表名  CHANGE  原字段名  新字段名  新数据类型;

注:如果不想改变数据类型,可以设置跟原来一样,但不能为空。

3.4添加新字段

一个新字段需要字段名,数据类型,完整性约束。FIRST作用是将字段设置为表中第一个字段,AFTER是把新添加的字段放在指定的字段名后面

ALTER TABLE 表名  ADD 新字段 数据类型 [约束条件]  [FIRST | AFTER  字段名];

3.5删除字段

ALTER TABLE  表名  DROP  字段名;

3.6修改字段的位置

ALTER TABLE  表名  MODIFY  字段 数据类型  FIRST;

ALTER TABLE  表名  MODIFY  字段 数据类型  AFTER 字段名;

3.7更改表的存储引擎

我们可以为每张表选用不同的存储引擎。

查看MySQL支持的存储引擎

SHOW ENGINES;

更改表的存储引擎

ALTER TABLE 表名  ENGINE=新的存储引擎名

3.8删除表的外键约束

外键约束一旦删除,就会解除主从表之间的关系。

ALTER TABLE  表名  DROP FOREIGN KEY  外键约束名;

3.9修改表中某个值

大多数时候我们需要做的修改是表中的某一个或几个数据,这就需要我们用下面这条命令达到精确的修改

UPDATE  表名字  SET  列1=值1,列2=值2  WHERE  条件;

3.10删除一行记录

DELETE  FROM  表名字  WHERE  条件;

4.删除数据表

4.1删除没有被关联的表

在MySQL中,我们可以使用DROP TABLE语句一次删除一张或多张没有被其他表关联(主键被其他表设置为外键)的数据表。

DROP TABLE [IF EXISTS]  表1,表2,......表n;

4.2删除被其他表关联的表

当要删除的表被其他表所关联的话,直接删除会报错,但有两个办法:

1.先删除与之关联的子表,再删除被关联的父表。

2.将与之关联的子表的外键约束解除,就可以只删除父表。



最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 218,546评论 6 507
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,224评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 164,911评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,737评论 1 294
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,753评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,598评论 1 305
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,338评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,249评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,696评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,888评论 3 336
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,013评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,731评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,348评论 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,929评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,048评论 1 270
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,203评论 3 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,960评论 2 355

推荐阅读更多精彩内容