ser_davkin,
SELECT substr(file,1,inStr(file,'.')-1 ) FROM test;
но не со всякой dll работает.
Этот топик читают: Гость
Ответов: 16884
Рейтинг: 1239
|
|||
карма: 25 |
| ||
Голосовали: | ser_davkin |
Ответов: 1535
Рейтинг: 176
|
|||
Tad, со стандартной dll этот запрос не работает
Gunnman, благодарю, но со сторонней библиотекой для меня не актуально. Будем химичить на том, что есть. |
|||
карма: 1 |
|
Ответов: 655
Рейтинг: 18
|
|||
ser_davkin, всмысле сторонняя? там просто версия сборки другая, с большим кол-вом функций подключенных. Включи библиотеки в exe пусть выгружает при запуске)
------------ Дoбавленo в 18.32: Tad, спасибо за пример)) этой функции я не знал |
|||
карма: 0 |
|
Ответов: 16884
Рейтинг: 1239
|
|||
ser_davkin, со стандартной dll и rtrim() вроде не работает.
Замени стандартную dll на эту sqlite3_tad.rar и не парься. |
|||
карма: 25 |
| ||
файлы: 1 | sqlite3_tad.rar [349.2KB] [376] |
Ответов: 655
Рейтинг: 18
|
|||
Подскажите по использованию Sqlite пожалуйста:
Делаю приложение с web страницами, данные планирую хранить в Sqlite, приложение будет сетевое на 10 человек. Sqlite как я понял может работать в 1 потоке, в связи с чем пару вопросов: 1) Sqlite_DB находится вне мультика, Sqlite_Query в мультике (TCPServerEx), при подключении создается экземпляр схемы, Sqlite_Query при этом создает отдельное подключение к БД или нет? Если на каждый экземпляр мультика создается отдельное подключение к бд как поступить правильно: 1) Включить в SQLite WAL (Write Ahead Log)? 2) Вынести Sqlite_Query за мультик, сделать накопитель событий и поочередно в одном потоке их обрабатывать? |
|||
карма: 0 |
|
Ответов: 16884
Рейтинг: 1239
|
|||
ser_davkin писал(а): Tad, со стандартной dll этот запрос не работает Tad писал(а): Замени стандартную dll на эту sqlite3_tad.rar и не парься.code_34573.txt А здесь неплохая книга по SQLite на русском: http://agp1.hx0.ru/.SQLite.Allow.pdf |
|||
карма: 25 |
| ||
файлы: 1 | code_34573.txt [3KB] [582] |
Ответов: 16884
Рейтинг: 1239
|
|||
карма: 25 |
| ||
файлы: 1 | sqlite3(v3.8.7.1).rar [291.2KB] [400] |
Ответов: 413
Рейтинг: 57
|
|||
Добрый вечер. Подскажите как вывести значение одной ячейки последней строки?
Я понимаю что как то подобно этому запросу: SELECT '%1' FROM '%2' WHERE ??? = max ; но если так то ошибка, нужно как-то правильно записать "??? = max" иначе SQLite понимает max как колонку которой нет и ??? что лучше использовать (можно что либо кроме id или нет?) |
|||
карма: 0 |
|
Ответов: 655
Рейтинг: 18
|
|||
Poputchik, тебе нужны данные из последней строки определенного стобца?
select '%1' from '%2' order by rowid desc limit 1; - поиск по встроенному индетификатору select '%1' from '%2' order by id desc limit 1; - поиск по id который вы создаете сами select name from user order by name asc limit 1; - поиск по колонке name таблицы users |
|||
карма: 0 |
|
Ответов: 413
Рейтинг: 57
|
|||
Gunnman писал(а): тебе нужны данные из последней строки определенного стобца?из столбца последней строки или ячейки последней строки или колонки последней строки не знаю как правильнее сказать и есть ли разница в определении по отношению к SQLite сделал запрос: select 'nom_resh' from 'Reshenia' order by rowid desc limit 1; выдало надпись nom_resh |
|||
карма: 0 |
|
Ответов: 655
Рейтинг: 18
|
|||
кавычки убери..
select nom_resh from Reshenia order by rowid desc limit 1; ------------ Дoбавленo в 22.48: в твоем запросе они не нужны. они чаще нужны при вставке (insert\replace\update) и в основном для данных типа text,blob. insert into users(id,name,phone,city) values (1, 'Вася', 8999111111,'Moscow'); ------------ Дoбавленo в 22.50: Если ты ищещь по строковым данным, то запрос будет такой: select id from users where name='Вася'; Если ищещь по числам, то кавычки не нужны. select id from users where phone=8999111111; |
|||
карма: 0 |
| ||
Голосовали: | Poputchik |
Ответов: 413
Рейтинг: 57
|
|||
Gunnman, Спасибо что разжевал!
Если не затруднит можешь объяснить по Русски разницу между " " и при составлении запроса в SQLite. |
|||
карма: 0 |
|
Ответов: 655
Рейтинг: 18
|
|||
в одинарных ковычках это текст, в двойных индетификатор
'Вася' "users" -индетификатор https://www.sqlite.org/lang_keywords.html ------------ Дoбавленo в 23.09: Use single-quotes, not double-quotes, around string literals in SQL. This is what the SQL standard requires. Your WHERE clause expression should read: column1='column1' SQL uses double-quotes around identifiers (column or table names) that contains special characters or which are keywords. So double-quotes are a way of escaping identifier names. Hence, when you say column1="column1" that is equivalent to column1=column1 which is obviously always true. Используйте одинарные кавычки, НЕ двойные для строковых данных в SQL. Это требование SQL. Ваш запрос WHERE должен быть: column1='column1' SQL использует двойные кавычки для индетификаторов (имена столбцов или таблиц) которые содержат специальные символы или ключевые слова. В общем двойные кавычки для экранирования имен индетификаторов. Поэтому, когда вы говорите column1="column1" это эквивалентно column1=column1, что собственно является правдой. |
|||
карма: 0 |
| ||
Голосовали: | Poputchik |
Ответов: 413
Рейтинг: 57
|
|||
Никак не могу справится с датами в базе.
Так создаю базу: CREATE TABLE if not exists reshenia_1( id integer primary key AUTOINCREMENT, --1. id nom_res TEXT, --2. номер dv_res INTEGER --3. дата ); так добавляю строку в базу: INSERT OR REPLACE INTO 'reshenia_1' VALUES (NULL, '%2', '%3'); а так пытаюсь найти: select nom_res FROM 'reshenia_1' WHERE dv_res = %2 ; (где %2 дата в цифровом формате) ничего не выдает, в чем ошибка? Схема: code_34608.txt ------------ Дoбавленo в 21.56: Пробовал колонку создавать как DATE и искать значения по примеру из этой темы: http://hiasm.com/forum.html?q=3&p=99778 тоже в мой базе не хочет ничего находить. Что-то я не верно делаю |
|||
карма: 0 |
| ||
файлы: 1 | code_34608.txt [3.3KB] [795] |
Ответов: 824
Рейтинг: 138
|
|||
Poputchik, Заменить DSC_Exec на DSC_Query
|
|||
карма: 1 |
| ||
Голосовали: | Poputchik |