我想使用触发器删除数据库。原因是我有一个包含客户端详细信息的表,在创建客户端时,为客户端创建了一个数据库,并且所有数据都保存在他们的数据库中。因此删除客户端会留下孤立的数据库。客户端ID字段(guid)是数据库名称。任何帮助都将不胜感激。
到目前为止,这是我尝试过的:
CREATE TRIGGER DeletedClientDB
ON systemclients
FOR DELETE
AS
DECLARE @db VARCHAR(50);
SET @db = (SELECT deleted.SystemClientID FROM deleted)
DROP DATABASE @db
GO
但无法使语法正确。
答案 0 :(得分:2)
更新
在阅读Martin Smith的评论后,我认为最好完全改变我的答案。我保留了之前的答案,以便评论不会失去背景。
结合marc_s评论和我自己的评论,我建议只需将已删除的ID插入另一个表中,让预定的作业从那里读取数据并删除数据库。
试试这个:
<script>
var form = document.getElementById("form");
function newinput(){
var input = document.createElement("input");
input.type = "text";
form.appendChild(input);
}
function deleteinput(){
form.removeChild();
}
</script>
请注意,删除客户端表中记录的用户需要删除db权限。
击>