Lua支持
有关 Lua 语言的详细信息,请参阅 Lua 参考手册。
使用 Lua 与 SmartESQL 集成
SmartESQL 支持通过 LuaJIT 转译器使用 Lua 编程语言。我们推荐使用 LuaJIT 2.1.0-beta3 版本,您可以在 https://luajit.org/ 找到它。LuaJIT 是一种高效的脚本语言,能够直接编译成机器代码,并且通过低级 FFI 接口直接调用原生函数,从而提供出色的性能。不过,由于其低级别的特性,编程时需要特别小心以确保安全性和稳定性。为了更好地支持 SmartESQL 的需求,我们在 Lua 库中进行了一些修改和优化。关于 Lua 语法的详细信息,请参阅附录 C。
虽然 Lua 并不是 SmartEDB API 的原生语言,但在 SmartESQL 引擎中,您可以利用 Lua 来访问 SmartEDB 数据库。无论是编写用户自定义函数(UDF),还是执行 Lua 脚本,都能让您的工作更加灵活和高效。
用户自定义函数(UDF)是在服务器端运行的 Lua 程序,它们可以像其他 SQL 函数一样被调用,并将结果返回给 SQL 引擎,作为查询结果或用于后续的 SQL 子查询。这些 UDF 实际上是对服务器功能的一种扩展。UDF 主要有两种类型:
- 返回值型 UDF:这种类型的 UDF 返回一个特定类型的单一值,该类型在创建 UDF 时已经定义。
- 结果集返回型 UDF:这种类型的 UDF 返回一个结果集,可以在查询中任何出现表的位置使用。要创建这种 UDF,您需要定义一个表结构,结果集的格式将与该表匹配。这个表可以包含数据,也可以为空,并且只能在 UDF 内部引用。
此外,您还可以使用 Lua 编写独立的脚本程序,来创建数据库、连接现有数据库、执行 DDL 和 DML 语句以及处理查询结果。
请参阅快速入门,了解设置 Lua 环境相关信息。
主题 | 说明 |
---|---|
用户自定义函数 | 创建用户自定义函数(UDF) |
脚本 | 创建Lua脚本 |
SmartESQL 接口 | 使用Lua与SmartESQL接口 |
技巧 | 一些重要提示 |
Lua API参考
有关 Lua 语言的详细信息,请参阅 Lua 参考手册。