mysql中更改字段属性实际上都做了哪些操作

 mysql> set profiling=1;

Query OK, 0 rows affected (0.00 sec)

mysql> alter table test modify name varchar(10);
Query OK, 3 rows affected (0.00 sec)
Records: 3 Duplicates: 0 Warnings: 0

mysql> show profiles;
+----------+------------+------------------------------------------+
| Query_ID | Duration | Query |
+----------+------------+------------------------------------------+
| 1 | 0.00011200 | alter table test name varchar(10) |
| 2 | 0.00596700 | alter table test modify name varchar(10) |
+----------+------------+------------------------------------------+
2 rows in set (0.00 sec)

mysql> show profile for query 2;
+----------------------+----------+
| Status | Duration |
+----------------------+----------+
| starting | 0.000063 |
| checking permissions | 0.000002 |
| checking permissions | 0.000008 |
| init | 0.000049 |
| Opening tables | 0.000013 |
| System lock | 0.000005 |
| Table lock | 0.000010 |
| setup | 0.000034 |
| creating table | 0.005007 |
| After create | 0.000131 |
| copy to tmp table | 0.000109 |
| rename result table | 0.000355 |
| end | 0.000037 |
| query end | 0.000003 |
| freeing items | 0.000138 |
| cleaning up | 0.000003 |
+----------------------+----------+
16 rows in set (0.00 sec)

时间: 2024-10-17 09:46:19

mysql中更改字段属性实际上都做了哪些操作的相关文章

mysql中判断字段为空

mysql中判断字段为null或者不为null 在mysql中,查询某字段为空时,切记不可用 = null, 而是 is null,不为空则是 is not null select nulcolumn from table; if nuncolumn is null then select 1; else select 2; end if;

SQL SERVER中某个字段属性为varchar,我想把这个字段改成int型

SQL SERVER中某个字段属性为varchar,我想把这个字段改成int型? 这个就有点恼了,作为新手面对这些问题真有点难,这个也是我在百度上查到的,作为基础的整理吧,以后遇到方便查看. 用SQL语句:alter table [aa] alter column bb int eg: 这个是我的例子. 执行成功可以刷新一下数据库(如还是不可以,那就断开现有连接,再次连接就好.)

转:Mysql 中 varchar字段的存储限制

被问到一个问题:MySQL中varchar最大长度是多少?这不是一个固定的数字.本文简要说明一下限制规则. 1.限制规则 字段的限制在字段定义的时候有以下规则: a) 存储限制 varchar 字段是将实际内容单独存储在聚簇索引之外,内容开头用1到2个字节表示实际长度(长度超过255时需要2个字节),因此最大长度不能超过65535. b) 编码长度限制 字符类型若为gbk,每个字符最多占2个字节,最大长度不能超过32766; 字符类型若为utf8,每个字符最多占3个字节,最大长度不能超过2184

很奇怪这个var变量一定要放在事件里面。 mysql中BLOB字段内容如何查看。

很奇怪这个var变量一定要放在事件里面. mysql中BLOB字段内容如何查看. sessionStorage在项目中的应用 initAutoComplate 原文地址:https://www.cnblogs.com/wzdnwyyu/p/11169121.html

mysql中timestamp字段,在更新这个字段其他数据时候,不更新timestamp的时间

mysql中timestamp字段,在更新这个字段其他数据时候,不更新timestamp的时间 执行这条SQL ALTER TABLE  XXXX(表名)  CHANGE TIME TIME TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP; 列如如下所示语句: ALTER TABLE  ai_manager.message_task CHANGE TIME TIME TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP

MySQL中的字段约束 null、not null、default、auto_increment

在MySQL中,每个字段定义都包含附加约束或者修饰符,这些可以用来增加对所输入数据的约束.今天我们来看一下MySQL的字段约束:NULL和NOT NULL修饰符.DEFAULT修饰符,AUTO_INCREMENT修饰符. NULL 和 NOT NULL 修饰符: 可以在每个字段后面都加上这NULL 或 NOT NULL 修饰符来指定该字段是否可以为空(NULL),还是说必须填上数据(NOT NULL).MySQL默认情况下指定字段为NULL修饰符,如果一个字段指定为NOT NULL,MySQL则

mysql中一个字段升序,另一个字段降序

mySql中,升序为asc,降序为desc.例如: 升序:select   *  from  表名 order by  表中的字段 asc(mysql中默认是升序排列,可不写) 降序:select   *  from  表名 order by  表中的字段 desc 若要进行同时一个升序,一个降序,则如下: order by 升序字段 asc,降序字段 desc. 原文地址:https://www.cnblogs.com/LYliangying/p/9576488.html

Mysql - 增量脚本中修改字段属性

在增量部署系统的时候, 经常需要提供增量修改的脚本, 如果是修改存储过程或者自定义函数, 那还是很好改的, 不用担心表功能收到影响. 如果是改字段呢? 首先不知道字段是不是已经在系统里面, 没有的话, 需要新增上去, 有的话, 需不需要修改? 其次, 脚本如果报错, 是否会重复执行一下脚本? 会不会导致别的问题呢? 看脚本里面执行结果报了好多错, 总觉得, 会被运维鄙视一遍. 做开发的, 真受不了别人鄙视自己的东西. 直接用sql去新增, 修改字段, 好像不太行, 经常会有问题. 正所谓, 条条

删除MySQL中冗余字段

去除表deny_mail中email,type重复的字段 设计deny_mail表时未考虑到唯一性,导致插入了许多重复数据,现编写数据库语句修正之. 步骤1:建立临时表tmp存储冗余键信息 1)create table tmp as select min(id),type,mail from deny_mail having count(type,email)>1  group by type,email; 步骤2:根据临时表删除冗余信息 2)delete from deny_mail wher