列の値file_path
は次のようなものです
~/uploaded/de-DE/56/57d8c7d9-dcfc-4208-9f4c-2bf369690bd5.jpeg
私はMySqlの初心者で、すべての行のこれらの値を次のように更新することはできません
~/uploaded/de-DE/56/
これはディレクトリのみです (ファイルではありません)。文字列からファイルの名前を削除したい。
ファイル名がすべての行にあることがわかっている場合は、次のようになりますか?
UPDATE table SET file_path = SUBSTR(file_path, 1, LENGTH(file_path) - LOCATE('/', REVERSE(file_path))+1) WHERE 1;
きれいではありませんが、うまくいくはずです。
MySQL に最後の発生を検索する機能があればもっと簡単ですが、私の知る限りではそうではありません。したがって、LENGTH - LOCATE REVERSE の呪文です。
(最初にテーブルをバックアップしてください:)
あなたがこのようなものを持っているなら
~/uploaded/de-DE/'.$folder.'
に変更します
~/uploaded/de-DE/'.$folder.'/
バックスラッシュを逃したと思います
mysql_query("update ".$table." set ".your cell."='".your data."' ");