2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




 
 Mathematica должна брать данные из mySQL (соединение)
Сообщение06.12.2015, 18:48 
Аватара пользователя
Здравствуйте. Нужно работать с данными из базы mySQL, которая на localhost.
Mathematica9. Win7pro.
Подскажите, пожалуйста код установки соединения с базой.
Если:
server = 'localhost'
user = 'myuser'
password ='mypass'
basename = 'mybase'
В этих примерах не смог разобраться:
https://reference.wolfram.com/language/DatabaseLink/tutorial/DatabaseConnections.html
Нужно дополнительно драйвер устанавливать?

 
 
 
 Re: Mathematica должна брать данные из mySQL (соединение)
Сообщение06.12.2015, 19:33 
Аватара пользователя
altestudent в сообщении #1079953 писал(а):
В этих примерах не смог разобраться
В каком смысле не смогли разобраться? Примеры на вашей машине не работают, выдают ошибки?

 
 
 
 Re: Mathematica должна брать данные из mySQL (соединение)
Сообщение06.12.2015, 20:50 
Аватара пользователя
Не могу применить ни один из примеров.
Я так понял, нужно активировать библиотеку:
Needs["DatabaseLink`"]
Это видимо аналог include в php.
Теперь устанавливаем соединение:
Ну например:
Код:
OpenSQLConnection[JDBC["MySQL(Connector/J)", "databases:1234/conn_test"],
  "Username" -> "test"]


Как в моём случае поступить?

OpenSQLConnection[JDBC["MySQL(Connector/J)", "localhost:1234/mybase"],
"Username" -> "myuser"]

Не понятно по какому порту обращаться. Где здесь пароль? База не даст доступ.

-- 06.12.2015, 19:45 --

Получилось.

Код:
OpenSQLConnection[JDBC["MySQL(Connector/J)", "localhost:3306/mybase"],
"Username" -> "myuser","Password"->"mypass"]

 
 
 
 Re: Mathematica должна брать данные из mySQL (соединение)
Сообщение06.12.2015, 23:03 
Аватара пользователя
Дочитали до места, где описывается работа с паролями? ;-)
altestudent в сообщении #1079996 писал(а):
Не понятно по какому порту обращаться.
А этот момент там тоже описан или информация о порте берётся из внешнего источника, из самой базы или откуда-то ещё? (Я по диагонали читал, мог упустить.)

 
 
 
 Re: Mathematica должна брать данные из mySQL (соединение)
Сообщение07.12.2015, 11:56 
Аватара пользователя
В справке пример кода соединения MySQL не содержит пароль. Дополнил сам, ибо логично.
Apache рабочий порт 80, MySQL - порт 3306.
Это видно, например в контрольной панели XAMPP.

У меня работает на сервере приложение, которое набивает базу данными. Если после очередного прохода информация имеет нужные свойства, приложение должно дать сигнал Математике.
Математика возьмёт данные из базы, сделает расчёты и передаст результат обратно серверному приложению, которое выполнит в сети соответствующую результату работу.
Вопрос.
1. Как реализовать коммуникацию этих двух приложений?
Например (первое что пришло в голову), Математика записывает результат расчётов в файл. Серверная программа следит за временем модификации файла. Если изменение файла меньше минуты назад - приложение просыпается и делает, что должно.
2. Возможно ли заставить Математику делать подобное? Т.е. работать в бесконечном режиме и непрерывно опрашивать файл. Если да - развилка - расчёт - переход в режим ожидания.

В этом варианте приложения слушают друг друга через файлы. Фигня конечно. Но это так, для инициации размышлений.
Про возможности Математики знаю пока очень мало - почти ничего. Возможно показать ей какой-то флаг, запустить выполнение кода?
Как бы Вы организовали коммуникацию между Wolfram Mathematica и серверным приложением? Благодарен за любые идеи. Особенно за ссылки на примеры реализации.

 
 
 
 Re: Mathematica должна брать данные из mySQL (соединение)
Сообщение10.12.2015, 00:09 
Аватара пользователя
altestudent, поскольку никто пока не рвётся вам помогать, да и я в этих аспектах применения Mathematica разбираюсь чуть более, чем никак, посоветую вам обратиться в это ВК-сообщество. Там есть несколько очень крутых специалистов, способных оказать отличнейшую помощь (если захотят, конечно ;-)

 
 
 [ Сообщений: 6 ] 


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group