我正在使用PostgresSQL和pgadmin。 我需要在字符串类型的所有字段以及数据库中的所有表中替换多个字符。替换数据库中所有表中的字符Postgres
回答
请谨慎使用 - 根据需要进行调整,并确保在复制结果并执行之前查看每个生成的查询(是 - 这会生成查询的结果集) - 因为这可能包括将尝试修改视图,计算字段,系统表等。
我是一个T-SQL'er - 但我相信下面应该在PostgresSQL中有效。
SELECT 'UPDATE ' || TABLE_SCHEMA || '.' || TABLE_NAME ||
' SET ' || COLUMN_NAME || ' = REPLACE(' ||
COLUMN_NAME || ', ''FROM'', ''TO'')'
FROM INFORMATION_SCHEMA.COLUMNS
WHERE DATA_TYPE LIKE '%char%'
有关更多信息,可提供有关如何调整这个查询,看看INFORMATION_SCHEMA.COLUMNS想法。
您可能想要自己排除信息模式表 – Bohemian 2011-06-02 07:06:19
@Bohemian - +1。事实上 - 和其他各种各样的'n'bobs - 我不是一个硬核Postgreser(?!) - 查询是一个起点,从复习输出而不是盲目执行会有很多好处! – 2011-06-02 07:08:16
这将列出数据库中的“性格”的所有列:
SELECT t.tablename, a.attname AS column_name
FROM pg_attribute a
JOIN pg_class c ON a.attrelid = c.oid
JOIN pg_tables t ON t.tablename = c.relname
JOIN pg_type on pg_type.oid = a.atttypid
WHERE t.schemaname not in ('information_schema', 'pg_catalog')
and pg_type.typname in ('varchar', 'text', 'char')
order by 1,2;
然后必须要经过,并做了更新。
非常感谢。 但是,我呢? 我没有经验与SQL – 2011-06-02 10:44:55
- 1. 替换数据库列中所有行的特定字符
- 2. 替换数据库中的所有字符串实例?
- 3. Postgres替换字符串中的字符
- 4. 查询替换数据库所有表中的术语
- 5. 搜索并替换所有数据库对象中的字符串oracle数据库中的源代码
- 6. 替换字符串中的所有字符不同的字符
- 7. 替换所有子字符串中
- 8. 替换字符串中的所有非字母表
- 9. 在Swift中替换字符串中的所有字符
- 10. 替换字符串中的所有中间字符C++
- 11. 替换数字中的所有点
- 12. 替换矩阵中的所有数字
- 13. 截断postgres数据库中的所有表
- 14. 转换列表中的所有数据帧行的字符串
- 15. 替换数据帧中的字符串
- 16. 替换所有表中的特殊字符
- 17. 查找MySQL数据库表列中的所有字符?
- 18. 使用PHP替换字符串中的所有特殊字符
- 19. 如何替换字符串中的所有字符?
- 20. Javascript替换子字符串中的所有特殊字符
- 21. 替换字符串javascript ....中的所有特殊字符?
- 22. 用数据库中所有表名中的下划线替换空格
- 23. 删除/替换SQL数据库中的所有图像
- 24. 替换报告和所有子报表的数据库连接
- 25. 字符串替换数组中的所有项目PHP
- 26. 如何搜索和替换sql数据库中所有表中所有列的所有列中的一部分字符串
- 27. Adapt替换所有表中的所有字符串以使用文本
- 28. 如何在数据库中的所有varchar和nvarchar字段之间转换换行符(用\ n替换\ r \ n)
- 29. 将MSSQL中的所有非数字字符替换为空字符串
- 30. Chart.js替换所有数据
欢迎使用堆栈,请阅读http://stackoverflow.com/faq,尝试使用其他信息而不是语句创建问题。 – 2011-06-02 06:57:22