博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
mysql- 修改字段
阅读量:4652 次
发布时间:2019-06-09

本文共 2772 字,大约阅读时间需要 9 分钟。

修改字段属性:

-- 修改字段属性-- ALTER TABLE tb_name MODIFY 字段名称 字段类型 [完整性约束条件]-- 将email字段 VARCHAR(50)修改成VARCHAR(200)-- 注意,修改时如果不带完整性约束条件,原有的约束条件将丢失,如果想保留修改时就得带上完整性约束条件ALTER TABLE user10 MODIFY email VARCHAR(200) NOT NULL DEFAULT 'a@a.com';-- 将card移到test后面ALTER TABLE user10 MODIFY card CHAR(10) AFTER test;-- 将test放到第一个,保留原完整性约束条件ALTER TABLE user10 MODIFY test CHAR(32) NOT NULL DEFAULT '123' FIRST;

修改字段名称和属性:

-- 将test字段改为test1-- ALTER TABLE 表名 CHANGE 原字段名 新字段名 字段类型 约束条件ALTER TABLE user10 CHANGE test test1 CHAR(32) NOT NULL DEFAULT '123';

 

添加删除默认值:

-- 创建新表CREATE TABLE user11(id TINYINT UNSIGNED KEY AUTO_INCREMENT,username VARCHAR(20) NOT NULL UNIQUE,age TINYINT UNSIGNED);-- 给age添加默认值ALTER TABLE user11 ALTER age SET DEFAUTL 18;-- 添加一个字段ALTER TABLE user11 ADD email VARCHAR(50);-- 给email添加默认值ALTER TABLE user11 ALTER email SET DEFAULT 'a@a.com';-- 删除默认值ALTER TABLE user11 ALTER age DROP DEFAULT;ALTER TABLE user11 ALTER email DROP DEFAULT;

 

添加主键:

-- 创建一个表CREATE TABLE test12(id INT);-- 添加主键-- ALTER TABLE tb_name ADD [CONSTRAINT [sysmbol]] PRIMARY KEY [index_type] (字段名称,...)ALTER TABLE test12 ADD PRIMARY KEY(id);-- 添加复合主键-- 先创建个表CREATE TABLE test13(id INT,card CHAR(18),username VARCHAR(20) NOT NULL);-- 添加复合主键ALTER TABLE test13 ADD PRIMARY KEY(id,card);

删除主键:

-- 删除主键ALTER TABLE test12 DROP PRIMARY KEY;-- 再给test12添加主键, 完整形式ALTER TABLE test12 ADD CONSTRAINT symbol PRIMARY KEY index_type(id);

在删除主键时,有一种情况是需要注意的,我们知道具有自增长的属性的字段必须是主键,如果表里的主键是具有自增长属性的;那么直接删除是会报错的。如果想要删除主键的话,可以先去年自增长属性,再删除主键

-- 再创建一个表,CREATE TABLE test14(id INT UNSIGNED KEY AUTO_INCREMENT);-- 删除主键,这样会报错,因为自增长的必须是主键ALTER TABLE test14 DROP PRIMARY KEY;-- 先用MODIFY删除自增长属性,注意MODIFY不能去掉主键属性ALTER TABLE test14 MODIFY id INT UNSIGNED;-- 再来删除主键ALTER TABLE test14 DROP PRIMARY KEY;

 

 

唯一索引:

-- 添加唯一性约束-- ALTER TABLE tb_name ADD [CONSTANT [symbol]] UNIQUE [INDEX | KEY] [索引名称](字段名称,...)-- 创建测试表CREATE TABLE user12(id TINYINT UNSIGNED KEY AUTO_INCREMENT,username VARCHAR(20) NOT NULL,card CHAR(18) NOT NULL,test VARCHAR(20) NOT NULL,test1 CHAR(32) NOT NULL);-- username添加唯一性约束,如果没有指定索引名称,系统会以字段名建立索引ALTER TABLE user12 ADD UNIQUE(username);-- car添加唯一性约束ALTER TABLE user12 ADD CONSTRAINT symbol UNIQUE KEY uni_card(card);-- 查看索引SHOW CREATE TABLE user12;-- test,test1添加联合uniqueALTER TABLE user12 ADD CONSTRAINT symbol UNIQUE INDEX mulUni_test_test1(test, test1);-- 删除唯一-- ALTER TABLE tb_name DROP {INDEX|KEY} index_name;-- 删除刚刚添加的唯一索引ALTER TABLE user12 DROP INDEX username;ALTER TABLE user12 DROP KEY uni_card;ALTER TABLE user12 DROP KEY mulUni_test_test1;

 

修改表的存储引擎:

-- 修改表的存储引擎-- ALTER TABLE tb_name ENGINE=存储引擎名称ALTER TABLE user12 ENGINE=MyISAM;ALTER TABLE user12 ENGINE=INNODB;

 

修改自增长值:

-- 修改自增长的值-- ALTER TABLE tb_name AUTO_INCREMENT=值ALTER TABLE user12 AUTO_INCREMENT=100;

转载于:https://www.cnblogs.com/zqyanywn/p/9002407.html

你可能感兴趣的文章
史上最全然oophper php文件上传之文件类型相应表,ie,火狐各一份。
查看>>
让UIView窄斜
查看>>
Unity手游之路<七>角色控制器
查看>>
DHot.exe 热点新闻
查看>>
【iOS】使用SQLite与FMDB
查看>>
基数排序---Java实现+C++实现
查看>>
一步一步写算法(之洗牌算法)
查看>>
tomcat配置文件server.xml具体解释
查看>>
poj2503
查看>>
数据库 vs15支持sqlite实体数据模型流程
查看>>
python注释
查看>>
关于input的一些问题解决方法分享
查看>>
TensorFlow 学习资料
查看>>
java IO之AutoCloseable,Closeable和Flushable接口
查看>>
基于六参数仿射变换的控制点选取及坐标校正分析
查看>>
TFS 2012使用简介
查看>>
Windows phone应用开发[16]-数据加密
查看>>
Leetcode 875. 爱吃香蕉的珂珂
查看>>
演练:使用 Visual Basic .NET 创作组件
查看>>
Erp:原料投入产出报表
查看>>