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