3

显然我遇到了语法错误,但我的代码没有发现任何问题!

if rs.EOF then
    'User doesn't exist, create the record
    query = currentDate&",'"
    query = query + password & "','"
    query = query + "user', '"
    query = query + email & "', '"
    query = query + fname & "', '"
    query = query + sname & "'"

    handle = add_to_database("users","jdate,password,perms,email,fname,sname",query)
    response.write handle
else
    response.write "Error: User already exists, please use a different email address"
end if

这是 add_to_database 函数

function add_to_database(where,column,values)       
    'Create query
    sql = "INSERT INTO " & where & " (" & column & ") VALUES (" & values & ")"
    on error resume next
    'Add images to database
    conn.Execute sql,recaffected

    if err<>0 then
        add_to_database = err.description &":"&sql&"<br />"
    end if

    'Destroy connection
    sql = ""
end function

这是写入页面的错误

Syntax error in INSERT INTO statement.:INSERT INTO users (jdate,password,perms,email,fname,sname) VALUES (#2013/8/2#,'af453d19feb2520c8c0d30fb39ebd211','user', 'martynleeba@gmail.com', 'Martyn', 'Ball')
4

1 回答 1

5

users表包括一个名为 的字段password。Butpassword是一个保留字,所以当它在查询中找到它时会混淆数据库引擎。如果可能,重命名该字段。如果您必须保持名称不变,请将其括在方括号中,以向 db 引擎表明它是一个对象名称。

handle = add_to_database("users","jdate,[password],perms,email,fname,sname",query)
于 2013-08-02T00:43:05.027 回答