【发布时间】:2015-08-25 11:33:37
【问题描述】:
所以我有一个这样的查询:
cmd.CommandText = @"INSERT INTO [dbo].[bill](bruto, waiterid, reversalid, number, ddate, tableid, total, printed, posplace, guestid, numberofguests, closedtime, methodofpaymentid, realdate) " +
"VALUES (@bruto, @waiterid, 0, 0, @ddate, 1, @total, 'True', 0, 0, 0, @closedtime, @methodofpaymentid, @realtime) " +
"SELECT id";
//+ lines of cmd.Parameter.AddWithValue(...,...);
但是一旦我尝试使用以下命令执行查询:
int newId = Convert.ToInt64(cmd.ExecuteScalar());
我得到那个 id 没有被识别(即使它确实存在)。
如果我尝试将 SELECT 更改为 [dbo].[bill].id,则会收到错误消息
无法绑定多部分标识符“dbo.bill.id”。
我也尝试将其设为SELECT MAX(id)(因为这是最接近标量的东西),但我再次收到未识别的错误。
感谢阅读。
【问题讨论】:
-
请把
SELECT的声明全部发到Q里 -
@tinka 就是这样,我只需要 ID,如果您的意思是我对该表的所有 SELECT 查询,那将超过 100 条语句。
标签: c# sql sql-server