(圖片較大,請拉動滾動條觀看) (3)成功創建上述用戶的SQL代碼如下。 ――――――――――――――――――――――――――――――――――――― CREATE USER "GRADUATEUSER" PROFILE "DEFAULT" IDENTIFIED BY "12345678" DEFAULT TABLESPACE "USERS" TEMPORARY TABLESPACE "TEMP" ACCOUNT UNLOCK; GRANT UNLIMITED TABLESPACE TO "GRADUATEUSER"; GRANT "CONNECT" TO "GRADUATEUSER"; GRANT "RESOURCE" TO "GRADUATEUSER"; ――――――――――――――――――――――――――――――――――――― 【參見光盤文件】:第10章/creategraduateuser.sql。 (4)讀者可以直接在【SQLPlus Worksheet】中執行creategraduateuser.sql文件創建用戶。
1.為研究生信息表建立視圖 (1)在如圖10.45所示的創建視圖的【一般信息】選項卡中按照圖示進行操作。 (2)其他選項卡按照默認設置即可。 (3)上述創建視圖的SQL代碼如下。 ――――――――――――――――――――――――――――――――――――― CREATE OR REPLACE VIEW "GRADUATEUSER"."VIEW_GRADUATE" AS select * from graduateuser.graduate_info WITH READ ONLY ――――――――――――――――――――――――――――――――――――― 【參見光盤文件】:第10章/createviewgraduate.sql。 (4)讀者可以直接在【SQLPlus Worksheet】中執行createviewgraduate.sql文件創建數據表graduateuser.graduate_info的視圖“VIEW_GRADUATE”。 2.為專業信息表建立視圖 (1)在如圖10.46所示的創建視圖的【一般信息】選項卡中按照圖示進行操作。 (2)其他選項卡按照默認設置即可。 (3)上述創建視圖的SQL代碼如下。 ――――――――――――――――――――――――――――――――――――― CREATE OR REPLACE VIEW "GRADUATEUSER"."VIEW_MAJOR" AS select * from graduateuser.major_info WITH READ ONLY ――――――――――――――――――――――――――――――――――――― 【參見光盤文件】:第10章/createviewmajor.sql。 (4)讀者可以直接在【SQLPlus Worksheet】中執行createviewmajor.sql文件創建數據表graduateuser.major_info的視圖“VIEW_MAJOR”。 2.為導師信息表建立視圖 (1)在如圖10.47所示的創建視圖的【一般信息】選項卡中按照圖示進行操作。 (2)其他選項卡按照默認設置即可。 (3)上述創建視圖的SQL代碼如下。 ――――――――――――――――――――――――――――――――――――― CREATE OR REPLACE VIEW "GRADUATEUSER"."VIEW_DIRECTOR" AS select * from graduateuser.director_info WITH READ ONLY ――――――――――――――――――――――――――――――――――――― 【參見光盤文件】:第10章/createviewdirector.sql。 (4)讀者可以直接在【SQLPlus Worksheet】中執行createviewdirector.sql 文件創建數據表graduateuser.director_info的視圖“VIEW_DIRECTOR”
(圖片較大,請拉動滾動條觀看) (7)為什么這些菜單可以調用這些子窗體或者執行退出主窗體的操作呢?在圖10.50的主窗體中用鼠標雙擊,在出現的代碼窗口中的主要代碼如下。 ――――――――――――――――――――――――――――――――――――― ‘選擇菜單項DirectorInsertMenu后將顯示子窗體FormInsertDirector Private Sub DirectorInsertMenu_Click() FormInsertDirector.Show End Sub ‘選擇菜單項DirectorSelectMenu 后將顯示子窗體FormSelectDirector Private Sub DirectorSelectMenu_Click() FormSelectDirector.Show End Sub ‘選擇菜單項DirectorUpdateMenu后將顯示子窗體FormUpdateDirector Private Sub DirectorUpdateMenu_Click() FormUpdateDirector.Show End Sub ‘選擇菜單項GraduateInsertMenu后將顯示子窗體FormInsertGraduate Private Sub GraduateInsertMenu_Click() FormInsertGraduate.Show End Sub ‘選擇菜單項GraduateSelectMenu后將顯示子窗體FormSelectGraduate Private Sub GraduateSelectMenu_Click() FormSelectGraduate.Show End Sub ‘選擇菜單項GraduateUpdateMenu后將顯示子窗體FormUpdateGraduate Private Sub GraduateUpdateMenu_Click() FormUpdateGraduate.Show End Sub ‘選擇菜單項MajorInsertMenu后將顯示子窗體FormInsertMajor Private Sub MajorInsertMenu_Click() FormInsertMajor.Show End Sub ‘選擇菜單項MajorUpdateMenu后將顯示子窗體FormUpdateMajor Private Sub MajorUpdateMenu_Click() FormUpdateMajor.Show End Sub ‘選擇菜單項ExitMenu后將顯示退出主窗體 Private Sub ExitMenu_Click() End End Sub ―――――――――――――――――――――――――――――――――――――
模塊的設計
模塊Module1的其他主要代碼如下。
――――――――――――――――――――――――――――――――――――― ‘定義了名為ConnectString的無參數函數,連接數據庫 Public Function ConnectString() As String ConnectString = "DSN=graduateDB;UID=graduateuser;PWD=12345678" End Function ‘定義了名為ExecuteSQL的帶參數函數,參數SQL和MsgString都為字符串型。該函數用于執行SQL語句。 Public Function ExecuteSQL(ByVal SQL As String, MsgString As String) As ADODB.Recordset ‘conn為ADODB的connection連接對象 Dim conn As ADODB.Connection ‘rest為ADODB的記錄集對象 Dim rest As ADODB.Recordset ‘若執行SQL錯誤轉向ExecuteSQL_Error標記處 On Error GoTo ExecuteSQL_Error Set conn = New ADODB.Connection ‘連接數據庫 conn.Open ConnectString Set rest = New ADODB.Recordset ‘執行SQL字符串語句 rest.Open Trim$(SQL), conn, adOpenKeyset, adLockOptimistic Set ExecuteSQL = rest MsgString = "查詢到" & rest.RecordCount & " 條記錄" ‘執行SQL完畢后關閉連接和記錄集 ExecuteSQL_Exit: Set rest = Nothing Set conn = Nothing Exit Function ‘執行SQL錯誤時的處理方法 ExecuteSQL_Error: MsgString = "查詢錯誤: " & _ Err.Description Resume ExecuteSQL_Exit End Function ‘定義了名為Checktxt的帶參數函數,參數txt為字符串型。該函數用于檢測txt字符串是否有內容。 Public Function Checktxt(txt As String) As Boolean If Trim(txt) = "" Then Checktxt = False Else Checktxt = True End If End Function ―――――――――――――――――――――――――――――――――――――