前言
VB對數(shù)據(jù)庫的編程有多種方法,如:ODBC API編程、RDO(遠(yuǎn)程數(shù)據(jù)對象)、DAO(數(shù)據(jù)訪問對象)、ADO(ActiveX 數(shù)據(jù)對象)方法編程實現(xiàn)方便、快捷,但靈活性稍差。由于存儲過程具有實現(xiàn)數(shù)據(jù)封裝、隱藏以及代碼的預(yù)編譯、減少網(wǎng)絡(luò)負(fù)載、維護(hù)方便等優(yōu)點,所以被許多RDMBS和編程工具做支持。VB中的各類數(shù)據(jù)對象均都提供對存儲過程的支持。所以要靈活掌握調(diào)用存儲過程這一技術(shù)是十分必要。現(xiàn)在將VB中實現(xiàn)動態(tài)調(diào)用含DateTime類型的存儲過程介紹給讀者,讓您很快掌握和運用這個方法,解決你身邊的問題。
一、 簡述SQL Server 2000 日期時間類型(含dateTime類型字段)
該類型是由有效的日期或時間組成;年-月-日 小時:分:秒.千分之秒。其格式:
在現(xiàn)階段開發(fā)設(shè)計ERP系統(tǒng)項目中,尤其在創(chuàng)建數(shù)據(jù)庫表結(jié)構(gòu)時,均要考慮到DateTime字段的應(yīng)用,它能記載信息發(fā)生時間段的信息,能充分反映該區(qū)間數(shù)據(jù)變化;除特殊情況下(如:網(wǎng)吧、游戲吧等需記錄小時、分、秒)之外,一般要考慮到日期范圍即:[年、月、日]。
二、 我們以ADO為例來說明其實現(xiàn)步驟
現(xiàn)在動態(tài)調(diào)用含有DateTime字段的存儲過程,以幫助理解和掌握調(diào)用存儲過方法:
1>、使用Northwind的MS SQL中的例子庫(此例子SQL Server2000自帶)
Create procedure "Employee Sales by Country"
@Beginning_Date DateTime, @Ending_Date DateTime AS
SELECT Employees.Country, Employees.LastName, Employees.FirstName,
Orders.ShippedDate, Orders.OrderID, "Order Subtotals".Subtotal AS SaleAmount
FROM Employees INNER JOIN
(Orders INNER JOIN "Order Subtotals" ON Orders.OrderID = "Order Subtotals".OrderID)
ON Employees.EmployeeID = Orders.EmployeeID
WHERE Orders.ShippedDate Between @Beginning_Date And @Ending_Date
GO
2>、在VB中生成一個新工程,工程添加一個窗體,三個Command(1,2,3)按鈕,一個ListView控件,兩個日期DTpicker控件,兩個標(biāo)簽Label控件,一個文本TextBox控件。
3>、編程的設(shè)計思路
基于SQL Server數(shù)據(jù)庫表結(jié)構(gòu)定義DateTime類型的特點,我們采取截取有效日期部分,實現(xiàn)對這個含有DateTime字段的存儲過程動態(tài)調(diào)用,具體步驟如下:
①.定義:Dim Dt10,DT20 as Variant
②.采集動態(tài)日期賦值于以上兩個變量中
DT10 = Format(Trim(DT1.Value), "yyyy-mm-dd")
DT20 = Format(Trim(DT2.Value), "yyyy-mm-dd")
具備以上條件,可快捷、方便地獲取動態(tài)日期區(qū)間內(nèi)數(shù)據(jù)表的結(jié)果集。
下面就嚴(yán)格執(zhí)行調(diào)用存儲過程語法格式就可以了。請詳見VB的代碼。
VB對數(shù)據(jù)庫的編程有多種方法,如:ODBC API編程、RDO(遠(yuǎn)程數(shù)據(jù)對象)、DAO(數(shù)據(jù)訪問對象)、ADO(ActiveX 數(shù)據(jù)對象)方法編程實現(xiàn)方便、快捷,但靈活性稍差。由于存儲過程具有實現(xiàn)數(shù)據(jù)封裝、隱藏以及代碼的預(yù)編譯、減少網(wǎng)絡(luò)負(fù)載、維護(hù)方便等優(yōu)點,所以被許多RDMBS和編程工具做支持。VB中的各類數(shù)據(jù)對象均都提供對存儲過程的支持。所以要靈活掌握調(diào)用存儲過程這一技術(shù)是十分必要。現(xiàn)在將VB中實現(xiàn)動態(tài)調(diào)用含DateTime類型的存儲過程介紹給讀者,讓您很快掌握和運用這個方法,解決你身邊的問題。
一、 簡述SQL Server 2000 日期時間類型(含dateTime類型字段)
該類型是由有效的日期或時間組成;年-月-日 小時:分:秒.千分之秒。其格式:
在現(xiàn)階段開發(fā)設(shè)計ERP系統(tǒng)項目中,尤其在創(chuàng)建數(shù)據(jù)庫表結(jié)構(gòu)時,均要考慮到DateTime字段的應(yīng)用,它能記載信息發(fā)生時間段的信息,能充分反映該區(qū)間數(shù)據(jù)變化;除特殊情況下(如:網(wǎng)吧、游戲吧等需記錄小時、分、秒)之外,一般要考慮到日期范圍即:[年、月、日]。
二、 我們以ADO為例來說明其實現(xiàn)步驟
現(xiàn)在動態(tài)調(diào)用含有DateTime字段的存儲過程,以幫助理解和掌握調(diào)用存儲過方法:
1>、使用Northwind的MS SQL中的例子庫(此例子SQL Server2000自帶)
Create procedure "Employee Sales by Country"
@Beginning_Date DateTime, @Ending_Date DateTime AS
SELECT Employees.Country, Employees.LastName, Employees.FirstName,
Orders.ShippedDate, Orders.OrderID, "Order Subtotals".Subtotal AS SaleAmount
FROM Employees INNER JOIN
(Orders INNER JOIN "Order Subtotals" ON Orders.OrderID = "Order Subtotals".OrderID)
ON Employees.EmployeeID = Orders.EmployeeID
WHERE Orders.ShippedDate Between @Beginning_Date And @Ending_Date
GO
2>、在VB中生成一個新工程,工程添加一個窗體,三個Command(1,2,3)按鈕,一個ListView控件,兩個日期DTpicker控件,兩個標(biāo)簽Label控件,一個文本TextBox控件。
3>、編程的設(shè)計思路
基于SQL Server數(shù)據(jù)庫表結(jié)構(gòu)定義DateTime類型的特點,我們采取截取有效日期部分,實現(xiàn)對這個含有DateTime字段的存儲過程動態(tài)調(diào)用,具體步驟如下:
①.定義:Dim Dt10,DT20 as Variant
②.采集動態(tài)日期賦值于以上兩個變量中
DT10 = Format(Trim(DT1.Value), "yyyy-mm-dd")
DT20 = Format(Trim(DT2.Value), "yyyy-mm-dd")
具備以上條件,可快捷、方便地獲取動態(tài)日期區(qū)間內(nèi)數(shù)據(jù)表的結(jié)果集。
下面就嚴(yán)格執(zhí)行調(diào)用存儲過程語法格式就可以了。請詳見VB的代碼。