C#sql更新查询

C#sql更新查询,c#,sql-server,C#,Sql Server,我需要使用它来更新sql表中的注释列 using (SqlConnection conn = new SqlConnection()) { SqlConnection connorder = new SqlConnection("Data Source=P4\\WORK;Initial Catalog=Agenda_X1;Persist Security Info=True;User ID=sa;Password=xxx"); connorder.Open(); str

我需要使用它来更新sql表中的
注释列

using (SqlConnection conn = new SqlConnection())
{
    SqlConnection connorder = new SqlConnection("Data Source=P4\\WORK;Initial Catalog=Agenda_X1;Persist Security Info=True;User ID=sa;Password=xxx");
    connorder.Open();

    string ordernrsql = lbOrderNr.Text;
    string newstate = lbNewState.Text;

    SqlCommand commandorder = new SqlCommand("UPDATE [Agenda_X1].[dbo].[Order] SET Note = @lbNewState WHERE OrderNr= @ordernumber", connorder);
    commandorder.Parameters.Add("@ordernumber", SqlDbType.NVarChar).Value = ordernrsql;
    commandorder.Parameters.Add("@lbNewState", SqlDbType.NVarChar).Value = newstate;
    connorder.Close();
}
在VS FR中,SQL Commnad可视化工具如下所示

`DECLARE @ordernumber NVarChar;
SET @ordernumber = 'OPT1710420';
DECLARE @lbNewState NVarChar;
SET @lbNewState = 'Order changed 2017.06.02';

UPDATE [SAgenda_X1].[dbo].[Objednavky_ObjednavkaPrijata] SET Note= @lbNewState WHERE OrderNr = @ordernumber
但在sql中,这不起作用,应该是这样的:

`DECLARE @ordernumber NVarChar (max);
    SET @ordernumber = 'OPT1710420';
    DECLARE @lbNewState NVarChar (max);
    SET @lbNewState = 'Order changed 2017.06.02';

    UPDATE [SAgenda_X1].[dbo].[Objednavky_ObjednavkaPrijata] SET Note= @lbNewState WHERE OrderNr = @ordernumber
我还想问您,我应该怎么做才能使最终的sql查询已经使用
NVarChar(max)

我已经试过了

commandorder.Parameters.Add("@ordernumber", SqlDbType.NVarChar, -1).Value = ordernrsql;
commandorder.Parameters.Add("@lbNewState", SqlDbType.NVarChar, -1).Value = newstate;

但是sql仍然没有改变。

只需执行命令,如
commandorder.ExecuteNonQuery()


在一个查询中,您有
SAgenda_X1
,在另一个查询中,您有
Agenda_X1
作为数据库名称。您是否尝试过仅使用模式和表名,如
UPDATE[dbo].[Order]SET Note
。。。
using (SqlConnection conn = new SqlConnection())
{
    SqlConnection connorder = new SqlConnection("Data Source=P4\\WORK;Initial Catalog=Agenda_X1;Persist Security Info=True;User ID=sa;Password=xxx");
    connorder.Open();

    string ordernrsql = lbOrderNr.Text;
    string newstate = lbNewState.Text;

    SqlCommand commandorder = new SqlCommand("UPDATE [Agenda_X1].[dbo].[Order] SET Note = @lbNewState WHERE OrderNr= @ordernumber", connorder);
    commandorder.Parameters.Add("@ordernumber", SqlDbType.NVarChar).Value = ordernrsql;
    commandorder.Parameters.Add("@lbNewState", SqlDbType.NVarChar).Value = newstate;

    commandorder.ExecuteNonQuery();

    connorder.Close();
}