位置: 编程技术 - 正文

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安装配置教程)

  • 购买办公用品为什么不能用现金
  • 待报解预算收入计入什么科目
  • 小微企业开专票税率是1%还是3%
  • 结转本月发生的费用
  • 环保设备折旧年限和残值率
  • 资本公积是企业所得税吗
  • 商业汇票的存款期限
  • 审计费用需要计什么科目
  • 营改增后房屋维修的发票可以抵扣吗?
  • 股东分红个人所得税怎么申报
  • 其他应收款借方表示增加吗
  • 企业的其他业务收入主要核算
  • 停车费可以抵扣吗合法吗
  • 购买材料再进在建工程的账务处理
  • 房地产增值税结转收入的条件是什么
  • 固定资产进项税额怎么做账
  • 小规模纳税人增值税专用发票税率
  • 应收账款补贴
  • sixtypopsix.exe - sixtypopsix是什么进程 有什么用
  • 农产品的进项税额转出公式
  • 土地增值税清算全流程实战案例
  • 出租设备的租金计入哪个科目
  • PHP:imagegammacorrect()的用法_GD库图像处理函数
  • 大雾笼罩的早晨
  • 前端页面加载缓慢怎么办
  • 同一控制下企业合并和非同一控制下企业合并的区别
  • PHP5.5.15+Apache2.4.10+MySQL5.6.20配置方法分享
  • php中include_once
  • vue3配置文件
  • 涌泉的准确位置图 图解
  • 企业转让专利权属于什么收入
  • 收到预付款怎么入账
  • 消费税为什么要除以1减税率推导公式
  • 离岸价的含义
  • 金税三期税收管理系统打印控件
  • 汇算清缴补缴所得税的报税利润表怎么报
  • 用友t6操作流程
  • 固定资产特点有
  • 编制弹性预算的关键在于
  • 先开票后出库会计处理
  • 公司租赁的车辆发生的费用都可以报销吗?
  • 暂估商品入库 后收到发票怎么做分录
  • 合作社财政补助平均量化
  • 英飞拓拟2.1亿出售子公司股权
  • 餐饮赠券的会计分录
  • 实缴发票和月结发票知乎
  • 购入自用的机器怎么入账
  • 公司没开户需要做账吗怎么做
  • 原始凭证书写要求
  • sqlalchemy merge
  • windows7的插孔设置在哪
  • u盘装win8系统教程图解
  • ubuntu启动conda
  • linux chkdsk
  • centos源码安装软件
  • win8怎么关闭实时保护
  • WINDOWS系统还原主要作用
  • linux中ls命令的功能
  • openssh教程
  • root什么玩意
  • JavaScript字体颜色
  • web标准有那几个方面
  • vue打包页面空白
  • 几个常用的微课网站
  • python pdf操作
  • python装饰器与递归算法详解
  • JavaScript+html5 canvas绘制的圆弧荡秋千效果完整实例
  • Android通知栏点击打开安装
  • 编写python程序的步骤
  • jquery 画图
  • checkbox批量删除
  • kraken框架
  • bootstrap4 教程
  • 建筑行业增值税税收优惠政策
  • 嘉定办证中心营业时间
  • acfunp
  • 国有固定资产出租出借安全管理办法
  • 如何优化企业的筹资结构
  • 中国古代的税收制度的演变
  • 资源税的作用是什么?
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设