初探erlang的mysql数据库使用
来源:互联网 发布:蛤蟆吃创建不了网络 编辑:程序博客网 时间:2024/05/22 07:00
选择应用:https://github.com/mysql-otp/mysql-otp-poolboy
- OTP框架结构,适合当前开发的服务框架
- 使用的基础库mysql-otp,使用者较多,作者为emysql的用户之一,比较靠谱
两种引用方式:
- my own supervisor:即添加到项目的监控树下,效果如图:
没有启动新的application。
- 通过配置文件和服务依赖启动,效果如图:
选择独立服务启动,原因是,独立引用,互不干涉,方便更新和维护。
数据交互模型
表:user
属性:id <str>, name <str>, age <int>
mysql:
输入支持binary和list两种格式:[<<"id">>,<<"name">>, ... ...] OR ["id", "name", ...]
输出格式为binary:{ok, [<<"id">>, <<"name">>, <<"age">>, ... ...], [[<<"">>, <<"">>, ...], [<<"">>, <<"">>, ...], ... ...]
erlang:
model_table.erl
create(Model) ->
DbData = transform_to_sql_data(Model),
%% insert to mysql.
get(Index or Id) ->
[DbData] = select from mysql,
Model = transform_to_model(DbData),
%% return Model
get_list(Index or others) ->
DbDatas = select from mysql,
ModelList = transform_to_model()
%% return ModelList
Model = {user, <<"id">>, <<"name">>, ...}
DbData = [<<"id">>, <<"name">>, ...]
是否检查record与mysql表结构的关系?
1.插入时,使用INSERT INTO table (id, name, ...) VALUES (?,?,?) 显式指定字段名称;取代 INSERT INTO table VALUES (?,?,?)的用法
2.查询时,返回Keys=[<<"id">>,<<"name">>,...]对比record_info(table)定义:[id, name, ...]
编码问题:统一使用utf8编码啊,erlang中使用的json库,已兼容编码。
0 0
- 初探erlang的mysql数据库使用
- Erlang数据库-(一)Erlang与Mysql的连接
- erlang连接到mysql数据库
- erlang连接到mysql数据库
- Erlang连接到mysql数据库
- MySql数据库引擎初探
- 初探Erlang的term_to_binary数据封包机制
- 如何使用erlang mnesia 数据库
- [Erlang]Erlang的干将莫邪:Rebar的使用
- Erlang 函数的使用
- sqlalchemy连接mysql数据库初探
- mysql数据库的使用
- mysql数据库的使用
- MySQL数据库的使用
- Mysql数据库的使用
- Mysql数据库的使用
- MySQL数据库的使用
- Erlang学习初探-0
- 本地代码连远程测试服务器的跨域问题
- hadoop安装
- 去重算法(转)
- Android开发艺术探索笔记(14)- MeasureSpec
- iOS 10访问相机Crash,plist权限设置
- 初探erlang的mysql数据库使用
- 用C语言写的爬虫项目
- 关于Linux文件的那些事情之二
- 兄弟,别乱接路由器
- 2016年秋季CVTE面经
- HDU_ACM_2024
- Codeforces 477D
- JS获取节点的兄弟,父级,子级元素
- spring data neo4j 查询超时问题