私はストアドプロシージャを呼び出す関数を持っています。しかし、それはいくつかのことのように例外がスローされます:無効な列名「量」:CでのSqlException#
タイプの未処理の例外は、「System.Data.SqlClient.SqlException」 はのSystem.Data.dll
で発生しました追加情報。'quantity'という列名が無効です。
'location'列名が無効です。
列名 'quantity'が無効です。
列名 'quantity'が無効です。
列名 'quantity'が無効です。 ...
MSSMSでストアドプロシージャが正常に機能するため、この例外がスローされる理由を理解できません。
はここでストアドプロシージャを呼び出すための私のコードです:
public DataSet getDataTable_sp(string sp_name, SqlParameter[] p = null)
{
DataSet ds = new DataSet();
using (SqlConnection conn = new SqlConnection(Connstr))
{
SqlDataAdapter da = new SqlDataAdapter(sp_name,conn);
da.SelectCommand.CommandType = CommandType.StoredProcedure;
da.SelectCommand.CommandTimeout = 300;
if (p != null)
for (int i = 0; i < p.Count(); i++)
da.SelectCommand.Parameters.Add(p[i].ParameterName, p[i].SqlDbType, p[i].Size).Value = p[i].Value;
conn.Open();
da.Fill(ds); // this is the line that the exception is thrown
conn.Close();
}
return ds;
}
例外は明らかです: '無効な列名 'quantity'は、 'quantity'という名前の列がないことを意味します。間違ったデータベースに接続するか、最初にテーブルを作成する必要があります。 –
接続が適切かどうか確認してください – Vivekh