1、连接 sqlite 数据库
require "string"
function handle(r)
local database, err = r:dbacquire("sqlite3", "db.sqlite")
-- db.sqlite 是数据库文件的绝对路径。
if not err then
local results, err = database:select(r, "SELECT id,name,password FROM 'users'")
if not err then
local rows = results(0)
for k, row in pairs(rows) do
r:puts( string.format("ID: %s Name: %s Number: %s<br/>", row[1],row[2],row[3]) )
end
else
r:puts("错误: " .. err)
end
database:close()
--关闭数据库
else
r:puts("不能连接数据库: " .. err)
end
return apache2.OK
end
这里的 r:dbacquire 接收两个参数,一个是数据库类型,这里是 sqlite,另一个是数据库文件的路径。如果数据库是 mysql ,要像下面那样写代码:
local database, err = r:dbacquire("mysql", "server=localhost,user=someuser,pass=somepass,dbname=mydb")
database:select 用来执行 SELECT。
2、删除记录
local statement, errmsg = database:query(r, "DELETE FROM users WHERE id=1" )
if not errmsg then
r:puts("<p>用户删除成功!</p>")
else
r:puts(errmsg)
end
database:query 用来执行 DELETE。
网友评论