我得到了这张桌子:
APPLICATION TEST DESCRIPTION FICHIERCONF FICHIERXML FICHIERPROXY PORTAIL PERIODEMAINTENANCE NOMDNS TPSWARN TPSCRIT TYPEMAJ TYPERAPPORT CONTREMESURE TPSCONTREMESURE AUTH_URL APP_URL_ENC
cerbere Application-Ping test cete-config-cerbere cerbere.xml config-no-proxy.xml 0 cerbere.application.i2 0 0 1 Nagios 1 30 NULL NULL
cerbere Application-Ping2 test cete-config-cerbere cerbere.xml config-no-proxy.xml 0 cerbere.application.i2 0 0 1 Nagios 1 30 NULL NULL
对于1个单行我想在每次用另一个文本看到的时候改变'cerbere',在所有列中。
例如,我说:在'lidia'的第一行改变'cerbere'。我希望我的应用程序字段由'lidia'更改,fichierconf字段由'cete-config-lidia'更改,fichierxml由lidia.xml更改,nomdns由'lidia.application.i2'更改。
有办法做到这一点吗?
答案 0 :(得分:5)
您需要使用更新表语法。
update
TABLE_NAME
set
FIELD_NAME = replace(FIELD_NAME, 'find this string', 'replace found string with this string')
, ANOTHER_FIELD_NAME = REPLACE(ANOTHER_FIELD_NAME, 'foo', 'bar')
, AND_ANOTHER_ANOTHER_FIELD_NAME = REPLACE(...)
... /*as much columns as you like*/
;
你可以为每一列做这个,虽然可能还有一个更好的解决方案,这个快速而肮脏的黑客应该让你开始。