SQLite3 создание таблиц

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

Ответить
Аватара пользователя
LevelZero
новенький
Сообщения: 19
Зарегистрирован: 27.02.2007 11:52:36

SQLite3 создание таблиц

Сообщение LevelZero »

fpc 2.2.4
lazarus 0.9.27-0 сборка из svn от 2009-08-26
ubuntu 9.04

пытаюсь сделать CREATE TABLE
см. код ниже
как правильно создать таблицы в базе SQLite3 при помощи TSQLite3Connection и TSQLQuery
или для создания таблиц всегда необходимо использовать TSQLite3Dataset (этот способ описан на сайте)
данные из базы нужны для внутренней работы программы
отображать их необходимости нет

Код: Выделить всё

     // не работает и ошибок при компиляции и работе программы не выдает
SQLQuery.Close;
SQLQuery.SQL.Clear;
SQLQuery.SQL.Add('CREATE TABLE lFiles (IdFiles INTEGER PRIMARY KEY AUTOINCREMENT,IdBrief INT, IdImage INT, Name TEXT, Size INT, Path TEXT, mTime INT, aTime INT);');
SQLQuery.ExecSQL;

      //работает
SQLite3DataSet.SQL:=('CREATE TABLE lFiles (IdFiles INTEGER PRIMARY KEY AUTOINCREMENT,IdBrief INT, IdImage INT, Name TEXT, Size INT, Path TEXT, mTime INT, aTime INT);');
SQLite3DataSet.ExecSQL;
Последний раз редактировалось LevelZero 28.08.2009 06:48:57, всего редактировалось 1 раз.
Mr.Smart
долгожитель
Сообщения: 1796
Зарегистрирован: 29.03.2008 00:01:11
Откуда: из леса!

Сообщение Mr.Smart »

LevelZero писал(а):см. код ниже

А разве код по правилам форума не должен содержатся в теге [code] :shock: ?
Уважать ближнего своего - это не так уж плохо и ответ незамедлит себя ждать!
Vadim
долгожитель
Сообщения: 4112
Зарегистрирован: 05.10.2006 08:52:59
Откуда: Красноярск

Сообщение Vadim »

LevelZero
Это может быть связано с неподтверждённой транзакцией в первом случае.
Аватара пользователя
LevelZero
новенький
Сообщения: 19
Зарегистрирован: 27.02.2007 11:52:36

Сообщение LevelZero »

действительно все дело было в:

Код: Выделить всё

SQLTransaction.Commit;


спасибо

PS хотя и привык я в С++ к родным командам SQLite BEGIN vs COMMIT vs END TRANSACTION
Ответить