好吧我知道我的數據庫沒有正常化,但在我的情況下,不可能規範化數據,因爲每個用戶具有不同的訪問級別和訪問權限,每次我修改某些內容我需要刪除行並插回,所以我去逗號分隔的值,這裏的問題是,如果我刪除一個特定的組,正則表達式不起作用,它會引發一個錯誤..使用PHP和錯誤這REGEX不能用於替換逗號分隔的id的mysql
FUNCTION database_name.REGEXP_REPLACE does not exist
表結構
allowed_group_ids
+----------------+
12345,34345,55454
我的曲ERY,比方說$delete_id
爲12345
或者說55454
,我一次只通過一個ID和ID的之間有沒有空間,這是一個文本字段
UPDATE tbl_scripts SET allowed_group_ids = TRIM(BOTH ','
FROM REGEXP_REPLACE(allowed_group_ids, '(,(\s)?)?$detele_id', ''))
WHERE system_id = {$_SESSION['system_id']}
那麼在這裏是怎麼回事?
W.r.t. php錯誤,你應該調用REGEXP_REPLACE而不使用數據庫名稱,或者查看你的函數是否具有不同的名稱。 –
@ Mr.Radical你在哪裏可以看到db名字? –
你的錯誤是「database_name.REGEXP_REPLACE」。你有點database_name之前。我認爲你的函數被稱爲「REGEXP_REPLACE」而不是「database_name.REGEXP_REPLACE」。 –