mysql erlang_erlang连接到mysql | 学步园

苏品
2023-12-01

原创文章,转载请注明出处http://blog.csdn.net/erlib 作者Sunface

erlang连接到mysql数据库

一,驱动的下载与安装

1.        下载erlang-mysql-driver

下载地址如下:

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

(如果你没有安装SVN,附件中提供源码下载)

2.           对src下面的所有源码进行编译

erlc *.erl

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

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

二,操作数据库

1                连接mysql:

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

2          mysql:connect(PoolId, Host, ?PORT, User, Password, Database, undefined,

Reconnect).%%建立一个连接

3           数据操作

添加:

mysql:fetch(PoolId,<>).

查询:

mysql:fetch(p1,<>).

4                接收到数据后怎么处理

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

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

%%%     {error, MySQLRes}

n  查询:{data, MySQLRes} = fetch(PoolId, <>).

Ø  获取字段名称信息:

FieldInfo = mysql:get_result_field_info(MysqlRes).

Ø  获取字段值:

AllRows   = mysql:get_result_rows(MysqlRes)

n  更新:

{updated,UD} = mysql: fetch(PoolId, <>).

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

n 出错

{error,Err} = fetch(PoolId, <>).

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

注意mysql:start_link的第八个参数encoding,设置为utf8,以支持中文

 类似资料: