如何批量修改mysql数据库表的字段类型

如何批量修改mysql数据库表的字段类型,第1张

mysql数据库字段内容批量更新:

利用sql中case

when结构可以根据不同的条件批量更新,举例如下:

update

order

set

display_order

=

case

id

when

1

then

'value'

when

2

then

'value'

when

3

then

'value'

end

where

id

in

(1,2,3)

这句sql的意思是,更新display_order

字段,如果id=1

则display_order

的值为3,如果id=2

display_order

的值为4,如果id=3

display_order

的值为5。

1。从视图all_tab_columns中查询待修改的表字段信息,拼装成标准语句

select 'alter table '||a.TABLE_NAME||' modify '||a.COLUMN_NAME||' VARCHAR2(n)' --n为修改的值

from all_tab_columns a

where a.DATA_TYPE='VARCHAR2' --指定字段类型

and a.TABLE_NAME=upper('tableA') --指定待修改的表名

and a.OWNER=upper('user_01') --指定待修改表所属的用户

2. 新开一个窗口,执行上述查询结果即可。

一个语句就能修改(如果是ACCESS的话选新建查询输入SQL语句):

UPDATE product SET addtime='2007-2-10' WHERE addtime='2007-1-23'

如果是微软的ACCESS或者SQL SERVER的话,好像不支持日期类型和串类型的字段转换,语句应该这样:

UPDATE product SET addtime=datevalue('2007-2-10') WHERE addtime=datevalue('2007-1-23')


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10065746.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-04
下一篇 2023-05-04

发表评论

登录后才能评论

评论列表(0条)

保存