Dilma, я вот одного догнать не могу. При удалении элемента, удаляется и поле MySort, следующее перемещение использует уже индекс без смещением до этого поля и со смещением после. Работает ли алгоритм tsdima в данном случае, или есть какие-то особенности?
Этот топик читают: Гость
Разработчик
Ответов: 26163
Рейтинг: 2127
|
|||
карма: 22 |
|
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
В предложенном виде конечно не работает. Конкретную реализацию можно посмотреть в
http://hiasm.googlecode.com/svn/src/elmen/elmen.dpr процедуры ElMoveUp и ElMoveDown. Как видим конкретные значения данного поля в алгоритме не участвуют вообще. При добавление новой записи в это поле заносится MAX(pos) + 1. При удаление ничего не делается. При перестановке(вверх, вниз) меняются значения двух соседних записей. Идентификация записи идет по уникальному полю - имени элемента в среде. |
|||
карма: 27 |
|
Разработчик
Ответов: 26163
Рейтинг: 2127
|
|||
Dilma, ну спасибо, буду разбираться. Жаль только, что вот этого
Dilma писал(а): Идентификация записи идет по уникальному полю - имени элемента в среде.у меня нет -- нет у меня уникального имени, все поля могут меняться, если только создать, что-то типа "channel_1", "channel_2" и тд. |
|||
карма: 22 |
|
Ответов: 1891
Рейтинг: 110
|
|||
nesco, хотелось бы узнать как работает твоя программа, т.е. есть ли какие-либо глюки или работает стабильно при использовании библиотеки sqlite
|
|||
карма: 0 |
|
Разработчик
Ответов: 26163
Рейтинг: 2127
|
|||
Так как это справка по SQLite, то я напишу здесь основные команды работы с sqlite3.exe по созданию дампов из базы и обратно.
Это необходимо тем, кто обновился с SVN, где в дальнейшем будет хранится база Elements.db в текстовом формате Elements.sql Вот команда, которая создает Dump elements.sql из базы elements.db:
Файл sqlite3.exe можно взять вот по этому адресу: http://www.sqlite.org/sqlite-3_5_3.zip *.bat файлы надо поместить и запускать из папки \Elements\Delphi\, туда же должен быть помещен и sqlite3.exe |
|||
карма: 22 |
| ||
файлы: 1 | sqlite3_bat.zip [354B] [423] |
Ответов: 139
Рейтинг: 0
|
|||
Не могу скачать ссылки с примерами с головной страницы - куда ж они подеваоись?
В частности интерисует примеры: 1. Вствка/чтение картинок в базу 2. отображение денег в формате "с двумя нулями после запятой" ( 580.00 ) |
|||
карма: 0 |
|
Разработчик
Ответов: 26163
Рейтинг: 2127
|
|||
Danya, внимательно посмотри на ссылку и удали ненужную первую половину в поле адреса браузера, после попытки загрузки лажи.
|
|||
карма: 22 |
|
Ответов: 139
Рейтинг: 0
|
|||
Ага! Получилось.
А вот по поводу отображения двух нулей, после точки для вещественных типов данных (ну по просту, чтобы деньги красиво отображать) где бы позырить?!! ------ И ещё! Очень прошу - кто-нибудь работал с данными типа BLOB. Как реализовать кодирование-декодирование средствами hiasm??? |
|||
карма: 0 |
|
Разработчик
Ответов: 26163
Рейтинг: 2127
|
|||
Danya писал(а): Как реализовать кодирование-декодирование средствами hiasm???------------ Дoбавленo: Danya писал(а): А вот по поводу отображения двух нулей, после точки для вещественных типов данных (ну по просту, чтобы деньги красиво отображать) где бы позырить?!! |
|||
карма: 22 |
|
Ответов: 139
Рейтинг: 0
|
|||
nesco писал(а): читать можно, писАть никак не получаетсяТо есть я правильно понял, что считать BLOB поле мне удастся (собственно я его уже считывал - потом приходится %00 геморройно обрабатывать), А вот записать в поле BLOB данные в этом BLOB формате из хиасма ну никак не выйдет? Так? |
|||
карма: 0 |
|
Ответов: 2125
Рейтинг: 159
|
|||
Danya писал(а): записать в поле BLOB данные в этом BLOB форматеСделай аналогичную замену обратно. Сложность только в том, что работать с нулевыми байтами с помощю строки невозможно (можно использовать MemoryStream). |
|||
карма: 1 |
|
Разработчик
Ответов: 26163
Рейтинг: 2127
|
|||
tsdima писал(а): Сделай аналогичную замену обратно. Сложность только в том, что работать с нулевыми байтами с помощю строки невозможно |
|||
карма: 22 |
|
Ответов: 1891
Рейтинг: 110
|
|||
Danya, писал(а): То есть я правильно понял, что считать BLOB поле мне удастся (собственно я его уже считывал - потом приходится %00 геморройно обрабатывать), А вот записать в поле BLOB данные в этом BLOB формате из хиасма ну никак не выйдет? Так?Чё-то я не понял, а зачем %00 обрабатывать? |
|||
карма: 0 |
|
Разработчик
Ответов: 26163
Рейтинг: 2127
|
|||
Alexbootch писал(а): Чё-то я не понял, а зачем %00 обрабатывать |
|||
карма: 22 |
|
Ответов: 1891
Рейтинг: 110
|
|||
nesco, писал(а): Насколько я помню, то в IC я сделал полный декодер BLOB-формата, да и кодер сделал, вот только записать данные не удалось.nesco, о каких данных идет речь? |
|||
карма: 0 |
|