freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

第十八章delphi客戶服務器應用開發(fā)四-在線瀏覽

2024-11-08 15:30本頁面
  

【正文】 征 如果用 SQL 腳本和服務器數(shù)據(jù)定義工具定義元數(shù)據(jù)會更有效。因為如果是手工定義數(shù)據(jù)庫表, Database Desktop和 TBatchMove 部件將只拷貝數(shù)據(jù)。如果在服務器上定義適合的數(shù)據(jù)源,你就能將應用程序指向訪問它,這只需簡單地改變應用程序中 TTable 或 TQuery 部件的DatabaseName 屬性。Client/Server 應用程序必須解決大量的在桌面應用中所沒有的問題。桌面應用程序通常都是使用 TTable 部件。 如果應用程序使用統(tǒng)計或數(shù)學函數(shù),那么在服務器上通過存儲過程執(zhí)行這些函數(shù)會更有效。 例如,計算大量記錄的標準差: ● 如果該函數(shù)在客戶端執(zhí)行,所有的值從服務器上檢索出來并送到客戶端,導致網(wǎng)絡擁塞 ● 如果該函數(shù)在服務器端執(zhí)行,則應用程序只需要服務器上的答案 Delphi 客戶 /服務器應用實例分析 本節(jié)中采用的實例是 數(shù)據(jù)庫的例子 CSDEMO。 CSDEMO 較好地示范了 BDE 環(huán)境的配置, InterBASE Server 高級功能應用,SQL 服務器聯(lián)接,觸發(fā)器應用、存儲過程編程和事務控制技術等,具有較高的參考價值。 Local InterBase 是InterBase Server 的單用戶版 32 位、兼容 ANSI SQL。因此,開發(fā)客戶 /服務器應用采用 Local InterBase 作為原型開發(fā)環(huán)境是很方便的。它是由 BDE配置工具 ()設置參數(shù)值。 用 ISQL 定義數(shù)據(jù)庫,首先要用 Create Database 命令建立數(shù)據(jù)庫,建立的新數(shù)據(jù)庫一般是以 GDB 為 擴展名。 CREATE DOMAIN LASTNAME AS VARCHAR(20)。 CREATE DOMAIN EMPNO AS SMALLINT。00039。039。99939。 CREATE DOMAIN JOBCODE AS VARCHAR(5) CHECK (VALUE 39。)。 CREATE DOMAIN SALARY AS NUMERIC(15, 2) DEFAULT 0 CHECK (VALUE 0)。NOW39。, 39。 CHECK 語句是給數(shù)據(jù)庫字段取值范圍加約束條件。 如法炮制,就可以定義 IBLOCAL 中的所有表。關于數(shù)據(jù)庫表中的字段名、類型、大小,這里不再贅述。 TDataModule 是在 中才出現(xiàn)的專門放置數(shù)據(jù)訪問部件 (如 TDatabase、 TTable 和 TQuery 等 )的框架。 在 TDmEmployee 中定義了一個 TDatabase 類型的部件──EmployeeDatabase。 本 例 中 的“ EmployeeDemoDB”,被 EmployeeTable, SalesTable 等所有 DataSet 部件引用。 KeepConnection屬性為 True,表明多次打開和關閉 EmployeeDemoDB 數(shù)據(jù)庫中的任意表,應用程序?qū)⑹冀K與數(shù)據(jù)庫保持聯(lián)接,這省卻了重復注冊的開銷。 程序中 EmployeeDatabase 的應用還與事務控制等有關。 不同數(shù)據(jù)庫表的切換 在許多數(shù)據(jù)庫應用中都要在不同數(shù)據(jù)庫表之間相互切換,以響應用戶輸入條件或系統(tǒng)狀態(tài)的變化。因為是用 SQL 語句訪問遠程數(shù)據(jù)庫,有時還要在服務器端執(zhí)行計算任務,所以客戶端的數(shù)據(jù)變化會有一定的間隔,因此應該讓用戶明白發(fā)生了什么。 begin := crHourglass。 { 隱藏數(shù)據(jù)變化 } := FALSE。 { 更新數(shù)據(jù)庫表名 } 。 { 顯示所作的修改 } := crDefault。 crHourglass 型光標表明正在執(zhí)行 SQL 查詢。 InterBase 觸發(fā)器 (Trigger)的應用 在 CSDEMO 應用程序中,演示觸發(fā)器應用的窗體是 TFromTriggerDemo; 在該窗體中包含兩個 TDBGrid 對象。它們的主要屬性及屬性值如下: 表 EmlpoyeeTable 部件主要屬性的取值 ━━━━━━━━━━━━━━━━━━━━━ 屬 性 屬 性 值 ───────────────────── DatabaseName EmployeeDemoDB IndexFieldName Emp_No TableName EMPLOYEE ━━━━━━━━━━━━━━━━━━━━━ 表 SalaryHistoryTable 部件主要屬性的取值 ━━━━━━━━━━━━━━━━━━━━━ 屬 性 屬 性 表 ───────────────────── DatabaseName EmployeeDemoDB IndexFieldName Emp_No MasterFields Emp_No MasterSource EmployeeSource TableName SALARY_HISTORY ━━━━━━━━━━━━━━━━━━━━━ 這兩個表之間存在兩種關系: ● 連接關系 EmployeeTable 的記錄變化時, SalaryHistoryTable 的數(shù)據(jù)要作相應的變化。 ● 數(shù)據(jù)一致性 對 EmployeeTable 中的 Salary 字段的值作修改必須反映到 SalaryHistoryTable中, SalaryHistoryTable 維護的是 Salary 變化的歷史信息。 觸發(fā)器是在 SQL 服務器端執(zhí)行的一段程序,它在服務器端被觸發(fā)執(zhí)行完成一定的數(shù)據(jù)計算任務。now39。 END 因為觸發(fā)器是相應于 EMPLOYEE 表上的數(shù)據(jù)修改由服務器自動觸發(fā)執(zhí)行的,所以在客戶應用程序上沒有顯式的調(diào)用。 procedure (Sender: TObject)。 。 procedure (DataSet: TDataSet)。 end。 對于數(shù)據(jù)庫表中大量記錄的統(tǒng)計和函數(shù)計算,存儲過程是很有用,這樣可以將
點擊復制文檔內(nèi)容
公司管理相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1