前提:各表中没有数据
打开plsql执行如下语句
begin
for temp in (select table_name from user_tables where substr(table_name,0,1) like '%X%') loop
begin
execute immediate 'alter table '|| temp.table_name || ' modify (a date)';
exception
when others then
dbms_output.put_line(temp.table_name); --输出有问题的表名,比如该表没有该字段
end;
end loop;
end;