joomlaを1.0から1.5にアップグレードする際にいくつかの問題がありました(私は1.7まで進めなければなりません)。大きなMySQLテーブルの1文字を置き換える方法
とにかく、私のクライアントには古いjoomla 1.0がインストールされていて、そのサイトはクロージング語であり、サイトはハッジです。これは、私がČ、č、Ć、ć、Đ、đのような文字を扱わなければならないことを意味します。古いデータベースはlatin1_swedish_ciの照合順序にあり、移行スクリプトを使ってjoomla 1.5の新しいデータベースutf8_general_ciに転送しました。例えばので、いくつかの文字の混乱の中で(予想通り)結果
: CはE、Eになった - > C、等... UTF8照合に1.0データベースを変換
はオプションではありません、以来、これは何
update jos_content
set introtext = replace(introtext, 'È', 'Č');
が取得することです:それは...だから
。©など、C、C、DJ、の最初の外観上のコンテンツの残りの部分をカットし、私がやったことは、このクエリですjoomlaコンテンツテーブルとすべてのイントロテキストで、ÈをČに置き換えます。
私は同様のタイトルのためにこれをやったが、私はフルテキストでそれを実行しようとするとき、私はこのエラーを取得する:
SOError
SQL query:
UPDATE jos_content SET FULLTEXT = REPLACE(introtext, 'È', 'Č') ;
MySQL said:
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'fulltext = replace(introtext, 'È', 'Č')' at line 2
、これは全文であるので、これは(メモリの問題のいくつかの種類であります結局のところ)、私はちょうど何か間違っている。また、すべての文字を置き換えるより良い方法があれば、これは私がMySQLの "unreadable"ドキュメントから分かったことです。
はまた、コピーエラーに注意してください。ありがとうございました、LOL –