如何批量修改 varchar2(n byte) 为 varchar2(n char)?
2个回答
展开全部
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. 新开一个窗口,执行上述查询结果即可。
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. 新开一个窗口,执行上述查询结果即可。
推荐于2019-11-13 · 知道合伙人互联网行家
关注
展开全部
oracle数据库中修改字段类型属于ddl操作,修改方法如下:
ALTER TABLE 表名 RENAME COLUMN 字段名 varchar2(n byte)
TO 字段名 varchar2(n char);
比如:
ALTER TABLE emp RENAME COLUMN ename varchar2(100 byte)
TO ename varchar2(50 char);
ALTER TABLE 表名 RENAME COLUMN 字段名 varchar2(n byte)
TO 字段名 varchar2(n char);
比如:
ALTER TABLE emp RENAME COLUMN ename varchar2(100 byte)
TO ename varchar2(50 char);
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询