RETURNING
От: Odi$$ey Россия http://malgarr.blogspot.com/
Дата: 29.04.08 17:18
Оценка:
А почему запись вставляется, в БД ID наращивается, но после выполнения msg.ID все равно 0?

    public class MessageData
    {
        [MapField("ID")]
        public Int64 ID;

        [MapField("CALL_ID")]
        public string CallID;
    }

    OracleDataProvider p = new OracleDataProvider();
    p.ParameterPrefix = null;
    DbManager.AddDataProvider(p);
    DbManager.AddConnectionString("Oracle", "Data Source=alias;User ID=user;Password=password;");

    MessageData msg = new MessageData();
    msg.CallID = "lsakxnsaljknsalk";

    using(DbManager db = new DbManager())
    {
        db
            .SetCommand(@"
                      INSERT INTO SUP_AUDIO_MESSAGE
                            ( ID, CALL_ID ) 
                      VALUES 
                            ( SUP_AUDIO_SEQ.NEXTVAL, :CALL_ID )
                      RETURNING ID INTO :ID", 
                  db.CreateParameters(msg))
      .ExecuteNonQuery();
    }
... << RSDN@Home 1.2.0 alpha 4 rev. 1084>>
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.