位置: 编程技术 - 正文

MySQL ALTER命令使用详解

编辑:rootadmin

推荐整理分享MySQL ALTER命令使用详解,希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

ALTER TABLE允许你修改一个现有表的结构。例如,你可以增加或删除列、创造或消去索引、改变现有列的类型、或重新命名列或表本身。你也能改变表的注释和表的类型。你可以使用CHANGE old_col_name create_definition子句重命名一个列。为了这样做,指定旧的和新的列名字和列当前有的类型。例如,重命名一个INTEGER列,从a到b,你可以这样做:mysql> ALTER TABLE t1 CHANGE a b INTEGER;如果你想要改变列的类型而非名字,就算他们是一样的,CHANGE语法仍然需要2个列名。例如:mysql> ALTER TABLE t1 CHANGE b b BIGINT NOT NULL;然而,在MySQL3..a,你也可以使用MODIFY来改变列的类型而不是重命名它:mysql> ALTER TABLE t1 MODIFY b BIGINT NOT NULL;如果你使用CHANGE或MODIFY缩短一个列,一个索引存在于该列的部分(例如,如果你有一个VARCHAR列的头个字符的索引),你不能使列短于被索引的字符数目。 ALTER COLUMN为列指定新的缺省值或删除老的缺省值。如果老的缺省值被删除且列可以是NULL,新缺省值是NULL。如果列不能是NULL,MySQL赋予一个缺省值。缺省值赋值在7.7 CREATE TABLE句法中描述。DROP INDEX删除一个索引。这是MySQL对 ANSI SQL 的一个扩充。如果列从一张表中被丢弃,列也从他们是组成部分的任何索引中被删除。如果组成一个索引的所有列被丢弃,该索引也被丢弃。DROP PRIMARY KEY丢弃主索引。如果这样的索引不存在,它丢弃表中第一个UNIQUE索引。(如果没有明确地指定PRIMARY KEY,MySQL标记第一个UNIQUE键为PRIMARY KEY。)用 C API 函数mysql_info(),你能找出多少记录被拷贝, 和(当使用IGNORE时)由于唯一键值的重复多少记录被删除。 这里是一个例子,显示了一些ALTER TABLE用法。我们以一个如下

注意,这里索引了c,因为AUTO_INCREMENT柱必须被索引,并且另外我们声明c为NOT NULL,因为索引了的列不能是NULL。 当你增加一个AUTO_INCREMENT列时,自动地用顺序数字填入列值。

具体实例分析:

当我们需要修改数据表名或者修改数据表字段时,就需要使用到MySQL ALTER命令。

开始本章教程前让我们先创建一张表,表名为:testalter_tbl。

删除,添加或修改表字段如下命令使用了 ALTER 命令及 DROP 子句来删除以上创建表的 i 字段:

mysql> ALTER TABLE testalter_tbl DROP i;

如果数据表中只剩余一个字段则无法使用DROP来删除字段。

MySQL 中使用 ADD 子句来想数据表中添加列,如下实例在表 testalter_tbl 中添加 i 字段,并定义数据类型:

mysql> ALTER TABLE testalter_tbl ADD i INT;执行以上命令后,i 字段会自动添加到数据表字段的末尾。

如果你需要指定新增字段的位置,可以使用MySQL提供的关键字 FIRST (设定位第一列), AFTER 字段名(设定位于某个字段之后)。

MySQL ALTER命令使用详解

尝试以下 ALTER TABLE 语句, 在执行成功后,使用 SHOW COLUMNS 查看表结构的变化:

FIRST 和 AFTER 关键字只占用于 ADD 子句,所以如果你想重置数据表字段的位置就需要先使用 DROP 删除字段然后使用 ADD 来添加字段并设置位置。

修改字段类型及名称如果需要修改字段类型及名称, 你可以在ALTER命令中使用 MODIFY 或 CHANGE 子句 。

例如,把字段 c 的类型从 CHAR(1) 改为 CHAR(),可以执行以下命令:

mysql> ALTER TABLE testalter_tbl MODIFY c CHAR();使用 CHANGE 子句, 语法有很大的不同。 在 CHANGE 关键字之后,紧跟着的是你要修改的字段名,然后指定新字段的类型及名称。尝试如下实例:

ALTER TABLE 对 Null 值和默认值的影响当你修改字段时,你可以指定是否包含只或者是否设置默认值。

