|
SQLite - как получить id-шник только что созданный записи ???
|
|||
---|---|---|---|
#18+
Подскажите пожалуйста: Как в SQLite получить id-шник только что созданный записи ??? Например в MS SQL-е это делается так: Код: plaintext 1. 2.
... |
|||
:
Нравится:
Не нравится:
|
|||
14.07.2009, 11:23 |
|
SQLite - как получить id-шник только что созданный записи ???
|
|||
---|---|---|---|
#18+
potkinПодскажите пожалуйста: Как в SQLite получить id-шник только что созданный записи ??? Например в MS SQL-е это делается так: Код: plaintext 1. 2.
А заглянуть в документацию религия не позволяет? http://www.sqlite.org/lang_corefunc.html ... |
|||
:
Нравится:
Не нравится:
|
|||
14.07.2009, 11:58 |
|
SQLite - как получить id-шник только что созданный записи ???
|
|||
---|---|---|---|
#18+
potkinПодскажите пожалуйста:. Как в SQLite получить id-шник только что созданный записи ??? Например в MS SQL-е это делается так: Код: plaintext 1. 2.
Смотри функцию last_insert_rowid() . Ссылка постом выше. Если нужно получить id, т.е. INTEGER PRIMARY KEY AUTOINCREMENT , из твоей таблицы, то можно тоже с помощью функции l ast_insert_rowid() : Код: plaintext
... |
|||
:
Нравится:
Не нравится:
|
|||
15.07.2009, 00:19 |
|
SQLite - как получить id-шник только что созданный записи ???
|
|||
---|---|---|---|
#18+
Ещё один вопрос. Можно ли каким-либо способом узнать id строки которая будет добавлена? Поясню. К примеру есть таблица: create table mytable (id INTEGER PRIMARY KEY AUTOINCREMENT, ...); В процессе работы пользователь к примеру удалил все записи из таблицы. Соответственно id вновь добавляемой записи не равно 1. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.03.2010, 13:45 |
|
SQLite - как получить id-шник только что созданный записи ???
|
|||
---|---|---|---|
#18+
rrminiЕщё один вопрос. Можно ли каким-либо способом узнать id строки которая будет добавлена? Поясню. К примеру есть таблица: create table mytable (id INTEGER PRIMARY KEY AUTOINCREMENT, ...); В процессе работы пользователь к примеру удалил все записи из таблицы. Соответственно id вновь добавляемой записи не равно 1. Вот так: select seq+1 from sqlite_sequence where name='mytable'; Но делать это необходимо в той же транзакции и вообще не рекомендуется. В крайнем случае, если уж так необходимо, то использовать полученный id при вставке записи - если почему-либо не удастся с этим id вставить, транзакция откатится, а иначе можно развалить всю логическую целостность БД. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.03.2010, 20:41 |
|
SQLite - как получить id-шник только что созданный записи ???
|
|||
---|---|---|---|
#18+
А вообще, лучше сначала вставлять запись в таблицу с автоинкрементом. Потом читать из sqlite_sequence использованное значение. И уже последним шагом вставлять записи в зависимые таблицы. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.03.2010, 21:25 |
|
SQLite - как получить id-шник только что созданный записи ???
|
|||
---|---|---|---|
#18+
MBGrrminiЕщё один вопрос. Можно ли каким-либо способом узнать id строки которая будет добавлена? Поясню. К примеру есть таблица: create table mytable (id INTEGER PRIMARY KEY AUTOINCREMENT, ...); В процессе работы пользователь к примеру удалил все записи из таблицы. Соответственно id вновь добавляемой записи не равно 1. Вот так: select seq+1 from sqlite_sequence where name='mytable'; Но делать это необходимо в той же транзакции и вообще не рекомендуется. В крайнем случае, если уж так необходимо, то использовать полученный id при вставке записи - если почему-либо не удастся с этим id вставить, транзакция откатится, а иначе можно развалить всю логическую целостность БД. Спасибо большое. работает! ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2010, 10:08 |
|
|
start [/forum/topic.php?fid=54&fpage=27&tid=2009367]: |
0ms |
get settings: |
11ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
42ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
47ms |
get tp. blocked users: |
1ms |
others: | 319ms |
total: | 459ms |
0 / 0 |