Erlang MySQL пример - PullRequest
       8

Erlang MySQL пример

5 голосов
/ 14 января 2010

Просто интересно, может ли кто-нибудь привести рабочий пример использования модуля erlang-mysql (http://code.google.com/p/erlang-mysql-driver/).

Я новичок в erlang и пытаюсь заменить некоторые старые сценарии несколькими пакетными процессами erlang. Я могу подключиться к БД и даже выполнить запрос, но я не уверен, как использовать результаты. Вот что у меня сейчас есть:

-include("../include/mysql.hrl").
...
mysql:start_link(p1, "IP-ADDRESS", "erlang", "PASSWORD", "DATABASE"),
Result1 = mysql:fetch(p1, <<"SELECT * FROM users">>),
io:format("Result1: ~p~n", [Result1]),
...

У меня также есть готовое утверждение, которое я также использую, чтобы получить только одну строку (если она существует), и было бы полезно узнать, как получить доступ к результатам для этого

Ответы [ 3 ]

4 голосов
/ 14 января 2010

Это описано в исходном коде из mysql.erl:

Ваш результат будет {data, MySQLRes}.

FieldInfo = mysql:get_result_field_info(MysqlRes), где FieldInfo - это список {Table, Field, Length, Name} кортежей.

AllRows = mysql:get_result_rows(MysqlRes), где AllRows - список списков, каждый из которых представляет строку.

0 голосов
/ 12 января 2018

После попытки использовать модуль ODBC, который поставляется с Erlang / OTP, и столкнуться с проблемами, я рекомендую драйвер mysql / otp. Я заменил ODBC на него всего за несколько часов, и он работает нормально.

Они имеют хорошую документацию , поэтому я не буду добавлять здесь примеры.

0 голосов
/ 22 января 2015

вы должны проверить количество строк, затем выполните:

например: RowLen = erlang: длина (строка), если RowLen> 0 -> {Успех}; правда -> {fail, "Row is null"} конец.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...