第3.4次作業(yè)答案
《網(wǎng)絡編程技術》第3次作業(yè)一、填空題1、SQL 是結構化查詢語言(Structured Query Language)的縮寫,它包括查詢、、操作和控制4個部分,是一種功能齊全的數(shù)據(jù)庫語言。2、ODBC
《網(wǎng)絡編程技術》第3次作業(yè)
一、填空題
1、SQL 是結構化查詢語言(Structured Query Language)的縮寫,它包括查詢、、操作和控制4個部分,是一種功能齊全的數(shù)據(jù)庫語言。
2、ODBC 數(shù)據(jù)來源分為、系統(tǒng)和3種。其中文件數(shù)據(jù)源是保存在一個特殊的文件中的,該文件的擴展名為.DSN 。
3、ADO 除了可用數(shù)據(jù)源來連接數(shù)據(jù)庫外,還可通過和ODBC 鏈接字符串來實現(xiàn)對數(shù)據(jù)庫的連接。
4、ADO 的3個核心對象是、、RecordSet 。
5、要創(chuàng)建ODBC 數(shù)據(jù)源,打開“控制面板”中的管理工具,在(ODBC)項目上雙擊來一步步實現(xiàn)。
6、為了建立與數(shù)據(jù)庫連接,必須先調用連接對象的方法,才可以繼續(xù)進行各種操作。
7、CLOSE 方法的作用主要是用以切斷Connection 對象與數(shù)據(jù)庫之間的鏈接通道。
8、記錄分頁顯示時,Recordest 對象的屬性確定記錄集中包含多少頁的記錄,屬性確定每頁顯示的記錄數(shù),AbsolutePage 屬性確定當前記錄位于哪一頁上。
9、標示為和EOF 的特殊指針位置,分別代表記錄集開始于結束的位置,這兩個位置只是一個空值。
10、當指針已經(jīng)移動至首記錄時,使用可以達到記錄集開始的位置,反之引用,可以將指標移到記錄集結束的位置。
11、在使用INSERT 添加數(shù)據(jù)時,未設置的字段,添加數(shù)據(jù)時其默認值為。
12、Recordset 對象有兩種方法可對記錄進行更新,一種是用語句修改記錄;另一種是用Recordset 對象的方法修改記錄。
13、要更新數(shù)據(jù)庫中的記錄時游標類型應設置成。
14、如果用戶在規(guī)定的時間內沒有請求或刷新應用程序中的任何頁,Session 對象就會自動終止。
15、對于一些腳本執(zhí)行需時過長的特定頁面,也可使用Server 對象的ScriptTimeOut 屬性為其設定一個限制時間。
16、在ASP 中,用戶可以利用其他功能完整的程序語言,運用Server 對象的CreateObject 方法,在網(wǎng)頁中創(chuàng)建具備所需功能的程序對象。
17、數(shù)據(jù)可本身由多個數(shù)據(jù)表所組成,表中每一個行代表一個記錄,每一列代表一個字段。
18、索引本身根據(jù)其功用可以分為兩種,主索引(主鍵) 和。
19、FROM 指定SELECT 語句查詢及與查詢相關的表或視圖。
20、建立Connection 對象是采用Server 對象的方法進行的。
21、Recordset 中的記錄指針具有游標類型,它的默認值為adOpenForwardOnly 。
22、鎖定類型是針對數(shù)據(jù)庫操作中并發(fā)事件的發(fā)生而提出的系統(tǒng)安全控制方法。
23、Recordset 對象提供4個重要的數(shù)據(jù)瀏覽方法:MoveFirst 、和MoveNext ,,分別將當前的指針移到記錄集的首記錄、前一個記錄、后一個記錄和末記錄。
24、Fields 集合的屬性返回記錄集中字段(Fields對象) 的個數(shù),Item 方法用于建立某一個Field 對象。
25、ASP 程序在運行時有可能出現(xiàn)各種錯誤,這些錯誤可分為3類,即、運行錯誤和邏輯。
26、斷點是在腳本中作了標記的位置,它在指定的腳本行暫停執(zhí)行腳本。
27、為了能夠在第一次調用腳本時中斷執(zhí)行,可以在腳本的可疑行之前插入一個語句。執(zhí)行到
第<1>頁 共<11>頁
,該語句時,腳本會暫停執(zhí)行。
28、自定義錯誤消息可為兩種形式:即映射為或者映射為。
29、使用On Error Resume Next語句,所有的錯誤都會被忽略,程序會自動執(zhí)行下一條語句。
30、在ASP 頁頂部添加命令可聲明事務腳本。
31、在記錄集對象中,參數(shù)用來指定記錄集對象的游標類型,LockType 參數(shù)用來指
定記錄集對象的鎖定類型。
32、添加數(shù)據(jù)記錄有兩種方法,一種是使用語句;另一種是使用RecordSet 對象的方法。 33、對記錄的更新有兩種方法,一種是用 語句修改記錄,另一種是用RecordSet 對
象的方法修改記錄。
34、記錄集對象的Count 屬性可返回記錄集所包含的頁數(shù),每頁的記錄數(shù)有記錄集的PageSize
屬性指定。
35、記錄集對象的RecordCount 屬性可返回記錄集對象所包含的記錄個數(shù)。
36、記錄集對象的ActiveConnection 屬性可定義RecordSet 對象與數(shù)據(jù)庫的連接。該屬性或者
指向一個已打開的Connection 對象,或定義一個新的連接。
37、Command 對象的CommandText 屬性可設置或返回對數(shù)據(jù)源的命令字符串。該命令字符串
可以是SQL 語句、表、存儲過程或數(shù)據(jù)提供者支持的任何特殊有效的命令文本。
38、對SQL Server數(shù)據(jù)庫進行操作,數(shù)據(jù)庫名為:TestDB ,用戶名為sa ,密碼為xyz123,數(shù)據(jù)庫
服務器名為ACT 或211.153.165.7,創(chuàng)建的數(shù)據(jù)源為TEST ,下列語句已創(chuàng)建Connection 對象
Set conn = Server.CreateObject("ADODB.Connection") 請按下列要求填空: A 、以數(shù)據(jù)源方式指定conn 對象的連接字符串 conn.ConnectionString = "DSN=TEST;UID=sa;PWD=xyz123;database=TestDB" B 、以OLEDB 方式指定conn 對象的連接字符串 conn.ConnectionString = C 、以ODBC 驅動程序方式指定conn 對象的連接字符串 conn.ConnectionString =
39、Connection 對象中,屬性用來指定OLEDB 數(shù)據(jù)或數(shù)據(jù)提供者的名稱。
屬性用來指定Connection 對象使用Execute 方法的最長制定截止時間。屬性用來指定連接狀態(tài)。
40、對Access 數(shù)據(jù)庫進行操作,數(shù)據(jù)庫為當前站點目錄data 目錄中的Student.mdb ,創(chuàng)建的系統(tǒng)
數(shù)據(jù)源名稱為:STUD 創(chuàng)建連接對象的語句為:
Set connStudent = Server.CreateObject("ADODB.Connection") 請按下列要求填空: A 、以ODBC 驅動程序方式指定connStudent 的連接字符串 connStudent.ConnectionString=B 、以OLEDB 方式指定connStudent 的連接字符串
connStudent.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;Data
C 、以數(shù)據(jù)源打開方式指定connStudent 的連接字符串
connStudent.ConnectionString = "DSN=STUD"
第<2>頁 共<11>頁
,二、選擇題
1、在ASP 中,服務器響應用戶請求,向客戶端瀏覽輸出信息,要使用( ) 對象來實現(xiàn)。
A、Request Response C、Server D、Session
2、服務器端要獲得客戶端所提交的表單數(shù)據(jù),應使用( ) 對象來實現(xiàn)。
Request B.Submit C、Server D、Session
3、若表單提交的數(shù)據(jù)中包含著圖象,或大數(shù)據(jù)量的文本,此時表單的提交方法應采用( ) 。
A、Get B、Submit C、 D、Reset
4、若表單提交時采用的是Get 方法,則服務器端要獲得表單所提交的數(shù)據(jù),應采用( ) 語句來實現(xiàn)。
A、Request.Form(“表單域名”)
C、Response.Form(“表單域名”) Request.QueryString(“表單域名 D、Response.QueryString(“表單域名”)
5、若要提交采用的是Post 方法,則服務器端要獲得表單所提交的數(shù)據(jù),應采用( ) 語句來實現(xiàn)。
A.Request.Form(“表單域名”) B.Request.QueryString(“表單域名”)
C.Response.Form(“表單域名”) D.Respons e.QueryString(“表單域名”)
6、服務器端向客戶端輸出”注冊成功”,以下語句中,能實現(xiàn)該操作的是( ) 。
A.Request.Write ”注冊成功” B.Request.write(“注冊成功”)
Reponse.write ”注冊成功” D.Response.write(“注冊成功”)7、用于設置服務器響應HTTP 內容類型,應使用Response 對象的( ) 方法來實現(xiàn)。
.ContentT ype B .Expires C .Buffer D .Status
8、用于設置頁面過期的時間為2分鐘,以下語句用法中正確的是( ) 。
A .Request.Expires=2 .C .Request.ExpiresAbsolute=2 D .Response.ExpireAbsolute=2
9、在服務器端,若要將頁面導航到index.asp ,應使用Response 對象的( ) 方法來實現(xiàn)。
A .herf B .Transfer .Redirect D .Flush
10、若要向客戶端寫入一個名為username 的Cookie ,其值為guest ,一周后過期,則以下實現(xiàn)語句中,正確的是( ) 。
A . Response.Cookies(“username”)=”guest”
Response.Cookies(“username”).Expires =DateAdd(“ww”,1,Date)
B . Response.Cookies(“username”)=”guest”
Response.Cookies(“username”) .Expires =DateAdd(“d”,1,Date)
. Response.Cookie(“username”)=”guest”Response.Cookie(“username”) .Expires =DateAdd(“ww”,1,Date)D . Response.Cookies(“username”)=”guest”
Response.Cookies(“username”) .Expires =DateAdd(1, “ww”, Date)
11、若要獲得當前正在執(zhí)行的腳本所在頁面的虛擬路徑,以下用法中正確的是( ) 。
.Request.ServerVariables(“SCRIPT_NAME”)B .Response.ServerVariables(“SCRIPT_NAME”)
C .Response.ServerVariables(“PATH_TRANSLATED”)
D .Response.ServerVariables(“PATH_TRANSLATED”)
12、若要獲得客戶端的IP 地址,應使用ServerVariables 方法,查詢( ) 環(huán)境變量。
.REMOTE_ADDR B .REMOTE_HOST
C .LOCAL_ADDR D .PATH_INFO
13、若要設置服務器執(zhí)行ASP 頁面的最長時間為70秒,以下語句中正確的是( ) 。
A .Server .Timeout=70 B .Server .ScriptTimeOut=70000
第<3>頁 共<11>頁
,.Server .ScriptTimeOut=70 D .Server .Timeout=70000
14、在執(zhí)行A 頁面時,若要調用執(zhí)行B 頁面,B 頁面執(zhí)行完后,繼續(xù)執(zhí)行A 頁面,則應通過Server 對象的( ) 方法來實行。
A .Transfer B .Redirect .Execute D .href
15、若要創(chuàng)建一個對于訪問網(wǎng)站的所有用戶均有效的變量passflag ,以下方法中正確的是( ) 。
A .Session(“passflag”)=0
C .Set Session(“passflag”)=0 .Application(“passflag”)=0D .public passflag
16、以下對Gloabal.asa 的說法中,錯誤的是( ) 。 A .該文件夾對于一個ASP 應用程序而言,是可選的
.該文件可放在站點的任意位置C .Session 和Application 對象的事件處理過程,必須放在該文件中,以便實現(xiàn)對相應事件的
捕獲
D .該文件中也可用
17、若要將虛擬路徑轉換為真實的物理路徑,以下語句中正確的是( ) 。
A .Response.MaPth(虛擬路徑) B .Request.MapPath(虛擬路徑)
C .Server .URLEncode(虛擬路徑) .Server .MapPath(虛擬路徑)
18、在ASP 中,創(chuàng)建對象通常用( ) 對象的CreateObject 方法來實現(xiàn)。
A .Request B .Object .Server D .Application
19、以下方法中,不是文件系統(tǒng)對象所提供的方法的是( ) 。
A .CopyFile B .MoveFile .DeleteFileq D .Copy
20、以下方法中,可返回Folder 對象的是( ) 。
A .Folder B . C .CreateFolder D .GetFile
21、若要獲得指定文件夾的上一級文件夾的路徑,可使用的方法是( ) 。
.GetParentFolderName
C .GetFolder B .GetParentFolder D .RootFolder
22、若要在GZ 表中,選出年齡在20至25歲的記錄,則實現(xiàn)的SQL 語句為( ) 。
A .SELECT * FROM GZ WHERE年齡 BETWEEN 20,25
.SELECT * FROM GZ WHERE年齡 C .SELECT * FROM GZ WHERE年齡 BETWEEN 20 OR 25
D .SELECT * FROM GZ WHERE年齡 BETWEEN 20 AND 25
23、在GZ 表中選出職稱為“工程師”的記錄,并按年齡的降序排列,則實現(xiàn)的SQL 語句為( ) 。
A .SELECT * FROM GZ for 職稱=工程師 ORDER BY 年齡/D
B .SELECT * FROM GZ WHERE職稱=工程師 ORDER BY 年齡 DESC
.SELECT * FROM GZ WHERE職稱=?工程師? ORDER BY 年齡 DESC D .SELECT * FROM GZ WHERE職稱=?工程師? ORDER ON 年齡 DESC
24、在Logdat 表有UserID 、Name 、KeyWord3個字段,現(xiàn)要求向該表中插入一新記錄,該新記錄的數(shù)據(jù)分別為:Sgo003、李明、Jw9317,則實現(xiàn)該操作的SQL 語句為( ) 。
A .INSERT INTO logdat VALUES Sgo003,李明,jw9317
B .INSERT INTO logdat VALUES (?Sgo003?、?李明?、?jw9317?) C .INSERT INTO logdat (UserID,Name,KeyWord) VALUES ?Sgo003?,?李明?,?jw931?
.INSERT INTO logdat VALUES(?Sgo003?,?李明?,?jw9317?)25、若要獲得GZ 表中前10條記錄的數(shù)據(jù),則實現(xiàn)的SQL 語句為( ) 。
.SELECT TOP 10 B .SELECT next 10 FROM gz
C .SELECT * FROM gz WHERE rownum<=10
第<4>頁 共<11>頁
,D .SELECT * FROM gz WHERE Recno()<=10
26、在logdat 表中,將當前記錄的KeyWord 字段修改為uk72hJ ,則實現(xiàn)的SQL 語句為( ) 。
A .UPDATE logdat SET KeyWord=uk72hJ
B .UPDATE SET KeyWord=uk72hJ
.UPDATE logdat SET KeyWord=?uk72Hj?D .Edit logdat SET KeyWord=uk72hJ
27、若要刪除lagdat 表中UserId 號為Sgo012的記錄,則實現(xiàn)的SQL 語句為( ) 。
A .Drop FROM lagdat WHERE UserID=?Sgo012? B .Drop FROM lagdat WHERE UserID=Sgo012
.Dele FROM lagdat WHERE UserID=?Sgo012?D .Dele FROM lagdat WHERE UserID=?Sgo012?
28、以下連接對象的創(chuàng)建方法中,正確的是( ) 。
A .conn=CreateObject(“ADODB.connection”)
B .conn=Sever.CreateObject(“ADODB.connection”)
C .Set conn=Sever.CreateObject(ADODB.connection)
.Set conn=Sever.CreateObject(“ADODB.connection”)29、以下用法中正確的是( ) 。
A .RS=conn.Execute(“SELECT *FORM product”)
.Set RS=conn.Execute(“SELECT *FORM product”)C .Conn.Execute(“DELETE *FORM product WHERE ID=132”)
D .Conn.Ececute “DELETE *FORM product WHERE ID=132”
30、在記錄集RS 中,可用于返回記錄總數(shù)的語句是( ) 。
A .Num=RS.Count .Num=RS.RecordCount
C .Num=RS.Fields.Count D .Num=RS.PageCount
31、要獲得記錄集RS 中,當前記錄的“產(chǎn)品型號”字段的值,該字段的順序號為1,以下用法中,不正確的是( ) 。
A .fdvalue=RS(1)
.fdvalue=RS.Fields(“產(chǎn)品型號”)D .fdvalue=RS.Fields(產(chǎn)品型號).Value C .fdva lue=RS.(“產(chǎn)品型號”)
32、記錄集對象RS 創(chuàng)建后,為使該記錄集生效,應調用記錄集對象的( ) 來打開記錄集。
.Open B .Excute C .Close D .OpenRecordset
33、若要將記錄指針定位到記錄RS 的最后一條記錄,則可使用( ) 方法來實現(xiàn)。
A .Move B .MoveNext C .MovePrevious .34、在分頁顯示時,用于指定每頁記錄數(shù)的屬性是( ) 。
.PageSize B .PageCount C .CacheSize D .MaxRecords
35、可用于獲得當前記錄在記錄集中的位置號的屬性是( ) 。
A .AbsolutePage B .Recno C .AbsolutePosition
36、下面不屬于Microsoft 腳本編輯器的主要功能有( )。 D .RecordCount
、編輯和修改服務器腳本B 、在服務器端腳本執(zhí)行時,打開命令窗口監(jiān)視變量、屬性或數(shù)組元素的值
C 、在腳本的指定行設置斷點以暫停執(zhí)行服務器端腳本
D 、運行服務器端腳本時跟蹤過程/函數(shù)
37、下面關于事務處理說法不正確的是( )。
A 、事務是整體成功或失敗的操作
B 、大多數(shù)應用程序只有一些特定的操作需要事務環(huán)境
C 、Transaction Server決定事務是完全成功還是失敗
第<5>頁 共<11>頁
,、事務可以跨越多個ASP 頁38、下面關于事務提交說法正確的是( )。 A 、調用SetComplete 方法意味著事務被提交
、僅當腳本調用的所有事務性組件都調用SetComplete 方法時,事務才提交C 、大多數(shù)情況下腳本內部不可缺少對SetComplete 方法的調用
D 、提交事務時將觸發(fā)OnAbort 事件
39、鎖定類型是針對數(shù)據(jù)庫操作中并發(fā)事件的發(fā)生而提出的系統(tǒng)安全控制方式,在打開記錄集之前,將記錄集rs 的鎖定類型設置為保守式鎖定的語句是( )
A 、rs.LockType = adLockReadOnly 、rs.LockType = adLockPessimistic
c 、rs.LockT ype = adLockOptimistic D 、rs.LockT ype = adLockBatchOptimistic
)。 40、游標類型代表不同的數(shù)據(jù)獲取方法,將記錄集rs 的游標類型設置為鍵集的語句是(
A 、rs.CursorType = adOpenForwardOnly B 、C 、rs.CursorT ype = adOpenDynamic
三、編程題:
1、已知一個學生注冊界面如下所示: D 、rs.CursorT

ype = adOpenStatic
圖1 注冊表單 學生注冊數(shù)據(jù)庫為:

STUDENT .MDB ,數(shù)據(jù)表 studentReg 結構如下:
圖2 StudentReg表的結構 A 、請安裝上面顯示的界面編寫一個網(wǎng)頁名為“register.html ”,可提交用戶輸入的數(shù)據(jù)
第<6>頁 共<11>頁
,B 、編寫一個名為“receive.asp ”的注冊程序,將register .html 表單提交的數(shù)據(jù)以記錄方式插入到表studentReg 中。要求如下: 1)按圖1界面中的紅色文字要求在receiver .asp 中完成數(shù)據(jù)合法檢查,若不合法則編寫
error .asp ,在error .asp 中顯示出錯信息。
第<7>頁 共<11>頁

2)若指定的學號在表中已存在,則顯示出錯信息,否則完成記錄插入。
第<8>頁 共<11>頁

2、根據(jù)圖2的數(shù)據(jù)表和下面的界面圖3,編寫一個“l(fā)ogin.asp ”,當用戶輸入合法的學號和密碼后,在“success.asp ”中顯示學生的學號和密碼,并顯示“登錄成功”信息,否則在第1題編寫的“error .asp ”中顯示出錯信息。

圖3 學生登錄界面login.asp
第<9>頁 共<11>頁

四、問答題
1、OLE DB有哪兩層結構,它有什么優(yōu)勢?
OLE DB 又為數(shù)據(jù)提供方簡化了服務功能它只需按OLEDB 規(guī)范編寫一個COM 組件程序即可。OLE DB兩層結構的優(yōu)勢。第<10>頁 共<11>頁

