1

asp.netからSQLテーブルに行を追加しようとしています

パラメータ sqlServerは次のとおりです。

[id] smallint IDENTITY (1, 1) NOT NULL ,
[purchaseNum] int NULL,
[purchaseDate] DateTime  NULL,
[prodId] smallint NULL,
[amount] int NULL,
[price] decimal NULL,
[paidStatus] char NULL,
Primary key (id)

)

asp.net のコードは次のとおりです。

  private String BuildInsertCommand(Sale sale)
{
    String command;


    StringBuilder sb = new StringBuilder();
    // use a string builder to create the dynamic string
    sb.AppendFormat("Values('{0}', '{1}' ,'{2}', '{3}', '{4}','{5}', '{6}')", Convert.ToInt16(sale.ProductId), Convert.ToDateTime(sale.PurchaseDate), Convert.ToInt16(sale.ProductId), Convert.ToDecimal(sale.AmountOfItems),sale.TotalPrice, Convert.ToChar(sale.PaidStatus));
    String prefix = "INSERT INTO sale " + "(purchaseNum, purchaseDate,prodId, amount, price,paidStatus) ";

    command = prefix + sb.ToString();

    return command;
}

エラーメッセージが表示される理由がわかりません。

ありがとう

4

1 に答える 1

0

7 つのプレースホルダーを定義しました

{0}', '{1}' ,'{2}', '{3}', '{4}','{5}', '{6}'

そしてあなたは6つの引数を渡しました

于 2013-01-04T00:14:24.790 に答える