を使用してSQLで最後に挿入されたレコードのIDを取得する方法ここで私は最後の行IDが必要私のコードはASP.net
protected void btnSubmit_Click(object sender, EventArgs e)
{
if (!string.IsNullOrWhiteSpace(Request.QueryString["id"]))
{
string clientId = Context.User.Identity.GetUserId();
if (clientId != null)
{
int id = Convert.ToInt32(Request.QueryString["id"]);
customize1 customize = new customize1
{
client_id = clientId,
product_id = id,
paper_type = Labelpt.Text,
corner = Labelpc.Text,
shipping_type = Labelsp.Text,
text = TextBox3.Text,
amount = Convert.ToInt32(lbResult.Text)
};
customizeModel model = new customizeModel();
Label9.Text = model.Insertcustomize(customize);
con.Open();
SqlCommand cmd2 = con.CreateCommand();
cmd2.CommandType = CommandType.Text;
cmd2.CommandText = "select top 1 * from customize1 where client_id='"+clientId+"' order by Id desc ";
cmd2.ExecuteNonQuery();
DataTable dt2 = new DataTable();
SqlDataAdapter da2 = new SqlDataAdapter(cmd2);
da2.Fill(dt2);
foreach (DataRow dr2 in dt2.Rows)
{
customizeid = dr2["Id"].ToString();
}
con.Close();
}
}
}
ですが、私のクエリは、任意のvalue.Iもで私のクエリをチェックし生成しません。 SSMSとクエリは正常に動作していますが、ASPではデータを生成していないため、レコードを挿入するためにクラスとエンティティの関係の概念を使用しました。 解決方法
あなたのコードは*データベースに*何かを挿入されていない、どのようなIDを探してるんですか? – David
完全なクエリを更新しました。確認してください。 – Mickey
まだデータベースに何も挿入していません。生成されたIDを取得するには、そのIDを生成するためにレコード*を挿入する必要があります。あなたがしようとしていることや問題が何であるかは、はっきりしていません。 – David