簡體   English   中英

如果列在mysql中是某個值,如何禁止更新表?

[英]How to dissallow updates to a table if a column is a certain value in mysql?

如果希望將PLayername更新為“ Error”,我不希望任何人能夠將其Name更新為某些值並取消更新,並且需要在數據庫級別阻止它。

我以為可以用觸發器簡單地做到這一點,所以我嘗試在這里制作一個。

delimiter $$
create trigger errorcheck before insert on player_data
for each row
begin
if new.PlayerName = 'Error' then
signal sqlstate '45000';
end if;
end;$$

但是服務器響應此錯誤:

1064-您的SQL語法有誤; 檢查與您的MySQL服務器版本相對應的手冊,以在第7行的'$$'附近使用正確的語法

感謝您的幫助/建議

delimiter $$
create trigger errorcheck before insert on player_data
for each row
begin
if new.PlayerName = 'Error' then
signal sqlstate '45000';
end if;
end;

我不明白為什么,但是最后刪除$$分隔符可以保存觸發器,並且我對其進行了測試,並且可以按我希望的方式工作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM