OpenResty查询MySql数据表信息案例

local mysql = require("resty.mysql") -- 引入类库
local db, errmsg = mysql:new() -- 创建数据库链接对象
if not db then 
    return false, "mysql.socket_failed: " .. (errmsg or "nil")
end
-- 设置超时时间
db:set_timeout(10000)
local options = {
    host = "101.89.175.75",
    port = 3306,
    user = 'root',
    password = 'Tengxunqq5.',
    database = "godnan",
    charset= 'utf8'
}
-- 链接数据库信息
local result, errmsg, errno, sqlstate = db:connect(options)

if not result then
   return false, errmsg
end

local sqlq = " select * from s_card_type"
-- 查询数据库
local result, errmsg, errno, sqlstate = db:query(sqlq)
if not result then
    errmsg = concat_db_errmsg("mysql.query_failed:", errno, errmsg, sqlstate)
end
-- 按照列打印读取的信息
for i, row in ipairs(result) do
    for username,value in pairs(row) do
        ngx.say("select row", i," : ", username, " = ", value, "<br/>")
    end
end
	
-- 释放数据库链接
db:close()

 

posted @ 2023-04-20 00:25  郎小乐  阅读(25)  评论(0)    收藏  举报