原来是MyAdapter1.InsertCommand.Parameters.Add("@pContent", SqlDbType.NText,16,"Content");虽然只插入16位,但正常,后来改为MyAdapter1.InsertCommand.Parameters.Add("@pContent", SqlDbType.NText);却提示未提供@pContent这个参数
源代码SqlDataAdapter MyAdapter1 = new SqlDataAdapter();MyAdapter1.InsertCommand = new SqlCommand("Insert_1", mConnection1);
MyAdapter1.InsertCommand.CommandType = CommandType.StoredProcedure;MyAdapter1.InsertCommand.Parameters.Add("@pContent", SqlDbType.NText);MyAdapter1.Update (ds_type,ds_type.Tables[0].TableName);

解决方案 »

  1.   

    似乎InsertCommand 都要提供后面那个参数,比如msdn的例子:
      // Create the InsertCommand.  cmd = new SqlCommand("INSERT INTO Customers (CustomerID, CompanyName) " +
                           "VALUES (@CustomerID, @CompanyName)", conn);  cmd.Parameters.Add("@CustomerID", SqlDbType.NChar, 5, "CustomerID");
      cmd.Parameters.Add("@CompanyName", SqlDbType.NVarChar, 40, "CompanyName");  da.InsertCommand = cmd;但是这里的重载无法提供类似:
    cmd.Parameters.Add("@CustomerID", SqlDbType.NChar, "CustomerID");
    的情况阿