insert 语句问题

第63行 sql="insert into [dlsinfo](cp,city,content,name,add,tel,ip,tdate,username,counter) values('"& cp &"','"& city &"','"& content &"','"& name &"','"& add &"',"& tel &","& ip &","& tdate &",'"& username &"',"& counter &")"
第64行 conn.execute(sql)
运行提示:Microsoft JET Database Engine (0x80040E14)
INSERT INTO 语句的语法错误。
/admin/index.asp, 第 64 行
哪位帮我看看到底怎么解决这个问题?
最新回答
地球另一端的梦

2024-11-07 01:21:13

sql="insert into [dlsinfo](cp,city,content,[name],add,tel,ip,tdate,username,counter) values('"& cp &"','"& city &"','"& content &"','"& name &"','"& add &"',"& tel &","& ip &","& tdate &",'"& username &"',"& counter &")"

造成这样错误的原因无外乎以下几个方面:

1)将保留字用作名称。大多数数据库都有一组保留字。例如,"name"是保留字,因而不能用于数据库中的列名称。

2)名称中使用特殊字符。特殊字符的示例包括: . / * : ! # & - ?

3)在列名称中使用空格。

4)当为数据库中的对象定义了输入掩码并且插入的数据与该掩码不符时,也会出现此错误。

解决该问题的方法是有以下两种:
1)在指定数据库中的列名称时,请避免使用"name"、"date"、"where"、"select"、和"level"等保留字。另外,请清除空格和特殊字符

2)当字段名与保留字相同时,我们可以在sql语句中应用[] 加以区分。

Insert into messages([names],qq,content) values ('WebjxCom','76312395','我的成功与大家的支持是密不可分的')