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"