erlang连接Mysql数据库(mysql-otp)

2019-04-18  本文已影响0人  高巨龙

对比emysql和mysql-otp之后,个人选择了mysql-otp作为mysql连接驱动,并使用raber加载mysql-otp。

1、 创建bertie文件,使用rebar创建应用:

mkdir bertie  && cd bertie
rebar create-app appid=bertie

2、创建rebar配置文件:

 sudo vim rebar.config

配置内容如下:

{deps, [
    {mysql, ".*", {git, "https://github.com/mysql-otp/mysql-otp",
                   {tag, "1.5.0"}}}
]}.

3、下载配置文件中的库:

rebar get-deps

4、编译项目

rebar compile

5、移动deps文件下的mysql文件到/usr/lib/erlang/lib/目录下

linux环境下:
sudo mv  deps/mysql/ /usr/lib/erlang/lib/
---
Mac os环境下:
sudo mv deps/mysql/ /usr/local/lib/erlang/lib/

6、编写连接数据库的测试程序

sudo vim src/bertie.erl

测试连接程序:

-module(bertie).
-export([run/0]).
run()->
%% Connect (ssl is optional)
io:format("..........~n"),

{ok, Pid} = mysql:start_link([{host, "localhost"}, {user, "root"},
                              {password, "root"}, {database, "IoT"}]),

{ok,Ins} = mysql:prepare(Pid,<<"INSERT INTO user (user_name,user_passwd) VALUES (?,?)">>),
ok = mysql:execute(Pid,Ins,[<<"admin">>,<<"admin">>]),



{ok, ColumnNames, Rows} =
    mysql:query(Pid, <<"SELECT * FROM user where user_id = ?">>,[1]),
    io:format("Rows: = ~n~p~n",[Rows]).
~                                                                                                                       ~                                                 

附加:不用执行rebar compile也可以,这里目的是下载mysql驱动。

上一篇下一篇

猜你喜欢

热点阅读