sql >> データベース >  >> RDS >> Oracle

ExecuteScalarを使用して、挿入された行から生成されたIDを取得するにはどうすればよいですか?

    Oracleを使用している場合は、ExecuteNonQueryとResultParameterを使用する必要があります。これをクエリとして記述する方法はありません。

    using (OracleCommand cmd = con.CreateCommand()) {
        cmd.CommandText = "insert into foo values('foo','bar') returning id into :myOutputParameter";
        cmd.Parameters.Add(new OracleParameter("myOutputParameter", OracleDbType.Decimal), ParameterDirection.ReturnValue);
        cmd.ExecuteNonQuery(); // an INSERT is always a Non Query
        return Convert.ToDecimal(cmd.Parameters["myOutputParameter"].Value);
    }
    


    1. OracleのINとORのどちらが速いですか?

    2. MySqlエラー!サーバーはPIDファイルを更新せずに終了します

    3. PHP:年齢から誕生日を計算する

    4. %ワイルドカードを使用したRails SQLクエリはSQLiteで機能しますが、PostgreSQLでは機能しませんか?