Lua-Datenbankzugriff
Dieser Artikel stellt hauptsächlich die Lua-Bibliothek für Datenbankoperationen vor:LuaSQLSie ist quelloffen, und die unterstützten Datenbanken umfassen: ODBC, ADO, Oracle, MySQL, SQLite und PostgreSQL.
Dieser Artikel behandelt die Verbindung zur MySQL-Datenbank.
LuaSQL kann mitLuaRocksinstalliert werden; Sie können den benötigten Datenbanktreiber nach Bedarf installieren.
LuaRocks-Installationsmethode:
$ 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 unter Windows installieren:https://github.com/keplerproject/luarocks/wiki/Installation-instructions-for-Windows
Installation verschiedener Datenbanktreiber:
luarocks install luasql-postgres
luarocks install luasql-mysql
luarocks install luasql-sqlite
luarocks install luasql-odbc
Sie können auch die Installation aus dem Quellcode verwenden. Adresse des Lua-GitHub-Quellcodes:https://github.com/keplerproject/luasql
Lua verbindet sich mit einer MySQL-Datenbank:
Beispiel
--Umgebungsobjekt erstellen
env = luasql.mysql()
--Mit Datenbank verbinden
conn = env:connect("Datenbankname","Benutzername","Passwort","IP-Adresse",port)
--Datenbankkodierung festlegen
conn:execute"SET NAMES UTF8"
--Datenbankoperationen ausführen
cur = conn:execute("select * from role")
row = cur:fetch({},"a")
--Dateiobjekt erstellen
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() --Dateiobjekt schließen
conn:close() --Datenbankverbindung schließen
env:close() --Datenbankumgebung schließen