17、問題:在ASP中使用ADO的AddNew方法和直接使用“Insert into...”語句有何不同?哪種方式更好?
答:ADO的AddNew方法只是將“Insert into ”語句封裝了起來,所以,當(dāng)對(duì)大量數(shù)據(jù)進(jìn)行操作的時(shí)候,直接使用SQL語句將會(huì)大大加快存取數(shù)據(jù)的速度,因?yàn)樗鼫p少了ADO的“翻譯”時(shí)間,由于SQL語句所執(zhí)行的操作是直接在數(shù)據(jù)庫服務(wù)器中進(jìn)行的,尤其在數(shù)據(jù)量很大的時(shí)候有顯著的優(yōu)勢(shì)。
18、問題:為什么我在ASP中使用標(biāo)準(zhǔn)的插入記錄語句 insert into books(name,email) values(“kitty”, ”)會(huì)出錯(cuò)?
答:SQL(Structured Query Language/結(jié)構(gòu)式查詢語言)是IBM公司在1970年代所發(fā)展出來的數(shù)據(jù)查詢語言,它現(xiàn)在已經(jīng)成為關(guān)系型數(shù)據(jù)庫查詢語言的標(biāo)準(zhǔn)。SQL語句是一種以英文為基礎(chǔ)的程序語言,可以使用它來添加,管理以及存取數(shù)據(jù)庫。
在SQL語句中添加時(shí)的字符串雖然可以使用雙引號(hào),但在ASP中卻需要使用單引號(hào)才能正常執(zhí)行。所以應(yīng)當(dāng)寫成insert into books(name,email) values(‘kitty’,‘kitty@263.com’)。
19、問題:什么是ActiveX 控件? 在哪里可以得到這些ActiveX控件?
答:Microsoft ActiveX控件是由軟件提供商開發(fā)的可重用的軟件組件。除了ASP的內(nèi)嵌對(duì)象外,另外安裝進(jìn)來的ActiveX控件也可以在ASP中使用,這樣可以節(jié)省許多寶貴的開發(fā)時(shí)間,在ASP中其實(shí)也內(nèi)嵌了很多的ActiveX控件可以使用。
使用ActiveX控件,可以很快地Web應(yīng)用程序、以及開發(fā)工具中加入特殊的功能。例如,使用AdRotator對(duì)象來制作廣告滾動(dòng)板,使用FileSystemObject對(duì)象進(jìn)行文件存取,使用Marquee對(duì)象實(shí)現(xiàn)滾動(dòng)文字。
現(xiàn)在,已有1000多個(gè)商用的ActiveX控件,開發(fā)ActiveX控件可以使用各種編程語言,如C,C++等,以及微軟公司的 Visual Java開發(fā)環(huán)境Microsoft Visual J++。 ActiveX控件一旦被開發(fā)出來,設(shè)計(jì)和開發(fā)人員就可以把它當(dāng)作預(yù)裝配組件,用于開發(fā)客戶程序。以此種方式使用 ActiveX控件,使用者無需知道這些組件是如何開發(fā)的,在很多情況下,甚至不需要自己編程,就可以完成網(wǎng)頁或應(yīng)用程序的設(shè)計(jì)。
目前由第三方軟件開發(fā)商提供的商用控件有1000多種。微軟ActiveX組件庫(ActiveX Component Gallery)中存著有關(guān)信息以及相關(guān)的連接,它們指向微軟及第三方開發(fā)商提供的各種 ActiveX 控件。在微軟ActiveX組件庫(ActiveX Component Gallery)中,可以找到開發(fā)Internet增強(qiáng)型ActiveX 控件的公司列表。
20、問題:為什么使用strStartPort=(Request.Form ("catmenu_0")語句取到表單中起始站點(diǎn)的值在數(shù)據(jù)庫卻找不到?
答:這是因?yàn)槿〉降钠鹗颊军c(diǎn)的值可能有空格,比如原意是“杭州”,但是由于空格存在,ASP程序取到的值可能就是“ 杭州”,而數(shù)據(jù)庫中只有“杭州”的記錄,當(dāng)然就找不到了,解決的方法是利用Trim 函數(shù)將字符串兩頭空格全部去除,相應(yīng)的語句為:
strStartPort=TRIM(Request.Form("catmenu_0"))
21、問題:在ASP中當(dāng)變量的生命周期結(jié)束后,有幾種保留變量?jī)?nèi)容的方法?
答:任何導(dǎo)致網(wǎng)頁結(jié)束的操作,比如當(dāng)按下瀏覽器的“刷新”按鈕,或者關(guān)閉了瀏覽器,再重新打開它,都會(huì)導(dǎo)致變量生命周期的結(jié)束。
如果希望在網(wǎng)頁結(jié)束執(zhí)行時(shí),還能夠保留變量的內(nèi)容,以備下一次執(zhí)行時(shí)使用,就可以借助Application對(duì)象來實(shí)現(xiàn)。比如可以利用Application對(duì)象來制作統(tǒng)計(jì)網(wǎng)站訪問量的計(jì)數(shù)器。
Session對(duì)象跟Application對(duì)象一樣,可以在網(wǎng)頁結(jié)束時(shí)將變量的內(nèi)容存儲(chǔ)下來,但是與Application對(duì)象不同的是,每個(gè)聯(lián)機(jī)是一個(gè)前幾立的Session對(duì)象,簡(jiǎn)單地說就是所有聯(lián)機(jī)上網(wǎng)者只會(huì)共享一個(gè)Application對(duì)象,但每位聯(lián)機(jī)上網(wǎng)者卻會(huì)擁有自己的Session對(duì)象。
Application對(duì)象與Session對(duì)象可以幫我們把信息記錄在服務(wù)器端,而Cookies對(duì)象則會(huì)借助瀏覽器提供的Cookies功能將信息記錄在客戶端。有一點(diǎn)要注意,Cookies是記錄在瀏覽器的信息,所以數(shù)據(jù)的存取并不象存取其他ASP對(duì)象(信息存儲(chǔ)在Server端)那么簡(jiǎn)單,就實(shí)際運(yùn)行來看,只有在瀏覽器開始瀏覽Server的某一網(wǎng)頁,而Server尚未下載任何數(shù)據(jù)給瀏覽器之前,瀏覽器才能夠與Server進(jìn)行Cookies數(shù)據(jù)的交換。
22、問題:對(duì)象使用完后應(yīng)該怎么辦?
答:當(dāng)使用完對(duì)象后,首先使用Close方法來釋放對(duì)象所占用的系統(tǒng)資源;然后設(shè)置對(duì)象值為“nothing”來釋放對(duì)象占用的內(nèi)存,否則會(huì)因?yàn)閷?duì)象太多導(dǎo)致WEB服務(wù)站點(diǎn)運(yùn)行效率降低乃至崩潰,相應(yīng)語句如下:
< %
對(duì)象.close
set對(duì)象= nothing
% >
ASP設(shè)計(jì)常見問題及解答精要-3,希望對(duì)您有參考價(jià)值。
查看更多寧波網(wǎng)站制作公司設(shè)計(jì)精要常見問題