3
我在GRANT和變量一起在MySql中有一些麻煩。如何在變量中使用GRANT?
SET @username := 'user123', @pass := 'pass123';
GRANT USAGE ON *.* TO @[email protected]'%' IDENTIFIED BY @pass;
GRANT INSERT (header1, header2, headern) ON `data` TO @[email protected]'%';
GRANT SELECT (header1, header2) ON `data2` TO @[email protected]'%';
我希望把用戶名和密碼的變量在腳本的開頭,再後來在GRANT使用它們
所以不是這樣的:
GRANT USAGE ON *.* TO 'user123'@'%' IDENTIFIED BY 'pass123';
我會喜歡使用這樣的東西:
GRANT USAGE ON *.* TO @[email protected]'%' IDENTIFIED BY pass;
我真的很感激,如果有人能告訴我適當的聲明秒。 謝謝你的聲音!
應該不是被'IDENTIFIED BY @ pass',你錯過了'@' – asifsid88 2013-02-12 10:37:31
謝謝,我糾正它,但這不是解決的主要問題。 :( – Pho3nixHun 2013-02-12 10:40:10
變量只能用於SQL允許表達式的地方,GRANT語句中沒有表達式,你可以用動態SQL做。 – Barmar 2013-02-12 10:53:35