4

データベースで指定された最後の主キーを返すことは可能ですか?

これは、私がデータベースに接続して何かを追加する方法の一部ですが、さらに詳しい情報が必要な場合はお問い合わせください。

public partial class MainWindow : Window
{

System.Data.SqlClient.SqlConnection con;
System.Data.SqlClient.SqlDataAdapter da;

DataSet sessions;

主要

public MainWindow()
{
    InitializeComponent();
}

private void button1_Click(object sender, RoutedEventArgs e)
{
    con = new System.Data.SqlClient.SqlConnection();

    sessions = new DataSet();

    con.ConnectionString = "Data Source=.\\SQLEXPRESS;AttachDbFilename=C:\\Users\\md\\PokerDataBase.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True";

    con.Open();

    string sql = "SELECT * From Sessions";
    da = new System.Data.SqlClient.SqlDataAdapter(sql, con);
    da.Fill(sessions, "Sessions");

    con.Close();

    System.Data.SqlClient.SqlCommandBuilder cb;
    cb = new System.Data.SqlClient.SqlCommandBuilder(da);

    DataTable dt = sessions.Tables["Sessions"];


    DataRow table = sessions.Tables["Sessions"].Rows[position];
    table[0] = "Some Data";
    table[1] = "Some Data";
    table[2] = "Some Data";
    table[3] = 2;
    table[4] = 3;
    sessions.Tables["Sessions"].Rows[2].Delete();
    sessions.Tables["Sessions"].Rows.InsertAt(table, 2);

    da.Update(sessions, "Sessions");
}
}

ご覧いただきありがとうございます。

4

2 に答える 2

4

最後に挿入された主キーの値を求めていると思いますか? それからSCOPE_IDENTYあなたの友達です。詳細については、こちらMSDNを参照してください。

于 2012-08-02T14:25:15.913 に答える
0

テーブルから最後の主キーを取得し、挿入ごとに自動的にインクリメントする場合は、その最大値を求めることができます。データベースから取得する場合は、スコープ ID を使用できます。

于 2012-08-02T14:38:05.897 に答える