本文主要为大家介绍 Lua 数据库的操作库:
LuaSQL http://luaforge.net/projects/luasql/
他是开源的,支持的数据库有:ODBC, ADO, Oracle, MySQL, SQLite 和 PostgreSQL。
LuaSQL 可以使用
LuaRocks https://luarocks.org/
来安装可以根据需要安装你需要的数据库驱动。
LuaRocks 安装方法:
$ wget https://luarocks.org/releases/luarocks-2.4.1.tar.gz$ tar zxpf luarocks-2.4.1.tar.gz$ cd luarocks-2.4.1$ ./configure; sudo make bootstrap$ sudo luarocks install luasocket$ luaLua 5.3.3 Copyright (C) 1994-2016 Lua.org, PUC-Rio> require "socket"
通过LuaRocks安装mysql必要的驱动:
sudo luarocks install luasql-mysql MYSQL_INCDIR=/usr/include/mysql/
mysql = require "luasql.mysql"--创建环境对象local env = mysql.mysql()--链接数据库local conn = env:connect("dstorage", "root", "itcast")print(env, conn)print("----------")--执行sql语句cursor,errorString = conn:execute([[ select * from user]])--遍历查询结果row = cursor:fetch({}, "a")while row doprint(string.format("Id:%s Name:%s", row.u_id, row.u_name))row = cursor:fetch({}, "a")end--关闭链接句柄conn:close()env:close()
执行结果:
MySQL environment (0x16fb628) MySQL connection (0x16fc108)----------Id:1 Name:aceId:2 Name:shitId:3 Name:gailunId:4 Name:benId:5 Name:akaliId:6 Name:marongId:7 Name:123Id:9 Name:songjjId:10 Name:aId:12 Name:guanyuhanId:14 Name:tt-yId:16 Name:1234Id:17 Name:1111Id:18 Name:mikeId:19 Name:pipixiaId:21 Name:qqqId:22 Name:123123Id:23 Name:1110Id:25 Name:he
