雷林鹏分享:Lua 数据库访问

  本文主要为大家介绍 Lua 数据库的操作库:LuaSQL。他是开源的,支持的数据库有:ODBC, ADO, Oracle, MySQL, SQLite 和 PostgreSQL。

  本文为大家介绍MySQL的数据库连接。

  LuaSQL 可以使用 LuaRocks 来安装可以根据需要安装你需要的数据库驱动。

  LuaRocks 安装方法:

  $ wget http://luarocks.org/releases/luarocks-2.2.1.tar.gz

  $ tar zxpf luarocks-2.2.1.tar.gz

  $ cd luarocks-2.2.1

  $ ./configure; sudo make bootstrap

  $ sudo luarocks install luasocket

  $ lua

  Lua 5.3.0 Copyright (C) 1994-2015 Lua.org, PUC-Rio

  > require "socket"

  Window 下安装 LuaRocks:https://github.com/keplerproject/luarocks/wiki/Installation-instructions-for-Windows

  安装不同数据库驱动:

  luarocks install luasql-sqlite3

  luarocks install luasql-postgres

  luarocks install luasql-mysql

  luarocks install luasql-sqlite

  luarocks install luasql-odbc

  你也可以使用源码安装方式,Lua Github 源码地址:https://github.com/keplerproject/luasql

  Lua 连接MySql 数据库:

  require "luasql.mysql"

  --创建环境对象

  env = luasql.mysql()

  --连接数据库

  conn = env:connect("数据库名","用户名","密码","IP地址",端口)

  --设置数据库的编码格式

  conn:execute"SET NAMES UTF8"

  --执行数据库操作

  cur = conn:execute("select * from role")

  row = cur:fetch({},"a")

  --文件对象的创建

  file = io.open("role.txt","w+");

  while row do

  var = string.format("%d %s\n", row.id, row.name)

  print(var)

  file:write(var)

  row = cur:fetch(row,"a")

  end

  file:close() --关闭文件对象

  conn:close() --关闭数据库连接

  env:close() --关闭数据库环境

  (编辑:雷林鹏 来源:网络 侵删)

posted @ 2019-07-09 16:03  雷林鹏  阅读(185)  评论(0编辑  收藏  举报