4

これらの値で挿入されINSERT INTO SqlCommandた INSERT INTO の後に表示する必要がありますIDENT_CURRENT

SqlCommand sc = new SqlCommand("INSERT INTO kliplat (datum,text,castka,akce,subkey,priznak,rocnik) values (@datum,@text,@castka,@akce,@subkey,@priznak,@rocnik)", spojeni);
         spojeni.Open();

         sc.Parameters.AddWithValue("@subkey", vyber_id_kli);
         sc.Parameters.AddWithValue("@akce", vyberakce);
         sc.Parameters.AddWithValue("@priznak", vyberplat);
         sc.Parameters.AddWithValue("@datum", maskedTextBox1.Text);
         sc.Parameters.AddWithValue("@text", textBox1.Text);
         sc.Parameters.AddWithValue("@castka", textBox2.Text);
         sc.Parameters.AddWithValue("@rocnik", rocnik);

         sc.ExecuteReader();
         spojeni.Close();

この IDENT_CURRENT は次のとおりです。INTEGER IDENTITY PRIMARY KEY

今、私はこの問題を次のように扱っていました:

SqlCommand comm = new SqlCommand("SELECT IDENT_CURRENT ('mytable')", conn);
                 spojeni.Open();
                 int max = Convert.ToInt32(comm.ExecuteScalar());

                 spojeni.Close();

しかし、これを行うのは非常に危険であることがわかりました。

これを読んでくれてありがとう。

4

3 に答える 3