# Сбор данных

Используя команду `ActionSQL` вы можете выполнять SQL-запросы с данными документа во время индексирования. Команда `ActionSQL` имеет следующий синтаксис:

    ActionSQL <section> <pattern> <sql-template> [<dbaddr>]

где <section> - имя секции, содержимое которой будет проверяться на соответствие шаблону регулярного выражения <pattern>, если соответствие будет найдено, то будет заполнен шаблон sql-запроса <sql-template>, в котором наряду с мета-переменными регулярного выражения $1-$9 можно использовать и мета-переменные шаблона страницы выдачи (например, $(title), $(Last-Modified)). Заполненый sql-запрос будет выполнен в первом `DBAddr`, указанном в файле конфигурации, или в новом соединении с sql-базой, задаваемой необязательным параметром <dbaddr>.

Таким образом, команда `ActionSQL` предназначена для поиска и сбора различной информации с индексируемых страниц. Например, следующая команда будет собирать в таблицу phonedata все найденные номера телефонов и заголовки страниц, на которых эти номера указаны:

    ActionSQL body "\(([0-9]{3})\)[ ]*([0-9]{3})[- \.]*([0-9]{2})[- \.]*([0-9]{2})" "INSERT INTO phonedata(phone,title)VALUES('+7$1$2$3$4','$(title)')"