2015年5月22日 星期五

ORACLE在C# 執行多行指令的方法

我要刪除一個資料,順便刪除相關的資料表中屬於此資料SID的資料
但是一直執行SQL也很煩,找了可以一次執行多行的寫法
重點是要用分號隔開

StringBuilder sb = new StringBuilder();
sb.Append(@"BEGIN
delete from table1 where SID=:SID ;
delete from table2 where SID=:SID ;
delete from table3 where SID=:SID ;
delete from table4 where SID=:SID ;
delete from table5 where SID=:SID ;
END;
");
try
{
    cnn.Open();
    using (OracleCommand cmm = new OracleCommand(sb.ToString(), cnnTSTM))
    {
        cmm.Parameters.Clear();
        cmm.Parameters.Add(new OracleParameter("SID", SID));
        cmm.ExecuteNonQuery();
    }
    cnn.Close();
}

沒有留言:

張貼留言