Latest web development tutorials

การเข้าถึงฐานข้อมูล 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"

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()   --关闭数据库环境