Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: SQLite - есть ли средства автонумерации?
Форум на CrossPlatform.RU > Разработка > SQL. Базы данных.
Litkevich Yuriy
Есть ли возможность в SQLite автоматически задавать значение определенного поля у вставляемой записи, по аналогии с парой генератор/"тригер на вставку" в Firebird?
Если да, объясните как это сделать.
Tonal
В SQLite есть автоинкрементный тип столбца.
Litkevich Yuriy
а ка его задать?
у меня сейчас так таблица создана:
CREATE TABLE APPUSER
(
  F_ID        INT,        /* Код пользователя - Первичный ключ */
  F_LOGIN    VARCHAR(10),    /* логин */
  F_PSWD    VARCHAR(10),    /* пароль */
  F_FIRSTNAME    VARCHAR(30),    /* имя */
  F_LASTNAME    VARCHAR(30)    /* Фамилия */
);

надо для столбца F_ID при в ставке автоматом нумеровать
Andrew Selivanov
Цитата(Litkevich Yuriy @ 29.4.2008, 11:20) *
а ка его задать?
у меня сейчас так таблица создана:
CREATE TABLE APPUSER
(
  F_ID        INT,        /* Код пользователя - Первичный ключ */
  F_LOGIN    VARCHAR(10),    /* логин */
  F_PSWD    VARCHAR(10),    /* пароль */
  F_FIRSTNAME    VARCHAR(30),    /* имя */
  F_LASTNAME    VARCHAR(30)    /* Фамилия */
);

надо для столбца F_ID при в ставке автоматом нумеровать

В запросе скажи F_ID INTEGER PRIMARY KEY и по умолчанию он будет автоинкремент
если не будет скажи F_ID INTEGER PRIMARY KEY AUTOINCREMENT
http://sqlite.org/lang_createtable.html
Litkevich Yuriy
понял спасибо, и тригеров не надо-гут :)
Tonal
Ни триггеров ни ХП - бо не поддерживаются. :)
Litkevich Yuriy
тригера поддерживаются (CREATE TRIGGER), хотя я не вкурсе, что там Qt'я с собой ставили, я специально ничего не ставил может у меня и не поддерживаются :)
Andrew Selivanov
Цитата(Litkevich Yuriy @ 29.4.2008, 14:18) *
тригера поддерживаются (CREATE TRIGGER), хотя я не вкурсе, что там Qt'я с собой ставили, я специально ничего не ставил может у меня и не поддерживаются :)


Все поддерживается как надо, sqlite не имеет сервера и его можно тупо подлинковать статически или динамически (или подлинковаться прямо к исходникам). Не думаю что TrollT нарочно что то из исходников вырезали ;)

Цитата(Tonal)
Ни триггеров ни ХП - бо не поддерживаются.

А что подразумевалось под ХП - бо?
Litkevich Yuriy
ХП-хранимые процедуры,
бо-ибо
:)
Tonal
О, триггера появились. Прикольно.
А не в курсе, можно у них калбек установить на те события, которые триггерами обрабатываются?
Тогда бы вместо триггеров и ХП можно было бы просто свои функции подсунуть.
Нашёл, есть: sqlite3_update_hook, sqlite3_commit_hook, sqlite3_rollback_hook.

Хотя в этом есть одна засада - если с базой предполагается работать из нескольких систем программирования, то в каждой придётся дублировать код этих функций...
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2024 IPS, Inc.