erlang 如何连接mysql

本文详细介绍了如何在Erlang中连接和操作MySQL数据库,包括驱动的下载与安装步骤,以及连接、数据操作和错误处理的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

erlang连接到mysql数据库

 

 

一,驱动的下载与安装

 

1.   下载erlang-mysql-driver

     下载地址如下:

     svn checkout http://erlang-mysql-driver.googlecode.com/svn/trunk/

     放到mysql目录下

2.   对src下面的所有源码进行编译, 可以讲include 文件夹下的头文件放到src文件当中

      erlc *.erl

3.    然后在mysql 下面创建ebin,并将src 下面的所有*.beam拷贝到ebin     下面

4.    将mysql整个文件夹拷贝到erlang/lib下面

 

二, 操作数据库

1      连接mysql:  其中的  PoolID 自己随便写,当start_link 结束后,会创建一个你自己写的PoolID

mysql:start_link(PoolId, "localhost", "root", "password", "databasename").

 

2    mysql:connect(PoolId, Host, ?PORT, User, Password, Database, undefined,Reconnect).%%建立一个连接

     Reconnect 为 true或者false, ?Post 为 3306

 

3           数据操作添加:

mysql:fetch(PoolId,<<”insert into….”>>).

   查询:

mysql:fetch(p1,<<"select * from user">>).

 

4                接收到数据后怎么处理

                   fetch(PoolId, "select * from user") -> Result

                   %%%     Result = {data, MySQLRes} | {updated, MySQLRes} |

                            %%%     {error, MySQLRes}

 

n  查询:{data, MySQLRes} = fetch(PoolId, <<"select * from user">>).

Ø  获取字段名称信息:

            FieldInfo = mysql:get_result_field_info(MysqlRes).

Ø  获取字段值:

            AllRows   = mysql:get_result_rows(MysqlRes)

                  

n  更新:

{updated,UD} = mysql: fetch(PoolId, <<"update  * from user">>).

                 AffectedRow = mysql:get_result_affected_rows(UD).%%获得影响的记录数

 

 出错

{error,Err} = fetch(PoolId, <<"update  * from user">>).

Reason    = mysql:get_result_reason(MysqlRes).%%出错原因

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值