Для Win2000 - Windows 10 (2016) (Server, x86, x64). Остання версія: 4.4.1 build 603. 3 червня 2019.
Опис проблеми:
Я хочу записати лог файли від нашої АТС в базу даних MS SQL 2014. Я встановив модуль "ODBC database" і протестував ODBC з'єднання за допомогою ODBC адміністратора і все виглядає працюючим.
вимоги:
- Advanced Serial Data Logger (ASDL) Professional або пробна версія;
- Модуль "ASCII data parser and query" для Advanced Serial Data Logger;
- Модуль "DDE server" для Логгер (опціонально, для тестування);
- Модуль "ODBC database" для Логгер.
Мається на увазі що:
Ви підготували змінні парсеру для експорту.
Для даного прикладу дані підготовлені в попередній частині .
Також ви можете переглянути інші приклади парсинга даних (Різні типи парсеров)
Рішення:
Зауваження: Цей процес досить складний і може виявитися важким для непідготовленого користувача.
Мається на увазі, що у вас є доступ до бази даних, і ви можете керувати нею. Спочатку, створіть таблицю в базі даних. Ви можете зробити це в існуючій базі даних або створити нову БД. Найбільш просто зробити це з використанням Enterprise Manager для Microsoft SQL Server. Це програмне забезпечення поставляється разом зі стандартною програмою установки, і ви можете знайти ярлик для цієї програми в меню "Microsoft SQL Server" в групі "Пуск -> Програми". У цьому прикладі ми створили таблицю з ім'ям "PBX_LOG_DATA" в тестовій базі даних "Northwind". Структура таблиці показана на рис.1 нижче.
USE [test] GO CREATE TABLE [dbo]. [PBX_LOG_DATA] ([ID] [decimal] (10, 0) IDENTITY (1,1) NOT NULL, [CALL_TIME] [datetime] NULL, [DURATION] [datetime] NULL , [CALLER_PHONE] [nvarchar] (40) NULL, [DIALED_PHONE] [nvarchar] (40) NULL, CONSTRAINT [PBX_LOG_DATA_PK] PRIMARY KEY ([ID] ASC)) ON [PRIMARY] GO
Рис.1. Експорт даних в MS SQL. Таблиця SQL.
Зверніть увагу, що ми додали в таблицю 4 колонки, для всіх змінних парсеру, які ми визначили раніше. Ви можете додати додаткові колонки або використовувати таблицю з вашої структурою.
Зауваження: Ви повинні вказати унікальні імена колонок. Заборонено використання в якості імені колонки зарезервованих слів ANSI92 SQL. У цьому прикладі ми могли б використовувати ім'я "Datetime" для першої колонки. Але оскільки це зарезервоване слово, то ми додали префікс "d_", для того, щоб щось було не так від зарезервованого слова.
Тепер таблиця готова і прийшов час налаштувати права доступу до неї в властивості SQL Server. У SQL, кожен користувач має строго певні права доступу до певних об'єктів бази даних. У нашому випадку, новий користувач може бути створений, або дозволений доступ вже існуючого облікового запису. Також ви можете налаштувати з'єднання від імені адміністратора, який має всі права, але з міркувань безпеки рекомендується використовувати обліковий запис адміністратора тільки для налагодження і тестування. Ми створили користувача з ім'ям "uvt", і встановили для нього "Northwind" як базу даних за замовчуванням (рис.2).
Рис.2. Експорт даних в MS SQL. Новий користувач.
За замовчуванням, користувач має права, присвоєні ролі бази даних "public". Тому необхідно видати права на запис в створену таблицю для цієї ролі або тільки для конкретного користувача (рис.3).
Рис.3. Експорт даних в MS SQL. Права ролі "Public".
USE [test] GO GRANT SELECT, INSERT ON [dbo]. [PBX_LOG_DATA] TO your_user_name GO
Модуль "ODBC database" використовує джерела даних ODBC для доступу до бази даних SQL Server 2014. Джерело даних можна створити і налаштувати з "Адміністратора ODBC з'єднань". Ви можете відкрити його з групи "Адміністрування" панелі управління. Також ви можете відкрити вікно адміністратора зі сторінки "З'єднання" клікнувши на кнопці "Налаштувати" ( рис.11 поз. # 3 ). У вікні адміністрування ви повинні створити новий користувальницький або системний джерело даних ODBC. Системні джерела даних ODBC (виберіть закладку в поз. # 1 на рис.4) використовуються, якщо програма буде використовуватися в режимі сервісу. Ми додамо новий користувальницький джерело даних, якшо по кнопці "Додати" (поз. # 2 на рис.4).
Рис.4. Експорт даних в MS SQL. Адміністрування джерел даних ODBC
Майстер налаштування нового з'єднання з'явиться на екрані (рис.5). На першій сторінці необхідно вибрати драйвер бази даних SQL Server (поз. # 1 на рис.5) і клікнути на кнопку "Далі". Якщо в списку драйверів немає драйвера для SQL Server, тоді вам необхідно встановити клієнтську частину для Microsoft SQL Server з того ж диска, що і сам Microsoft SQL Server 2014.
Рис.5. Налаштування джерела даних для SQL Server. Крок 1.
На наступній сторінці (рис.6), вкажіть ім'я джерела даних ODBC (в нашому випадку TEST), невелике текстовий опис і виберіть ваш сервер зі списку. Якщо сервера немає в списку, то перевірте, що сервер запущений і доступний в мережі. Після вказівки всіх значень клікніть на кнопці "Далі".
Рис.6. Налаштування джерела даних для SQL Server. Крок # 2.
На наступній сторінці (рис.7) ми вказали використовуватися режим авторизації SQL Server (поз. # 1), оскільки був доданий новий користувач. Далі введіть ім'я користувача та пароль (поз. # 2).
Рис.7. Налаштування джерела даних для SQL Server. Крок # 3.
На наступній сторінці (рис.8) ми вибираємо нашу базу даних - "Northwind" і залишаємо інші опції без змін.
Рис.8. Налаштування джерела даних для SQL Server. Крок # 4.
На останній сторінці (рис.9) ми повинні протестувати з'єднання з нашою базою даних. Просто клацніть на кнопці "Тестувати".
Рис.9. Налаштування джерела даних для SQL Server. Останній крок.
Добре, база даних і таблиця готові. Тепер необхідно відкрити вікно налаштування модуля "ODBC database" і в ньому відкрити сторінку "Спільне", за допомогою кнопки на лівій стороні вікна (рис. 10).
Рис.10. Експорт даних в MS SQL. База даних ODBC. Включення.
Перемикач в позиції №1 дозволяє включити запис в базу даних і опція в позиції №2 вказує на те, що з'єднання з базою даних буде підтримуватися постійно. Це мінімізує час запису в базу даних, але в, той же час, може блокувати запис даних від інших користувачів.
На другій сторінці "З'єднання" (рис. 11) ви можете вказати параметри з'єднання з вашою базою даних. Тут в позиції №1 потрібно вибрати ім'я створеного джерела даних ODBC, який ми створили раніше. Зверніть увагу, що якщо ви створили джерело даних після відкриття вікна, то необхідно натиснути кнопку "Оновити", щоб він з'явився в списку. Потім вкажіть логін і пароль для доступу до бази даних в позиції №2.
Рис.11. Експорт даних в MS SQL. База даних ODBC. Опції з'єднання.
У нашому прикладі додаткові атрибути з'єднання не потрібні.
На третій сторінці "Обробка помилок" модуля "ODBC database" (рис.12), вкажіть, як програма повинна реагувати на помилки, що виникають під час запису в базу даних.
Рис.12. Експорт даних в MS SQL. База даних ODBC. Обробка помилок.
У цьому прикладі була обрана остання опція (поз. # 1) оскільки дозволяє не зупиняти запис в базу даних, якщо сталася якась помилка. Інші варіанти зазвичай використовуються при настройці і відладці конфігурації програми.
Остання сторінка "язування" (рис.13) дуже важлива. На це сторінці необхідно пов'язати колонки створеної таблиці в базі даних і змінні парсеру.
Рис.13. Експорт даних в MS SQL. База даних ODBC. Зв'язування.
Ви можете додати нові елементи на цій сторінці, клікнувши на кнопці "Додати" (рис.13, поз. # 6). У цьому випадку, перед додаванням нового елемента, програма запитає вас про ім'я таблиці (рис.13, поз. # 1), а потім і ім'я колонки (рис.13, поз. # 2). Ім'я таблиці повинно бути таким же, що ви вказали при створенні таблиці в базі даних. Додавання елементів, що описують колонки таблиці досить трудомісткий процес. Набагато простіше додати всі елементи, клікнувши на кнопці "Імпортувати" (рис.13, поз. # 7).
Однак перед тим як натиснути кнопку "Імпортувати" ви повинні налаштувати з'єднання з базою даних, як описано вище. У нашому випадку наступне вікно з'явиться на екрані (рис.14) і ви повинні вибрати необхідну таблицю зі списку (рис.14, поз. # 1), а потім клікнути на кнопку "OK".
Рис.14. Експорт даних в MS SQL. База даних ODBC. Вибір таблиці.
Кожна колонка описується наступними параметрами:
- Ім'я змінної парсеру - це ім'я, яке ми визначили в парсером. Ви можете вибрати ім'я змінної зі списку, коли ви клікніть на посилання поруч з цією властивістю;
- Тип даних - тип даних колонки в базі даних. Програма буде намагатися конвертувати змінну парсеру в цей тип даних, використовуючи стандартні системні функції;
- Значення за замовчуванням - це значення буде використовуватися, коли дані не можуть бути перетворені в зазначений тип даних.
Будь ласка, клікніть на кнопці "OK" у вікні налаштування модуля "ODBC database" і потім на кнопці "OK" у вікні налаштування конфігурації.
Добре, всі налаштування завершені і ми готові до запису даних від АТС в базу даних.
Якщо ви налаштували все вірно, то при вдалій записи в базу даних програма буде відображати відповідне повідомлення в головному вікні програми, в списку повідомлень програми.