我正在使用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. 替換數據庫列中所有行的特定字符
- 4. Postgres替換字符串中的字符
- 5. 替換字符串中的所有非字母數字字符
- 6. 在數據庫文本字段中替換所有出現的子字符串
- 7. SQL替換數據庫中的所有值,無論列和表
- 8. 查詢替換數據庫所有表中的術語
- 9. 將數據庫中字符串中的所有字符替換爲其他字符?
- 10. 搜索並替換所有數據庫對象中的字符串oracle數據庫中的源代碼
- 11. 替換字符串中的所有字符不同的字符
- 12. 替換所有子字符串中
- 13. Java的替換所有的字符串,替換所有數字低於3
- 14. 替換字符串中的所有非字母表
- 15. 替換字符串中的所有中間字符C++
- 16. 在Swift中替換字符串中的所有字符
- 17. 如何在所有行中的所有字段中的所有表中替換MySQL數據庫中的字符串?
- 18. 替換數字中的所有點
- 19. 替換矩陣中的所有數字
- 20. Postgres sql列出數據庫中的所有表格
- 21. 截斷postgres數據庫中的所有表
- 22. 用字符串替換數據框中的所有數字實例R
- 23. 轉換列表中的所有數據幀行的字符串
- 24. 根據表中的行替換字符串中的字符sql
- 25. 替換數據幀中的字符串
- 26. 使用正則表達式替換Java中的字符串並替換所有
- 27. 立即替換所有表中的SQL字符串
- 28. phpmyadmin,如何替換所有表中的字符?
- 29. 替換所有表中的特殊字符
- 30. 查找MySQL數據庫表列中的所有字符?
歡迎使用堆棧,請閱讀http://stackoverflow.com/faq,嘗試使用其他信息而不是語句創建問題。 – 2011-06-02 06:57:22