[Comm] Производительность SQLite!
Roman Savochenko
=?iso-8859-1?q?rom=5Fas_=CE=C1_diyaorg=2Edp=2Eua?=
Ср Дек 1 13:05:39 MSK 2004
Evgeniy Kobzev wrote:
> Roman Savochenko пишет:
>
>> В дополнении к вопросу производительности возникло ещё парочка:
>> - Как получить, просто, список колонок в таблице?
>> В MySQL это делается запросом типа <SELECT * FROM "tbl1" WHERE 0>
>
> В MySQL в ответ на такой запрос получим:
> mysql> select * from contacts where 0;
> Empty set (0.00 sec)
>
> Видимо имелось ввиду
> SHOW FIELDS FROM contacts;
>
> А в SQLite это скорее всего
> sqlite> .schema
>
> или
>
> sqlite> PRAGMA table_info(test2);
> cid name type notnull dflt_value pk
> ---------- ---------- ---------- ---------- ---------- ----------
> 0 name TEXT 0 1
> 1 num DOUBLE 0 0
> 2 TABLE TEXT 0 0
>
>> - Есть имена колонок на которые SQLite ругается. Например на запрос:
>> CREATE TABLE "test2" ("name" TEXT PRIMARY KEY, "num" DOUBLE, "TABLE"
>> TEXT);
>> Ругается: <Request error: near "TABLE": syntax error>.
>
> Неправда.
>
> sqlite> .schema test2
> CREATE TABLE "test2" ("name" TEXT PRIMARY KEY, "num" DOUBLE, "TABLE"
> TEXT);
>
> Как видите - всё создалось.
> Просто помните про, 'TABLE', "TABLE" и [TABLE]
> Почитайте про ключевые слова.
Евгений, ещё один вопрос можно? :)
Очередное подозрение на грабли в C-API.
Почему если запрашивать <SELECT name FROM "test00" WHERE "name"='Sh2';>
получаю имена колонок: <name>
А если <SELECT "name" FROM "test00" WHERE "name"='Sh2';>
то имена колонок: <"name">;
Подозрительная неоднозначность!
С уважением Роман!
Подробная информация о списке рассылки community