Statement.executeInsert () Возвращаемое значение - PullRequest
0 голосов
/ 22 мая 2018

Скажи, что у меня есть ProductVersion Table:

CREATE TABLE ProductVersion 
(
   Id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, 
   PrvVersionName NOT NULL
);

И у меня есть этот код для INSERT в этой таблице:

   SQLiteDatabase database = this.getWritableDatabase();
   String sql = "INSERT INTO ProductVersion (PrvVersionName) VALUES (?);";

   SQLiteStatement s = database.compileStatement(sql);
   s.bindString(1, data.getVersionName());

   long id = s.executeInsert();
   s.close();

Myвопрос, является ли значение, возвращаемое из s.executeInsert() таким же, как если бы я запросил, используя "SELECT last_insert_rowid();" после выполнения этого INSERT ?

Ответы [ 2 ]

0 голосов
/ 22 мая 2018

Документация для SQLiteStatement#executeInsert, кажется, подтверждает это:

Выполните этот оператор SQL и верните идентификатор строки, вставленной из-за этого вызова.Оператор SQL должен быть вставкой, чтобы это было полезным вызовом.

0 голосов
/ 22 мая 2018

executeInsert() вернет идентификатор вставленной строки

ОТ ДОКУМЕНТОВ

SQLiteStatement.executeInsert ()

Выполните этот оператор SQL и верните идентификатор строки, вставленной из-за этого вызова.Оператор SQL должен быть вставкой, чтобы это было полезным вызовом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...