佳木斯湛栽影视文化发展公司

主頁(yè) > 知識(shí)庫(kù) > 推薦一篇不錯(cuò)的新手asp編程的基本法則第1/2頁(yè)

推薦一篇不錯(cuò)的新手asp編程的基本法則第1/2頁(yè)

熱門(mén)標(biāo)簽:Mysql連接數(shù)設(shè)置 電子圍欄 科大訊飛語(yǔ)音識(shí)別系統(tǒng) 服務(wù)器配置 Linux服務(wù)器 銀行業(yè)務(wù) 團(tuán)購(gòu)網(wǎng)站 阿里云
一、新手常犯的錯(cuò)誤
在論壇看到很多帖子代碼中都有一個(gè)共同的基本錯(cuò)誤,字段類型錯(cuò)誤。
程序和數(shù)據(jù)庫(kù)是緊緊相連的,數(shù)據(jù)庫(kù)字段文本型或時(shí)間型的都使用單引號(hào)
比如下面這段修改語(yǔ)句:
conn.execute "update Counts set counts='"counts"' where num="num" and Atime='"now()"'"
等號(hào)左邊都是字段名,等號(hào)右邊是傳值過(guò)來(lái)的變量名,counts 字段是文本型,所以寫(xiě)入時(shí)必須前后加單引號(hào),無(wú)論是寫(xiě)入還是查詢都一樣,后面的查尋語(yǔ)句中,num 字段是數(shù)字型,所以前后就沒(méi)有單引號(hào)了,Atime 字段是時(shí)間型所以前后也要加單引號(hào)。
最重要的是以ID查詢,ID字段是唯一的并且數(shù)字類型,很明顯查詢ID號(hào)時(shí)前后也不能有單引號(hào)

conn.execute "update Counts set counts='"counts"' where id='"id"'" '錯(cuò)誤寫(xiě)法
conn.execute "update Counts set counts='"counts"' where id="id '正確寫(xiě)法

二、ACCESS 數(shù)據(jù)庫(kù)連接
通常數(shù)據(jù)庫(kù)連接有兩種方式,新手基本不知道用哪一種方式,或者在什么情況下用哪一種,又或者不知道兩者的原理
①直接連接數(shù)據(jù)庫(kù)文件


Set conn = Server.CreateObject("ADODB.Connection")
conn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ="Server.MapPath("database/yanhang.mdb")

②通過(guò)數(shù)據(jù)源來(lái)連接數(shù)據(jù)庫(kù)文件


Set conn = Server.CreateObject("ADODB.Connection")
conn.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source="Server.MapPath("database/yanhang.mdb")

那么,兩者到底哪一個(gè)好呢,當(dāng)然是第二種,因?yàn)榈谝环N其實(shí)就是客戶端瀏覽器直接讀取數(shù)據(jù)庫(kù)的,所以安全方面差很多,第二種通過(guò)數(shù)據(jù)源連接,是以服務(wù)器數(shù)據(jù)源工具連接的,與客戶端沒(méi)關(guān)系,所以數(shù)據(jù)庫(kù)不會(huì)暴露給客戶端,安全系數(shù)高很多。

ACCESS 數(shù)據(jù)庫(kù)對(duì)應(yīng)程序的應(yīng)用:①直接連接數(shù)據(jù)庫(kù)文件


conn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ="Server.MapPath("database/yanhang.mdb")

這樣的數(shù)據(jù)庫(kù)連接方式,添加語(yǔ)句:


set rs=server.createobject("adodb.recordset") '(正確寫(xiě)法)
rs.open "select * from dndj",conn,1,3
rs.addnew
rs("bh") = bh
rs("bm") = bm
rs("xm") = xm
rs("xsq") = xsq
rs.update
rs.close
set rs=nothing

set rs=server.createobject("adodb.recordset") '(錯(cuò)誤寫(xiě)法)
sql="insert into dndj(bh,bm,xm,xsq) values('bh','bm','xm','xsq')"
rs.open sql,conn,1,3

ACCESS 數(shù)據(jù)庫(kù)對(duì)應(yīng)程序的應(yīng)用:②通過(guò)數(shù)據(jù)源來(lái)連接數(shù)據(jù)庫(kù)文件


conn.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source="Server.MapPath("database/yanhang.mdb")

這樣的數(shù)據(jù)庫(kù)連接方式,添加語(yǔ)句:


conn.execute "insert into dndj(bh,bm,xm,xsq) values('"bh"','"bm"','"xm"','"xsq"')" '(正確寫(xiě)法)

set rs=server.createobject("adodb.recordset") '(錯(cuò)誤寫(xiě)法)
sql="insert into dndj(bh,bm,xm,xsq) values('bh','bm','xm','xsq')"
rs.open sql,conn,1,3

三、雙引號(hào)的應(yīng)用
通常我們寫(xiě)超級(jí)連接這樣 a href="abc.asp?id=%=rs("id")%>">超級(jí)連接/a>
但要是把這個(gè)超級(jí)連接編譯進(jìn)asp里面呢


response.write "a href=""abc.asp?id="rs("id")""">超級(jí)連接/a>" '(正確寫(xiě)法)
response.write "a href='abc.asp?id="rs("id")"'>超級(jí)連接/a>" '(正確寫(xiě)法)
response.write "a href=abc.asp?id="rs("id")">超級(jí)連接/a>" '(正確寫(xiě)法)

response.write "a href="abc.asp?id=%=rs("id")%>">超級(jí)連接/a>" '(錯(cuò)誤寫(xiě)法)
response.write "a href="abc.asp?id="rs("id")"">超級(jí)連接/a>" '(錯(cuò)誤寫(xiě)法)

表單編譯進(jìn)asp里 input type="text" name="id" value="%rs("id")%>" />


response.write "input type=""text"" name=""id"" value="""rs("id")""" />" '(正確寫(xiě)法) 注意:這里有三個(gè)雙引號(hào)
response.write "input type='text' name='id' value='"rs("id")"' />" '(正確寫(xiě)法)
response.write "input type=text name=id value="rs("id")" />" '(正確寫(xiě)法)

response.write "input type="text" name="id" value="%=rs("id")%>" />" '(錯(cuò)誤寫(xiě)法)
response.write "input type="text" name="id" value=""rs("id")"" />" '(錯(cuò)誤寫(xiě)法)
12下一頁(yè)閱讀全文

標(biāo)簽:江蘇 大理 棗莊 衢州 萍鄉(xiāng) 衡水 蚌埠 廣元

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《推薦一篇不錯(cuò)的新手asp編程的基本法則第1/2頁(yè)》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    志丹县| 云阳县| 武夷山市| 阿坝| 堆龙德庆县| 准格尔旗| 金平| 孟津县| 牙克石市| 奇台县| 齐河县| 印江| 盖州市| 万州区| 绩溪县| 泸定县| 平乡县| 禹城市| 大方县| 凉城县| 宜城市| 陇川县| 黎川县| 云安县| 竹山县| 蒙城县| 青浦区| 黄大仙区| 红原县| 彰武县| 马公市| 西充县| 左云县| 达州市| 柘荣县| 石屏县| 海盐县| 宕昌县| 抚松县| 德安县| 广德县|