我正在尝试创建一个触发器,SqlCommand
但我收到了错误:
关键字“触发器”附近的语法不正确
当我在 SQL Server 中复制相同的查询时,它正在成功执行。
下面是 SQL 命令的样子。
command.CommandText = "CREATE TRIGGER tr_Korisnik" + korisnik.KorisnikID + "_FakturaStavka_ForInsert " +
"on Korisnik"+korisnik.KorisnikID+"_FakturaStavka " +
"FOR INSERT " +
"AS " +
"BEGIN " +
"DECLARE @ID int " +
"DECLARE @FakturaID int " +
"DECLARE @StavkaBr int " +
"SET @ID = (SELECT DokumentID from inserted) " +
"SET @FakturaID = (SELECT FakturaID from inserted) " +
"UPDATE Korisnik"+korisnik.KorisnikID+"_Fakturi SET BrStavki = BrStavki+1 WHERE DokumentID = @FakturaID " +
"SET @StavkaBr = (SELECT Korisnik"+korisnik.KorisnikID+"_Fakturi.BrStavki FROM Korisnik"+korisnik.KorisnikID+"_Fakturi WHERE DokumentID = @FakturaID) " +
"UPDATE Korisnik"+korisnik.KorisnikID+"_FakturaStavka SET StavkaBroj = @StavkaBr WHERE DokumentID = @ID END";
command.ExecuteNonQuery();
此外,在此之上,我有 SQLCommandsCREATE TABLE
并且它们可以正常工作。
USE [databasename]
我之前试过CREATE TRIGGER
,还是不行。我删除了连接+"korisnik.KorisnikID"
并取了干净的名字,但仍然无法执行它。