一、新手常犯的錯誤 在論壇看到很多帖子代碼中都有一個共同的基本錯誤,字段類型錯誤。 程序和數(shù)據(jù)庫是緊緊相連的,數(shù)據(jù)庫字段文本型或時間型的都使用單引號 比如下面這段修改語句: conn.execute "update Counts set counts='"counts"' where num="num" and Atime='"now()"'" 等號左邊都是字段名,等號右邊是傳值過來的變量名,counts 字段是文本型,所以寫入時必須前后加單引號,無論是寫入還是查詢都一樣,后面的查尋語句中,num 字段是數(shù)字型,所以前后就沒有單引號了,Atime 字段是時間型所以前后也要加單引號。 最重要的是以ID查詢,ID字段是唯一的并且數(shù)字類型,很明顯查詢ID號時前后也不能有單引號 conn.execute "update Counts set counts='"counts"' where id='"id"'" '錯誤寫法 conn.execute "update Counts set counts='"counts"' where id="id '正確寫法
②通過數(shù)據(jù)源來連接數(shù)據(jù)庫文件 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 數(shù)據(jù)庫對應(yīng)程序的應(yīng)用:②通過數(shù)據(jù)源來連接數(shù)據(jù)庫文件 conn.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source="Server.MapPath("database/yanhang.mdb") 這樣的數(shù)據(jù)庫連接方式,添加語句: 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
三、雙引號的應(yīng)用 通常我們寫超級連接這樣 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>" '(錯誤寫法)