Я использую набор данных для извлечения некоторой информации из базы данных, например:
protected DataSet getInfo() //getting the user info
{
string id = Request.QueryString["User"];
SqlCommand cmd = new SqlCommand("SELECT * FROM copy WHERE id=@id", conn());
cmd.Parameters.AddWithValue("@id", id);
DataSet ds = new DataSet();
SqlDataAdapter da = new SqlDataAdapter(cmd);
da.Fill(ds);
return ds;
}
cvPage.InnerHtml = getInfo().Tables[0].Rows[0]["cv"].ToString();
clPage.InnerHtml = getInfo().Tables[0].Rows[0]["cl"].ToString();
bioPage.InnerHtml = getInfo().Tables[0].Rows[0]["bio"].ToString();
и работает нормально, пока в строке запроса не будет числа, поэтому если:
QueryString["User"] = "111111"
Я получу неправильную синтаксическую ошибку:
Incorrect syntax near '111111'.
но если цифр нет, все будет хорошо.
моя база данных содержит четыре столбца:
id | varchar
cv | nvarchar
cl | nvarchar
bio | nvarchar
Я использую asp.net 4.0.
в чем проблема?
спасибо