一、新手常犯的错误 在论坛看到很多帖子代码中都有一个共同的基本错误,字段类型错误。 程序和数据库是紧紧相连的,数据库字段文本型或时间型的都使用单引号 比如下面这段修改语句: conn.execute "update Counts set counts='"counts"' where num="num" and Atime='"now()"'" 等号左边都是字段名,等号右边是传值过来的变量名,counts 字段是文本型,所以写入时必须前后加单引号,无论是写入还是查询都一样,后面的查寻语句中,num 字段是数字型,所以前后就没有单引号了,Atime 字段是时间型所以前后也要加单引号。 最重要的是以ID查询,ID字段是唯一的并且数字类型,很明显查询ID号时前后也不能有单引号 conn.execute "update Counts set counts='"counts"' where id='"id"'" '错误写法 conn.execute "update Counts set counts='"counts"' where id="id '正确写法
②通过数据源来连接数据库文件 Set conn = Server.CreateObject("ADODB.Connection") conn.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source="Server.MapPath("database/yanhang.mdb")
set rs=server.createobject("adodb.recordset") '(错误写法) sql="insert into dndj(bh,bm,xm,xsq) values('bh','bm','xm','xsq')" rs.open sql,conn,1,3
ACCESS 数据库对应程序的应用:②通过数据源来连接数据库文件 conn.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source="Server.MapPath("database/yanhang.mdb") 这样的数据库连接方式,添加语句: conn.execute "insert into dndj(bh,bm,xm,xsq) values('"bh"','"bm"','"xm"','"xsq"')" '(正确写法)
set rs=server.createobject("adodb.recordset") '(错误写法) sql="insert into dndj(bh,bm,xm,xsq) values('bh','bm','xm','xsq')" rs.open sql,conn,1,3
三、双引号的应用 通常我们写超级连接这样 a href="abc.asp?id=%=rs("id")%>">超级连接/a> 但要是把这个超级连接编译进asp里面呢 response.write "a href=""abc.asp?id="rs("id")""">超级连接/a>" '(正确写法) response.write "a href='abc.asp?id="rs("id")"'>超级连接/a>" '(正确写法) response.write "a href=abc.asp?id="rs("id")">超级连接/a>" '(正确写法)
response.write "a href="abc.asp?id=%=rs("id")%>">超级连接/a>" '(错误写法) response.write "a href="abc.asp?id="rs("id")"">超级连接/a>" '(错误写法)