запись значений в SQL-сервер

Вопросы по программе Lectus Modbus OPC/DDE server
Alexig
Сообщения: 4
Зарегистрирован: 13 фев 2011, 14:16

запись значений в SQL-сервер

Сообщение Alexig »

Как реализовать запись новых значений во внешний SQL сервер? Спасибо
admin
Администратор
Сообщения: 578
Зарегистрирован: 05 сен 2010, 00:51

Re: запись значений в SQL-сервер

Сообщение admin »

1) В параметрах определить параметры подключения к внешней базе данных: "Настройка" - "Параметры" - "Разные" - "Подключение к базе данных".
Используйте OLE DB провайдера SQL базы данных;

2) Создать SQL переменную и в SQL скрипте исполняемом при чтении прописать скрипт записи значений в базу данных.
Например используя оператор INSERT. Пример доступен в окне редактора SQL скрипта.
Margadon

Re: запись значений в SQL-сервер

Сообщение Margadon »

Понятно, а если я значение переменной из Modbus хочу в Sql переписывать, то это как сделать? ведь она может быть либо только модбас, либо SQL.
а если я в другю базу пишу, в MySQL, скрипт написанный для mysql, ну что-нибудь например:
<?php
//include ('connect.php');
$var1 = 25;
$sql = 'INSERT INTO vars(var1)
VALUES(".$var1.')';
?>
будет работать?
admin
Администратор
Сообщения: 578
Зарегистрирован: 05 сен 2010, 00:51

Re: запись значений в SQL-сервер

Сообщение admin »

В редакторе SQL переменной нужно ввести SQL скрипт для подключенной SQL базы.
Чтобы записать в SQL базу значение Modbus переменной (Node.Item1) нужно написать например:
"INSERT INTO Northwind.dbo.Orders (CustomerID,OrderDate) VALUES (Item(Node.Item1), getdate())"
где getdate() - стандартная SQL функция получения текущего времени.

Подробности по SQL переменной см. в документации к программе:
http://www.lectussoft.com/manual/index.html
"Переменные" - "SQL переменные"
Margadon

Re: запись значений в SQL-сервер

Сообщение Margadon »

всё понятно с MS SQL. мануал почитал, всё ясно. но я то спрашивал совсем про другое:
а если я значение переменной из Modbus хочу в Sql переписывать, то это как сделать?
т.е. я хочу данные из сети модбас переписывать в MySQL. ? как это сделать, если переменная может быть либо модбас, либо SQL
и вторая часть вопроса: у меня связь с MySQL переменной а не с MsSQL. мне в окне скрипта что писать? php код?
admin
Администратор
Сообщения: 578
Зарегистрирован: 05 сен 2010, 00:51

Re: запись значений в SQL-сервер

Сообщение admin »

1) Не пойму вопроса. В примере рассматривается переменная Node.Item1 как Modbus переменная.
Ее значение записывается в базу данных.
Нужно создать две переменных. Одна Modbus переменная, другая SQL переменная.

2) При чем тут php ? Нужно писать SQL скрипт который выполняется базой данных.
Margadon

Re: запись значений в SQL-сервер

Сообщение Margadon »

1) ага! значит для копирования из модбас в sql достаточно создать 2 переменные -одну модбас, другую sql и одинаково их назвать, правильно?
2) понял
admin
Администратор
Сообщения: 578
Зарегистрирован: 05 сен 2010, 00:51

Re: запись значений в SQL-сервер

Сообщение admin »

Не нужно их одинаково называть.
Node.Item1 - Modbus переменная
Node.Item2 - SQL переменная
Margadon

Re: запись значений в SQL-сервер

Сообщение Margadon »

Такая ситуация: Win 7 максимальная, соединяюсь с MySQL через ODBC драйвер. т.е в настройках поставщик OLE DB провайдер для ODBC строка подключения: Provider=MSDASQL.1;Persist Security Info=False;User ID=root;Mode=ReadWrite;Initial Catalog=proc;
нажимаю на Тест - соединение OK, но когда всё сохраняю, повторно открываю подключение к базе нажимаю тест, вижу: ошибка подключения, источник данных не найден, драйвер не указан.
Естественно, настроенная переменная SQL тоже не читается.
Всё то-же самое сделанное на Win XP работает, переменную читает и в базу пишет.
что это, как бороть?
admin
Администратор
Сообщения: 578
Зарегистрирован: 05 сен 2010, 00:51

Re: запись значений в SQL-сервер

Сообщение admin »

Запускайте OPC сервер под Администратором.
Например через контекстное меню "Запуск от имени администратора".
Ответить

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 0 гостей