Ich kann keine Dokumentation oder Beispiele dafür finden. Bisher kann ich erfolgreich eine Verbindung herstellen, obwohl ich die Syntax zum Auswählen und Zurückgeben von Daten nicht kenne.Wie wählt man Daten über ODBC von Elixir?
:odbc.start()
{:ok, conn} = :odbc.connect('DSN=mydsn;UID=myuid;PWD=mypwd', [])
:odbc.execute_stmt(conn, 'select count(*) from mytable')
:odbc.stop()
** (UndefinedFunctionError) nicht definierte Funktion: odbc.execute_stmt/2 (ODBC): odbc.execute_stmt (#PID < 0.85.0> 'select count (*) from mytable')
aktualisieren 10/6/2015
ich fand, wie dies zu tun. Ich glaube, ich konnte für Elixir keine Dokumentation darüber finden, weil Elixir einfach eine Durchleitung zur Erlang-Bibliothek macht.
In jedem Fall ist es sql_query oder select_count:
{:selected, colNames, rows} = :odbc.sql_query(conn, 'select count(*) from mytable')
{: ausgewählt, [ 'COUNT'], [{ '182'}]}
{:ok, count} = :odbc.select_count(conn, 'select * from mytable')
{: ok, 182}
aktualisieren 10/7/2015
Hier ist meine letzte Code, die ich glaube, mehr idiomatische ist:
:odbc.start()
case :odbc.connect('DSN=mydsn;UID=#{System.get_env("MY_UID")};PWD=#{System.get_env("MY_PASSWORD")}', []) do
{:ok, conn} ->
case :odbc.sql_query(conn, 'select count(*) from mytable') do
{:selected, _colNames, [{count}]} -> IO.puts "count = #{count}"
{:error, err} -> {:error, err}
end
{:error, err} -> {:error, err}
end
:odbc.stop()