在 sp_UpdateStockItemAmount 上出现 inteccorect 语法错误
Posted
技术标签:
【中文标题】在 sp_UpdateStockItemAmount 上出现 inteccorect 语法错误【英文标题】:Getting an inteccorect Syntax error on sp_UpdateStockItemAmount 【发布时间】:2021-02-19 02:54:48 【问题描述】:我目前正在处理在删除订单中的项目期间运行两个 SQL 查询。一个用于从订单表中删除项目,另一个用于更新不同表上的库存。这是我写的:
public int DeleteItem(int stockItemId)
using (SqlConnection connection = new SqlConnection(connectionString))
using (SqlCommand command =
new SqlCommand("DELETE FROM DBO.OrderItems WHERE stockItemId=@stockItemId sp_UpdateStockItemAmount @Id, 1", //sp_SelectStockItems, @Id, 1
connection))
command.Parameters.AddWithValue("@stockItemId", stockItemId);
command.Parameters.AddWithValue("@Id", stockItemId);
connection.Open();
int result = -1;
try
result = command.ExecuteNonQuery();
catch (Exception error)
Console.WriteLine("Error: " + error.Message.ToString());
return result;
目前,当我尝试通过按下按钮执行此操作时遇到以下错误:
Exception thrown: 'System.Data.SqlClient.SqlException' in System.Data.dll
Error: Incorrect syntax near 'sp_UpdateStockItemAmount'.
sp_UpdateStockItemAmount 是我需要使用的存储过程,可以将 1 添加到 instock 列或删除 1 个库存。
目前我不太确定自己做错了什么。
【问题讨论】:
【参考方案1】:一行中有两条 SQL 指令,sp_UpdateStockItemAmount
未被识别为存储过程调用
添加exec
:
"DELETE FROM DBO.OrderItems WHERE stockItemId=@stockItemId; exec sp_UpdateStockItemAmount @Id, 1"
【讨论】:
以上是关于在 sp_UpdateStockItemAmount 上出现 inteccorect 语法错误的主要内容,如果未能解决你的问题,请参考以下文章
在 React 应用程序中在哪里转换数据 - 在 Express 中还是在前端使用 React?