大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
set, 不能加,只能先取出来,加好以后再update回去.set 内部是一个64位的整数,用位来表示的,所以就只能最大64
创新互联-专业网站定制、快速模板网站建设、高性价比亭湖网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式亭湖网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖亭湖地区。费用合理售后完善,十多年实体公司更值得信赖。
alter table teacher_tbl drop column emp_class;//删除字段名
alter table teacher_tbl change emp_id tea_id varchar(10) ,
change emp_name tea_name varchar(10),
change emp_sex tea_sex char(4),
change emp_phone tea_phone int(40);//修改字段名称
ALTER TABLE:添加,修改,删除表的列,约束等表的定义。
查看列:desc 表名;
修改表名:alter table t_book rename to bbb;
添加列:alter table 表名 add column 列名 varchar(30);
删除列:alter table 表名 drop column 列名;
修改列名MySQL: alter table bbb change nnnnn hh int;
修改列名SQLServer:exec sp_rename't_student.name','nn','column';
修改列名Oracle:lter table bbb rename column nnnnn to hh int;
修改列属性:alter table t_book modify name varchar(22);
sp_rename:SQLServer 内置的存储过程,用与修改表的定义。
删除语句:delete from fatie where id not in(select t.id1 from ( (select max(a.id) id1 from fatie a group by a.name)as t));留下的是各组id号最大的,如果留的是最小的话换成min(a.id)就行了
如果没有加上一个中间表t,即这句话 select t.id from去掉直接写成delete from fatie where id not in(select max(id) a.id1 from fatie a group by a.name);mysql会提示错误:You can't specify target table 'fatie' for update in FROM clause (不能先select出同一表中的某些值,再update这个表(在同一语句中)。
参考资料
CSDN.CSDN[引用时间2018-1-9]
若是修改列属性的话,
alter
table
user
modify
column
id
int;
在这里指定id的新类型为int,其他的如自增,自然是删掉了。
或者使用
alter
table
user
change
id
id
int;
若是删除表中列的话,
alter
table
user
drop
id;
这就可以了。
第一:对的,mysql会报错无信息,不执行;
第二:mysql_insert_id返回最后插入值的ID 值
1、首先新建一张表结构。
2、select * from t_temp_test 查看下这张表已经建好在数据库里面了。
3、查看该t_temp_test表结构 sp_help t_temp_test,可以看到字段column_b 的默认值定义为空,默认属性是DF__t_temp_te__colum__19DA45DB。
4、修改表的默认值先要把表的默认属性删除了才能修改,删除表的默认属性。
5、删除之后再执行sp_help t_temp_test,这个时候默认值属性已经被删除了的。
6、然后再重新给字段新加上默认属性alter table t_temp_test add constraint DF__t_temp_te__colum__19DA45DB DEFAULT (('123')) for column_b。
7、执行完毕再查询表结构sp_help t_temp_test可以看到表的默认值已经被更改为字符串‘123’。