以下实例,指定字段 j 为 NOT NULL 且默认值为 。

如果你不设置默认值,MySQL会自动设置该字段默认为 NULL。

修改字段默认值你可以使用 ALTER 来修改字段的默认值,尝试以下实例:

你也可以使用 ALTER 命令及 DROP子句来删除字段的默认值,如下实例:

修改数据表类型,可以使用 ALTER 命令及 TYPE 子句来完成。尝试以下实例,我们将表 testalter_tbl 的类型修改为 MYISAM :

注意:查看数据表类型可以使用 SHOW TABLE STATUS 语句。

修改表名如果需要修改数据表的名称,可以在 ALTER TABLE 语句中使用 RENAME 子句来实现。

尝试以下实例将数据表 testalter_tbl 重命名为 alter_tbl:

mysql> ALTER TABLE testalter_tbl RENAME TO alter_tbl;

标签: MySQL ALTER命令使用详解

本文链接地址:https://www.jiuchutong.com/biancheng/347247.html 转载请保留说明!

上一篇:MySQL 数据库 ALTER命令讲解(数据库alter change)

下一篇:mysql 5.7.30安装配置方法图文教程(mysql5.7.24安装配置教程)

  • 什么是消费税的计税销售额?价外费用是什么?
  • 哪个会计科目必须对全部项目发函证
  • 个人专项扣除需要扣税吗
  • 盈余公积在现金流量表中哪里体现
  • 发票认证后怎么打明细
  • 开票时间超限怎么办
  • 发票认证抵扣后还有用吗
  • 金融资产减值准备可以转回吗
  • 怎样进行房产置换的账务处理
  • 对外销售的材料的成本应计入什么账户
  • 固定资产的维护费计入什么科目
  • 增值税留抵税额抵减欠税
  • 银行卡撤销账户
  • 消费税的应纳税额的计算
  • 税务局返还的个税手续费税率
  • 外出经营预缴税
  • 简易征收可以抵扣进项吗
  • 一般纳税人申请流程
  • 房地产开发公司取名
  • 报价表含税点是什么意思?
  • 房租开的专票怎么做账
  • 个体工商户季度不超过30万免增值税吗
  • 税收编码3040203
  • 产权转移书据有哪些
  • 不同的征税主体对同一纳税人
  • 预提费用和待摊费用是根据以下哪项原则设置的会计科目
  • 无车承运业务如何开展
  • 房地产企业扣除项目
  • 慈善基金会的含义
  • 调整利润分配期怎么计算
  • 现金日记账有哪几种
  • 小规模企业所得税按季度还是按年
  • 打开网页出现电脑标志
  • 销售自己使用过的物品的税率
  • php讲解
  • 公司和个人分别交什么税
  • 在建工程如何转为成本费用
  • 房屋产权置换怎么交税?
  • 支付厂房租金计入什么科目
  • 文件上传之后返回一个文件路径怎么设置
  • 文化传媒公司的部门
  • 小规模与一般纳税人做账区别
  • 空调维修费进什么会计科目
  • thinkphp addons
  • pytorch1.9.0
  • 控制器操作视频
  • 日期按钮
  • 存在现金折扣的会计核算
  • python输入三个数输出最小的
  • 反写必须15号之前吗
  • 单位没有残疾人申报怎么申报
  • 注册一个公司没有流水可以吗
  • 结余资金包括结转资金吗?
  • 企业所得税季末资产总额
  • 运输服务是什么
  • db2数据文件
  • 管理费用 暂估入账
  • 留存收益怎么做
  • 每个月计提工资没有发怎么办
  • 个人购买股权和公司购买股权比较
  • sqlserver全文索引
  • win101909激活
  • ubuntu server initramfs
  • 苹果14pro max价格
  • win7睡眠设置在哪
  • 快捷方式栏在哪
  • win7系统64位安装打印机的方法
  • cocos2d setTextureRect用法
  • react组件写法
  • 一个简单的灵魂
  • django sessionid
  • 关于中国天气的新闻报道
  • 完美解决gvim的菜单乱码问题
  • python中get怎么用
  • js出错
  • vue配置api
  • sticky memo widget
  • 安卓中五种常见布局的特点
  • 搞农业种植
  • 杭州残保金2021年新政策申报时间
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设