[WLX] SQLite Viewer
Select messages from
# through # FAQ
[/[Print]\]
Goto page 1, 2, 3, 4  Next  :| |:
Total Commander -> Плагины Total Commander

#1: [WLX] SQLite Viewer Author: MaximusLocation: Украина, Кировоградская обл., г. Знаменка PostPosted: Fri Aug 02, 2013 10:36
    —
Простой плагин для просмотра файлов DB баз данных SQLite.
Скачать

Кто пробовал?
Мне не удалось запустить. TC 8.01 & (Windows 7 x86 | Windows XP x86).

#2: Re: [WLX] SQLite Viewer Author: ProgMan13 PostPosted: Fri Aug 02, 2013 19:42
    —
Maximus wrote:
Мне не удалось запустить.

Вообще ни с каким файлом?
Некоторые базы (с триггерами, например) плагин сейчас действительно не открывает.

#3:  Author: CaptainFlintLocation: Москва PostPosted: Fri Aug 02, 2013 20:46
    —
Попробовал на Firefox-профиле, ни один sqlite-файл у меня тоже не открылся. Не знаю, с триггерами они там или нет…

TC 8.01, Win7 SP1 32-bit, FF 22.0

#4:  Author: ProgMan13 PostPosted: Fri Aug 02, 2013 21:07
    —
CaptainFlint wrote:
Попробовал на Firefox-профиле, ни один sqlite-файл у меня тоже не открылся.

Что за фалы? Файл urlclassifier3.sqlite открывается, если поменять расширение на db.

#5:  Author: MaximusLocation: Украина, Кировоградская обл., г. Знаменка PostPosted: Fri Aug 02, 2013 21:55
    —
ProgMan13
Я пробовал открывать файл, который формируется моим tcPhonebook.
Про триггеры тоже ничего не знаю.

#6:  Author: Lev PostPosted: Fri Aug 02, 2013 22:08
    —
А альтернативным SQLLite показывается?

#7:  Author: CaptainFlintLocation: Москва PostPosted: Fri Aug 02, 2013 22:40
    —
ProgMan13 wrote:
Что за фалы? Файл urlclassifier3.sqlite открывается, если поменять расширение на db.

Такого файла у меня вообще нет. Я взял просто список всех файлов с расширением sqlite в профиле FF и его локальных данных (с подкаталогами) и потыкал на них F3. Что расширение ограничивается только DB и DB3, не обратил внимания. Как-то повнятней бы это акцентировать в ридми, что DB — это именно необходимое расширение, а не просто общепринятое сокращение слова database. Кстати, заодно добавить бы в список поддерживаемых расширений SQLITE.

Теперь, зная источник проблемы, проверил с расширениями db: открылись только некоторые из файлов, а именно:
downloads.db
formhistory.db
index.db
permissions.db
signons.db
На остальных плагин просто не загрузился. (А когда я попробовал пробежаться по ним в режиме быстрого просмотра Ctrl+Q, то на первом таком файле отхватил исключение EEDFADE.)


Lev wrote:
А альтернативным SQLLite показывается?

Показывается, но из-за глюков плагина сложно понять, правильно ли. Он там содержимое таблиц не перерисовывает, оставляет старое, да и список таблиц иногда содержит что-то лишнее: в SQLiteViewer их нет, а сам SQLite при щелчке на такой таблице говорит, что её нема, так что неясно, с чего он вообще добавил её в список.

#8:  Author: Lev PostPosted: Fri Aug 02, 2013 22:50
    —
А точно, пытался убрать баг с неперерисовкой да забросил это дело. Тут полуфабрикат. В папке плагина д.б. sqlite3.dll.

#9:  Author: Tol!kLocation: Арзамас PostPosted: Fri Aug 02, 2013 23:09
    —
Сабж сработал на след. файлах из профиля FF.22
Code:
chromeappsstore.sqlite
downloads.sqlite
formhistory.sqlite
permissions.sqlite
search.sqlite
signons.sqlite

Файла urlclassifier3.sqlite у меня нет


Last edited by Tol!k on Fri Aug 02, 2013 23:11; edited 1 time in total

#10:  Author: MaximusLocation: Украина, Кировоградская обл., г. Знаменка PostPosted: Fri Aug 02, 2013 23:10
    —
Lev wrote:
А альтернативным SQLLite показывается?

Показывается. Частично правильно - UTF-8 отображается сами понимаете как.

#11:  Author: ProgMan13 PostPosted: Sat Aug 03, 2013 00:57
    —
Версия 1.5:
http://progman13.totalcmd.net/downloads/wlx_SQLiteViewer_1.5.zip

#12:  Author: CaptainFlintLocation: Москва PostPosted: Sat Aug 03, 2013 13:58
    —
