解讀動(dòng)態(tài)SQL語句的編程(3)_Mssql數(shù)據(jù)庫(kù)教程
推薦:SQL Server 2008 層次ID數(shù)據(jù)類型目錄 準(zhǔn)備工作1 練習(xí):使用HierarchyID數(shù)據(jù)類型2 準(zhǔn)備工作 預(yù)計(jì)完成本實(shí)驗(yàn)所需的時(shí)間 40 分鐘 目標(biāo) 在完成本實(shí)驗(yàn)后,您將可以: 處理SQL Server 2008當(dāng)中的層次ID數(shù)
使用這種方法同樣可以為各參數(shù)賦值,而且更加直觀一些。
17.4.3 使用Datasource屬性為參數(shù)賦值
上述兩種方法的共同特點(diǎn)是:我們?cè)跒楦鲄?shù)賦值時(shí),我們是知道各參數(shù)對(duì)應(yīng)的具體參數(shù)值的。而在具體的應(yīng)用程序中,有些參數(shù)值常常是無法確定的,例如參數(shù)值來自于另一個(gè)查詢結(jié)果,對(duì)于這種情況,Delphi提供了使用Datasource屬性為動(dòng)態(tài)SQL 語句中尚存在沒有賦值的參數(shù)時(shí), Delphi 會(huì)自動(dòng)檢查 TQuery 部件的 Datasource 屬性, 如果為Datasource屬性設(shè)置了屬性值(該屬性的值是另一個(gè)TDatasource部件的名字),Delphi 會(huì)把沒有賦值的參數(shù)與TDatasource部件中的各字段比較,Delphi 會(huì)將相應(yīng)的字段值賦給與其相匹配的參數(shù),利用這種方法也能實(shí)現(xiàn)所謂的連接查詢,我們?cè)趯W(xué)習(xí)使用TTable部件時(shí),便會(huì)創(chuàng)建主要--明細(xì)型數(shù)據(jù)庫(kù)應(yīng)用,用TQuery部件創(chuàng)建的連接查詢與主要- -明細(xì)型應(yīng)用是相似的。
例如:在如圖17.7所示的應(yīng)用中,設(shè)置了下列部件:
● 一個(gè)TTable部件
名字為Cust,它的DatabaseName屬性為DEMOS,TableName屬性為Customer。
● 一個(gè)TDatasource部件
名字為Custsource,其Dataset屬性被設(shè)置為Cust。
● 一個(gè)TQuery部件
名字為ORDERS,其DatabaseName被設(shè)置為DEMOS,SQL屬性值為:
Select Orders.CustNo,Orders.OrderNo,Orders.SaleDate FROM Orders
WHERE Orders.CustNo =: CustNo
ORDERS的DataSouce屬性被設(shè)置為CustSource
● 一個(gè)TDatasource部件
名字為OrderSource,其DataSet屬性被設(shè)置為Orders。
● 兩個(gè)TDBGrid部件
它們分別連接CustSource和OrderSource。
TQuery部件Orders中的動(dòng)態(tài)SQL語句中的參數(shù):CustNo在程序設(shè)計(jì)過程中沒有給它賦值,當(dāng)該應(yīng)用程序運(yùn)行時(shí)Delphi會(huì)自動(dòng)地到其Datasource屬性中說明的數(shù)據(jù)源CustSource中查找與參數(shù):CustNo匹配的字段,而CustSource中正好有一個(gè)名字為 CustNo 的字段與參數(shù):CustNo匹配,這樣Customer表中的CustNo字段值被賦給了參數(shù) : CustNo , 而當(dāng)每移動(dòng)Customer表中的記錄指針,參數(shù):CustNo的值會(huì)隨之改變,而參數(shù):CustNo的值發(fā)生改變時(shí),Orders中的動(dòng)態(tài)SQL語句會(huì)根據(jù)新的參數(shù)值重新查詢,從數(shù)據(jù)庫(kù)表中獲取相應(yīng)的訂單數(shù)據(jù),這樣也變實(shí)現(xiàn)了類似于主要--明細(xì)型應(yīng)用。即連接查詢。
分享:如何將SQL2000數(shù)據(jù)庫(kù)升級(jí)到SQL2005裝個(gè)SQl2005可真不容易啊!先是出錯(cuò),再是裝完了沒有企業(yè)管理器。我查了好久查出: SQL2005簡(jiǎn)易版的沒有Microsoft SQL Server Management Studio Express還要再裝。還是到這里下吧
- sql 語句練習(xí)與答案
- 深入C++ string.find()函數(shù)的用法總結(jié)
- SQL Server中刪除重復(fù)數(shù)據(jù)的幾個(gè)方法
- sql刪除重復(fù)數(shù)據(jù)的詳細(xì)方法
- SQL SERVER 2000安裝教程圖文詳解
- 使用sql server management studio 2008 無法查看數(shù)據(jù)庫(kù),提示 無法為該請(qǐng)求檢索數(shù)據(jù) 錯(cuò)誤916解決方法
- SQLServer日志清空語句(sql2000,sql2005,sql2008)
- Sql Server 2008完全卸載方法(其他版本類似)
- sql server 2008 不允許保存更改,您所做的更改要求刪除并重新創(chuàng)建以下表
- SQL Server 2008 清空刪除日志文件(瞬間日志變幾M)
- Win7系統(tǒng)安裝MySQL5.5.21圖解教程
- 將DataTable作為存儲(chǔ)過程參數(shù)的用法實(shí)例詳解
Mssql數(shù)據(jù)庫(kù)教程Rss訂閱編程教程搜索
Mssql數(shù)據(jù)庫(kù)教程推薦
- sql 游標(biāo)的使用—游標(biāo)FOR循環(huán)小例子
- 解讀Oracle數(shù)據(jù)庫(kù)SQL語句性能調(diào)整的基本原則
- 揭秘SQL Server2000安全設(shè)置全攻略
- SQL Server字符串切割
- SQL SQL Server 2008中的新日期數(shù)據(jù)類型
- 數(shù)據(jù)庫(kù)日常維護(hù)常用的腳本概述及部分測(cè)試
- 三個(gè)SQL視圖查出所有SQL Server數(shù)據(jù)庫(kù)字典
- Sql學(xué)習(xí)第三天——SQL 關(guān)于with ties介紹
- 基于SQL Server中char,nchar,varchar,nvarchar的使用區(qū)別
- 解讀sql中獲得部分時(shí)間的方法
猜你也喜歡看這些
- MYSQL索引建立需要注意以下幾點(diǎn)細(xì)節(jié)
- 網(wǎng)站模板:利用Shell腳本實(shí)現(xiàn)遠(yuǎn)程MySQL自動(dòng)查詢
- 網(wǎng)站模板:如何捕獲和記錄SQL Server中發(fā)生的死鎖
- mysql登錄遇到ERROR 1045問題解決方法
- MySQL索引簡(jiǎn)單分析
- SQLServer導(dǎo)出數(shù)據(jù)到MySQL實(shí)例介紹
- 解決MYSQL出現(xiàn)Can''t create/write to file ''#sql_5c0_0.MYD''的問題
- 淺談SQLite時(shí)間函數(shù)的使用說明與總結(jié)分析
- Ubuntu Server下MySql數(shù)據(jù)庫(kù)備份腳本代碼
- mysql常用設(shè)置:字符集編碼、自動(dòng)完成(自動(dòng)提示)、監(jiān)聽外網(wǎng)ip
- 相關(guān)鏈接:
- 教程說明:
Mssql數(shù)據(jù)庫(kù)教程-解讀動(dòng)態(tài)SQL語句的編程(3)
。