Вячеслав, писал(а):
Alexbootch,
Ага работает.
ну и хорошо!
[size=-2]------ Добавлено в 00:16
Да кстати, что бы определить какие все-таки типы данных в полях можно воспользоваться таким запросом:
select rowid, typeof(name),typeof(tab),typeof(desc),typeof(version),typeof(hasinfo),typeof(workFPC),typeof(workD4),typeof(comment),typeof(type),typeof(author) from elements;
Получаешь результат:
id | typeof(name) | typeof(tab) | typeof(desc) | typeof(version) | typeof(hasinfo) | typeof(workFPC) | typeof(workD4) | typeof(comment) | typeof(type) | typeof(author) |
1 | text | text | text | text | text | text | text | text | text | null |
2 | text | text | text | text | text | text | text | text | text | null |
3 | text | text | text | text | text | text | text | text | text | text |
5 | text | text | text | text | text | text | text | text | text | text |
Посмотри, отличается от заданного:
CREATE TABLE elements(id INTEGER PRIMARY KEY AUTOINCREMENT, name varchar(64)
UNIQUE, tab varchar(64), desc varchar(64), version varchar(20), hasinfo varchar(64),
workFPC varchar(10), workD4 varchar(10), comment memo(255), type CHAR(1), author varchar(64))
А почему? Да потому что:
ТИПЫ ДАННЫХ ПОЛЕЙ ТАБЛИЦ В SQLite - ДЕКЛАРАТИВНЫЕ т.е. независимо от того какой тип данных для поля был указан при создании таблицы в этом поле могут сохраняться значения разных типов, при этом SQLite сам определяет тип данных для сохранения значения поля. Задание типа данных поля таблицы при создании указывает SQLite на предпочтительный тип данных для сохренения значений.
Чтобы избежать путаницы для типов данных полей таблиц лудше использовать базовые типы данных SQLite.
INTEGER - Числовой тип данных (целые положительные или отрицательные числа). Данный тип данных имеет переменный размер 1,2,3,4,6 или 8 байтов. Максимальный размер для данных данного типа состовляет 8 байтов и может хранить числовые значения в диапазоне [-9223372036854775808,-1,0,1,-9223372036854775807]. SQLite автоматически изменяет размер данного типа данных в зависимости от значения.
REAL - Числовой тип данных имеющий размер 8 байтов и может хранить любые (в том числе и не целые) числа.
TEXT - Текстовый тип данных который может хранить текстовые строки произвольной длины в кодировке UTF-8 или UTF-16. Максимальная длина строки для данного типа данных не лимитирована. Этот же тип данных используется для хранения даты и времени.
BLOB - Тип данных для хранения двоичных объектов. Максимальный размер данных данного типа не лимитирован.
Чтобы избежать путаницы для типов данных полей таблиц лудше использовать базовые типы данных SQLite.
INTEGER - Числовой тип данных (целые положительные или отрицательные числа). Данный тип данных имеет переменный размер 1,2,3,4,6 или 8 байтов. Максимальный размер для данных данного типа состовляет 8 байтов и может хранить числовые значения в диапазоне [-9223372036854775808,-1,0,1,-9223372036854775807]. SQLite автоматически изменяет размер данного типа данных в зависимости от значения.
REAL - Числовой тип данных имеющий размер 8 байтов и может хранить любые (в том числе и не целые) числа.
TEXT - Текстовый тип данных который может хранить текстовые строки произвольной длины в кодировке UTF-8 или UTF-16. Максимальная длина строки для данного типа данных не лимитирована. Этот же тип данных используется для хранения даты и времени.
BLOB - Тип данных для хранения двоичных объектов. Максимальный размер данных данного типа не лимитирован.