ProgMan13
В версии 1.5 все файлы открылись успешно. Теперь имею следующие репорты/виши:
  1. При просмотре файлов cookies.db, places.db, webappsstore.db в текущем каталоге создаётся пара одноимённых файлов с расширениями db-shm и db-wal. Нельзя ли их создавать, скажем, во временном каталоге? А то так и существующий файл можно случайно уничтожить (например, если другая программа работает с той же базой и создала такую же пару файлов).
  2. Выше писал уже реквест: добавить ext="SQLITE" в detect-строку.
  3. Размеры колонок выставляются по крайне странному алгоритму, так что для коротких строк выделяется едва не полэкрана, а в колонках с длинными строками выводится буквально несколько символов. Ручная настройка сбрасывается, едва выполнишь новый запрос (включая выбор таблицы). Думаю, оптимальным алгоритмом здесь было бы выставление размера колонки равным максимальной длине строки (разумеется, с учётом длины самого заголовка — названия колонки), но с отсечкой по максимально допустимой ширине в пикселях (желательно, конфигурируемой).
  4. Реквест: По двойному щелчку на границе между колонками выставлять ширину левой колонки по максимальной длине строки в ней (как делается почти во всех приличных программах с табличным выводом). Если будет реализован предыдущий реквест, то, разумеется, здесь ограничение максимальной ширины работать не должно: пользователь явно запрашивает показ полного содержимого. Разве что вывести предупреждение при наличии строк совсем уж запредельной длины. Размер запредельности при этом было бы неплохо конфигурировать.
  5. Реквест: Если в запросе не меняется таблица, то оставлять размеры колонок теми, что пользователь выставил вручную. Если набор колонок поменялся, то, естественно, это относится только к тем, которые присутствовали в предыдущем запросе. Впрочем, если бы плагин сохранял все эти размеры (в привязке к имени базы и таблицы) долговременно, это было бы вообще супер.
  6. Реквест: Сортировка по щелчку на заголовке колонки. Например, добавлением order by в запрос. (Если не будет реализован предыдущий реквест, то хотя бы здесь надо будет дополнительно сохранить и восстановить текущие ширины колонок, а то такие дёрги при пересортировке — это будет совсем уж нехорошо.)
  7. Прокрутка нетипичная и неудобная. а) По вертикали прокручивается не содержимое, а почему-то курсор. б) При вертикальной прокрутке сбрасывается позиция горизонтальной прокрутки. в) Содержимое обновляется только после отпускания бегунка. г) Клавиши влево-вправо не прокручивают влево-вправо, а двигают курсор вверх-вниз.
  8. Хорошо бы сохранять историю запросов и выводить её в выпадающем списке, прицепленном к соответствующему полю.
  9. Для быстрого просмотра выбор таблицы из выпадающего списка крайне неудобен. В плагине SQLLite это сделано гораздо лучше (список слева от результата запроса, где таблицу можно выбрать одним щелчком).
  10. В некоторых таблицах вместо значения показывается просто (Blob). Хорошо бы блобы тоже показывать, потому что по факту там вполне может оказаться текст (плагин SQLLite вполне с этим справляется, например, файл content-prefs.db, таблица prefs, колонка value). Может быть, стоит сделать опционально показ текста или бинарного дампа в шестнадцатеричном виде (с быстрым переключением между ними в интерфейсе плагина).
  11. Было бы очень полезно увидеть где-нибудь не только содержимое таблиц, но и их структуру. Хотя бы в форме запроса "create table…".
Кажись, пока всё. Smile


Last edited by CaptainFlint on Sat Aug 03, 2013 20:53; edited 1 time in total

#13:  Author: Skif_off PostPosted: Sat Aug 03, 2013 14:54
    —
ProgMan13
Копирование не работает?

#14:  Author: MaximusLocation: Украина, Кировоградская обл., г. Знаменка PostPosted: Sat Aug 03, 2013 19:43
    —
ProgMan13
Мой файл теперь тоже открывается. Спасибо.

#15:  Author: ProgMan13 PostPosted: Sun Aug 04, 2013 02:56
    —
CaptainFlint
1. Особенности используемой библиотеки, отписал автору.
2. В 1.5 и появилось.
3. + Всем строкам по умолчанию выделяется побольше места. "Выставление размера колонки равным максимальной длине строки" - это чтение всей таблицы (т.е. долго), но возможно, будет такой выбор. Пока сделал для первой 1000 без ограничений по длине.
4. + Авторазмер колонки по двойному щелчку реализован.
5. Полностью нет (может, пока что). На данном этапе размер колонок ни к чему не привязан, т.е. надо будет сохранять соответствие названия колонки к размеру.
6. + Сортировка по order by.
7. Такое поведение у контрола.
8. Пока нет.
9. А вот это очень спорный вопрос.
10. Тут и пункт 7, и особенности библиотеки...
11. + Вроде, добавил.

Пункты 4 и 6 могут глючить.

По поводу используемых компонентов (и пункта 10 в частности) - это какая-никакая скорость работы и отсутствие необходимости в sqlite3.dll.
Что-то нашёл для примера, но там всего 140 тысяч записей:
http://sv-utils.googlecode.com/svn/trunk/SQLite3/Bin/test.db

Skif_off
Что нужно копировать?

Версия 1.6:
http://progman13.totalcmd.net/downloads/wlx_SQLiteViewer_1.6.zip



Total Commander -> Плагины Total Commander


output generated using printer-friendly topic mod. All times are GMT + 4 Hours

Goto page 1, 2, 3, 4  Next  :| |:
Page 1 of 4

Powered by phpBB © 2001, 2005 phpBB Group