我有以下问题:
我编写了一个win服务程序,将数据从一个源(OPC)传输到SQL数据库。在数据库中,我创建了3个存储过程(所有数据将在3个表中分离)。
服务启动后,一个SP将丢失--不知何故被删除,然后我得到“无法找到存储过程”。
如果我在服务运行期间创建这个SP --一切正常,但是在重新启动之后,它将再次被删除。
SP的所有三个调用都是相同的:
using (SqlConnection myConnection = new SqlConnection(SQL_CONNSTRING))
{
myConnection.Open();
SqlCommand myCommand = new SqlCommand("dbo.SP_name", myConnection);
myCommand.CommandType = CommandType.StoredProcedure;
myCommand.Parameters.Add("@Line", SqlDbType.Int, 1).Value = line;
object idr = myCommand.ExecuteScalar();
myConnection.Close();
}SP删除大约发生在ExecuteScalar()上。
有人能解释一下为什么会发生这种事吗?我该怎么避免呢?
我搜索了一些关于它的东西,但是搜索"SP找不到“只会给我带来SP没有出现的情况。我的将被删除,那为什么找不到。
upd:类似的情况描述,w/o解决方案:http://www.sql-questions.com/microsoft/SQL-Server-Reporting-Services/31612416/stored-procedure-getting-deleted.aspx
UPD2:解决了
我的错- SP从另一个SP中被删除了。
Trace帮助我找到了它发生的那一刻,这要归功于dash --在问题下面阅读评论,以及它发生的SP。
不知何故,第二个SP包含了用于创建我所需的SP的第一行脚本。
因为这第二个SP被称为非常罕见,但肯定一旦开始-一切似乎都好后,娱乐。
很抱歉有这么愚蠢的问题,感谢所有试图帮助我的人!
发布于 2012-02-01 09:58:11
H 210f 211https://stackoverflow.com/questions/9092919
复制相似问题