如何在 Lua 编程中使用 lua-mongo 库?
Lua 提供了可用于 MongoDB 的不同库。使我们能够在 Lua 中使用 MongoDB 的最流行的框架是lua-mongo。
Lua-mongo是一个绑定到 Lua 的 MongoDB C 驱动程序 -
它为MongoDB C Driver 中的MongoDB 命令、CRUD操作和 GridFS提供了统一的API 。
为方便起见,从 Lua/JSON 到 BSON 的透明转换。
Lua 数字与 BSON Int32、Int64 和 Double 类型的自动转换取决于它们的容量而不会丢失精度(当 Lua 允许时)。也可以手动转换。
您可以在此命令的帮助下下载 MongoDB -
luarocks install lua-mongo
MongoDB 设置
为了使用以下示例按预期工作,我们需要初始数据库设置。下面列出了这些假设。
您已经安装并设置了 MongoDB 和 /data/db 文件夹来存储数据库。
您已经创建了一个名为lua-mongo-test的数据库和一个名为 test 的集合。
导入 MongoDB
我们可以使用一个简单的 require 语句来导入 MongoDB 库,假设您的 Lua 实现已正确完成。
local mongo = require 'mongo'
变量mongo将通过引用主 MongoDB 集合来提供对函数的访问。
现在我们已经完成了设置,让我们写一个例子,看看我们如何使用 lua-mongo 框架在 Lua 中使用不同的 MongoDB 查询。
示例
考虑下面显示的例子 -
local mongo = require 'mongo'local client = mongo.Client('mongodb://127.0.0.1')
local collection = client:getCollection('lua-mongo-test', 'test')
-- Common variables
local id = mongo.ObjectID()
collection:insert{_id = id, name = 'John Smith', age = 50}
collection:insert{_id = id, name = 'Mukul Latiyan', age = 24}
collection:insert{_id = id, name = 'Rahul', age = 32}
for person in collection:find({}, {sort = {age = -1}}):iterator() do
print(person.name, person.age)
end
在上面的示例中,我们尝试按降序对 mongoDB 集合中存在的不同条目的图像进行排序。
输出结果
John Smith 50Rahul 32
Mukul Laityan 24
以上是 如何在 Lua 编程中使用 lua-mongo 库? 的全部内容, 来源链接: utcz.com/z/345872.html