Mysql中(增加、删除字段,修改字段名、字段类型、注释,调整字段顺序等)常用操作
1、增加一个字段
//增加一个字段,默认(不)为空 alter table user add COLUMN new1 VARCHAR(20) DEFAULT (NOT) NULL;
2、批量增加字段
方法一:使用事务
bagin; //事务开始 alter table tbname add field1 int(11); alter table tbname add field2 varchar(10) ; alter table tbname add field3 decimal(10,2) ; alter table tbname add field2 varchar(10) ; commit; //提交事务,事务结束
事务(transaction)是由一系列操作序列构成的程序执行单元,这些操作要么都做,要么都不做,是一个不可分割的工作单位。
方法一:mysql 批量为表添加多个字段--->格式:
alter table 表名 add (字段1 类型(长度),字段2 类型(长度),字段3 类型(长度))
alter table tbname add (field1 int(11),field2 varchar(10), field3 int);
3、删除一个字段
//删除一个字段
alter table user DROP COLUMN new2;
4、修改一个字段
//修改一个字段的类型 alter table user MODIFY new1 VARCHAR(10); //修改一个字段的名称,此时一定要重新指定该字段的类型 alter table user CHANGE new1 new4 int;
5、批量修改字段名称
格式:
alter table 表 change 修改前字段名 修改后字段名称 int(11) not null,
change 修改前字段名 修改后字段名称 int(11) not null,
change 修改前字段名 修改后字段名称 varchar(10) not null;
6、添加注释
// 可以为表添加注释 ALTER TABLE `table_name` COMMENT'注释'; // 为字段添加注释,同样适用于修改 ALTER TABLE `table_name` CHANGE `column_name` `column_name` type(longth) UNSIGNED NULL DEFAULT NULL COMMENT '注释';
7、调整字段顺序
格式:alter table 表名change 字段名 新字段名 字段类型 默认值 after 字段名(跳到哪个字段之后)
alter table tbname change getPrice getPrice varchar(50) default null AFTER getNum;
8、判断表tablename中的字段field是否存在
IF COL_LENGTH('tablename', 'field') IS NOT NULL
PRINT '存在'
ELSE
PRINT '不存在'
示例:
if COL_LENGTH('tbname', 'myfield') is null Begin Alter table tbname add column myfield decimal(18,2); End Go
方法一:
select * from syscolumns where id=object_id('表名') and name='列名'
说明:存在则返回此列的一条说明记录,不存在返回空;
方法二:
select count(*)from sysobjects a,syscolumns b where a.id=b.id and b.name='flag1' and a.type='u' and a.name='T_Pro_ProductClass'
说明:存在返回1,不存在则返回0
9、在创建存储过程、函数、视图前判断是否存在,存在先删除再创建:
drop procedure/function/view if exists pro..name/fun..name/viewname; Create procedure/function/view......