SQL常用表操作

本节要点

表的关键信息
更改表名
更改字段名
更改字段类型
更改字段NULL值设置
更改字段默认值
更改主键字段
新增字段
删除字段
删除表

表的关键信息

如果我们创建了一张表,在不删除表重建的前提下,可不可以对表进行一些修改的。

答案是肯定的!

但这里提醒一点,某些语句虽然是标准SQL支持的,但对于不同的数据库,操纵表的语法可能会稍有不同。所以下面讲的一些SQL语法,可能在MySQL里并不能成功执行,我会在语句后特别提醒。

更改表名

更改表名:使用RENAME TABLE关键字。语法如下:

1、RENAME TABLE 旧表名 TO 新表名;

比如,备份teacher表,使用如下语句:

1、RENAME TABLE teacher TO teacher_bak;

更改字段名

更改字段名:使用ALTER TABLE关键字。语法如下:

2、ALTER TABLE 表名 RENAME COLUMN 旧字段名 TO 新字段名;

比如,修改teacher_name的字段名为teacher_nm,使用如下语句:

2、ALTER TABLE teacher RENAME COLUMN teacher_name TO teacher_nm; --MySQL不支持

更改字段类型

更改字段类型:使用ALTER TABLE关键字。语法如下:

3、ALTER TABLE 表名 ALTER COLUMN 字段名 新字段类型;

比如,修改teacher_name的类型为VARCHAR(100),使用如下语句:

3、ALTER TABLE teacher ALTER COLUMN teacher_name varchar(100); --MySQL不支持

注意:在更改类型的时候,更改前的类型和更改后的类型一定要能显示转换,否则会造成数据丢失。比如INT类型转为DECIMAL(18,2)类型。

更改字段NULL值设置

更改字段类型时,可同时设置字段NULL值、默认值,也是使用ALTER TABLE关键字,语法是一样的。

比如,修改teacher_name的类型为VARCHAR(100) NULL,使用如下语句:

4、ALTER TABLE teacher ALTER COLUMN teacher_name varchar(100) null DEFAULT ''; --MySQL不支持

更改字段默认值

更改字段默认值:也可使用ALTER TABLE关键字。语法如下:

5、ALTER TABLE 表名 ALTER COLUMN 字段名 SET DEFAULT 默认值;

比如,修改teacher_name的默认值为’未知’,使用如下语句:

5、ALTER TABLE teacher ALTER COLUMN teacher_name set default '未知';

删除字段默认值:使用ALTER TABLE关键字。语法如下:

5、ALTER TABLE 表名 ALTER COLUMN 字段名 DROP DEFAULT;

比如,删除teacher_name的默认值,使用如下语句:

5、ALTER TABLE teacher ALTER COLUMN teacher_name drop default;

更改主键字段

设置主键:如果表已存在,但没有定义主键字段,可使用ALTER TABLE关键字设置主键。语法如下:

6、ALTER TABLE 表名 ADD PRIMARY KEY (主键字段列表);

比如,将teacher表的teacher_name和gender两个字段设置为主键,使用如下语句:

6、ALTER TABLE teacher ADD PRIMARY KEY (teacher_name,gender);

删除主键字段:如果表中已定义主键字段,可使用ALTER TABLE关键字删除主键。语法如下:

6、ALTER TABLE 表名 DROP PRIMARY KEY;

比如,将teacher表的主键删除,使用如下语句:

6、ALTER TABLE teacher DROP PRIMARY KEY;

更改主键字段:如果表中已定义主键字段,但想修改主键字段,比如说假如现在teacher表的主键字段是teacher_name和gender,现在想修改主键字段为teacher_id,有的数据库也是支持的。但不同的数据库语法差别非常大,这里就不多讲了。具体语法请以实际数据库为准。

新增字段

新增字段:使用ALTER TABLE关键字。语法如下:

7、ALTER TABLE 表名 ADD COLUMN 新字段名 字段类型及其他属性;

比如,在teacher表中新增年龄字段age,使用如下语句:

7、ALTER TABLE teacher ADD COLUMN age int not null default 0;

删除字段

删除字段:使用ALTER TABLE关键字。语法如下:

8、ALTER TABLE 表名 DROP COLUMN 字段名;

比如,在teacher表中删除年龄字段age,使用如下语句:

8、ALTER TABLE teacher DROP COLUMN age;

删除表

删除表:使用DROP TABLE关键字。语法如下:

9、DROP TABLE 表名;

比如,删除teacher表,使用如下语句:

9、DROP TABLE teacher;

汇总

下面汇总了一下本节课讲解的内容,这些内容,也不需要死记硬背,放在这里,用到的时候查一下就可以了。但是,一定要记住,下面这些SQL语句,有些在MySQL里不支持,这是数据库语法决定的,执行失败的时候,就不要强求了。

1、更改表:RENAME TABLE 旧表名 TO 新表名;

2、更改字段名:ALTER TABLE 表名 RENAME COLUMN 旧字段名 TO 新字段名;

3、更改字段类型:ALTER TABLE 表名 ALTER COLUMN 字段名 新字段类型;

4、更改字段NULL值:ALTER TABLE teacher ALTER COLUMN teacher_name varchar(100) null;

5、更改字段默认值:ALTER TABLE teacher ALTER COLUMN teacher_name varchar(100) default '';

6、删除字段默认值:ALTER TABLE 表名 ALTER COLUMN 字段名 DROP DEFAULT;

7、设置主键:ALTER TABLE 表名 ADD PRIMARY KEY (主键字段列表);

8、删除主键:ALTER TABLE 表名 DROP PRIMARY KEY;

9、新增字段:ALTER TABLE 表名 ADD COLUMN 新字段名 字段类型及其他属性;

10、删除字段:ALTER TABLE 表名 DROP COLUMN 字段名;

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

推荐阅读更多精彩内容

  • 50个常用的sql语句Student(S#,Sname,Sage,Ssex) 学生表Course(C#,Cname...
    哈哈海阅读 1,224评论 0 7
  • 50个常用的sql语句 Student(S#,Sname,Sage,Ssex) 学生表 Course(C#,Cna...
    最美的太阳WW阅读 3,155评论 0 23
  • 1 安装MySQL 进入MySQL官网,登录 如何在Macbook上安装MySQL_百度经验 我之后改了个,怕忘记...
    乔大叶_803e阅读 481评论 0 0
  • MySQL服务的配置和使用 **修改MySQL管理员的口令:mysqladmin –u root password...
    FrancisSoung阅读 1,303评论 0 15
  • 夜莺2517阅读 127,708评论 1 9