SQLite как генератор csv-потоков
Недавно я писал о том, как транслировать размещенную на сервере в формате csv электронную таблицу (по сути обычный текстовый файл) в нарядную html-структуру. Но кому сейчас интересно работать со статическими ресурсами? Оказывается, создавать динамические csv-документы умеет движок SQLite. Причем для того, чтобы этой фичей попользоваться, не нужды сложные сервлеты и PHP-извращения. Достаточно обычного cgi-скрипта менее чем в 10 строк:
#!/bin/bash
echo "Content-Type: text/plain; charset=utf-8"
echo ""
# Преобразуем закодированные параметры (часть SQL-запроса формируется на стороне клиента) в обычный текст.
REQ=`echo $QUERY_STRING | /usr/bin/ascii2uni -a J`
# Вставляем динамический "кусок" в запрос
REQ="select code, name, price from prices where $REQ order by name limit 20"
# Заголовки столбцов
echo '"Модель", "Наименование", "Цена"'
# Вытаскиваем данные из sqlite, они прямым ходом почапают в браузер в виде cvs-структуры благодаря соответствующему ключу.
# На стороне клиента данные можно хорошенько разукрасить. См. ссылку в начале.
/usr/local/bin/sqlite3 -csv prices.sqlite "$REQ"
- —
- 16 ноября 2011, 13:41
Комментарии (1)
RSS свернуть / развернутьSergei_T
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.