文章目录
1. 概述
2. 过程
2.1 问题出现
2.2 刷新、事务提交尝试
2.3 检查SQL
2.4 验证是否导航栏的表信息没更新
3. 总结
4. 问题解决
1. 概述
目的:修改表空间中所有表的xxx字段的长度。
实现:通过SQL进行修改。
问题:导航栏 — 模式 — 表空间 — 表 — 右键查看表信息,字段长度没修改到。
工具:DM管理工具(达梦自带的数据库管理工具)。
2. 过程
2.1 问题出现
-- 通过SQL查出xx字段长度满足的要求的表,拼接出修改字段长度的SQL
SELECT 'ALTER TABLE ' || t.table_name || ' MODIFY xxx VARCHAR(1);' AS str
FROM user_tab_columns t
WHERE t.column_name='xxx' AND t.data_length > 1;
-- 执行拼接好的SQL,查看表属性,字段长度没改变。
2.2 刷新、事务提交尝试
刷新表、表空间、模式、连接都没有效果。 看来得出大招,重启工具;关闭工具提示事务未提交,难得是这个原因。 执行 COMMIT,还是不行(后面发现这个事务是查询语句的(╯︵╰))。
2.3 检查SQL
SQL没写对,陷入自我怀疑(我使用的是Oracle的SQL语句)。 只能看看达梦官方文档怎么说了。