English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

وصول قاعدة البيانات في Lua

يهدف هذا المقال إلى تقديم معرفة أساسية بلوغ لـ LuaLuaSQL. إنه مفتوح المصدر، يدعم قواعد البيانات التالية: 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 حقوق (C) 1994-2015 Lua.org, PUC-Rio
> احتاج إلى "سوكت"

تثبيت LuaRocks في نظام Windows:https://github.com/keplerproject/luarocks/wiki/Installation-instructions-for-Windows

تثبيت محركات قواعد البيانات المختلفة:

لتحميل لواروكس تثبيت لواروكس-سيليت
لتحميل لواروكس تثبيت لواروكس-بستغليس
لتحميل لواروكس تثبيت لواروكس-ميديا-كويك
luarocks install luasql-sqlite
luarocks install luasql-odbc

يمكنك أيضًا استخدام طريقة تثبيت المصدر، عنوان مصدر Lua Github:https://github.com/keplerproject/luasql

ربط Lua بـ MySql قاعدة البيانات:

require "luasql.mysql"
--بعد إصدار 5.2، لم يعد require يحدد المتغيرات العالمية، ويجب حفظ قيمتها.
--يجب كتابة:
--luasql = 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()   --إغلاق بيئة قاعدة البيانات