天天看點

LabVIEW操作ACCESS、MySQL、SQL server資料庫實作按照時間段查詢

作者:三易電子工作室

使用LabVIEW操作ACCESS、MySQL、SQL server資料庫實作按照時間段查詢資料

使用LabVIEW操作資料庫需要使用專門的工具包。主流的工具包有兩個:“第三方資料庫工具包LabSQL”和“官方資料庫工具包Database Connectivity Toolkit”。三易電子工作室推薦使用官方資料庫工具包,官方資料庫工具包的函數都帶官方幫助和範例,使用起來友善一些。新版本LabVIEW自帶這個工具包,無需單獨安裝。本文将使用官方資料庫工具包來實作對ACCESS、MySQL、SQL server三種資料庫的通路,實作按照時間段查詢資料。

1、工作原理

資料庫工具包“Database Connectivity Toolkit”共有29個函數,如圖1所示。這29個函數可以實作對資料庫的連接配接、增、删、改、查、傳回資料的處理等。LabVIEW對資料庫操作的核心本質是:利用工具包裡的函數通過調用SQL語句的方式來實作對資料庫的操作。是以說想實作LabVIEW對資料庫操作,就得學習好兩方面的知識:(1)掌握SQL語句編寫(2)掌握LabVIEW資料庫工具包函數的用法。

LabVIEW操作ACCESS、MySQL、SQL server資料庫實作按照時間段查詢

圖1 資料庫操作相關函數

SQL是結構化查詢語言的縮寫,用來通路和操作資料庫系統。SQL語句既可以查詢資料庫中的資料,也可以添加、更新和删除資料庫中的資料,還可以對資料庫進行管理和維護操作。不同的資料庫,都支援SQL,這樣,我們通過學習SQL這一種語言,就可以操作各種不同的資料庫。

雖然SQL已經被ANSI組織定義為标準,不幸地是,各個不同的資料庫對标準的SQL支援不太一緻。并且,大部分資料庫都在标準的SQL上做了擴充。也就是說,如果隻使用标準SQL,理論上所有資料庫都可以支援,但如果使用某個特定資料庫的擴充SQL,換一個資料庫就不能執行了。例如,Oracle把自己擴充的SQL稱為PL/SQL,Microsoft把自己擴充的SQL稱為T-SQL。

現實情況是,如果我們隻使用标準SQL的核心功能,那麼所有資料庫通常都可以執行。不常用的SQL功能,不同的資料庫支援的程度都不一樣。而各個資料庫支援的各自擴充的功能,通常我們把它們稱之為“方言”。

本文之是以專門講解“實作按照時間段查詢資料”,也是因為上面提到的“SQL方言”的問題。對于ACCESS、MySQL、SQL server這三種資料庫,其“按照時間段查詢資料”的SQL語句有細微差異。下文将對具體的實作進行詳細的講解。

2、ACCESS資料庫實作按照時間段查詢資料

2.1 資料庫情況描述

資料庫表名為:“商品”,每列的資料類型詳見圖2,表中内容詳見圖3。

LabVIEW操作ACCESS、MySQL、SQL server資料庫實作按照時間段查詢

圖2 每列的資料類型

LabVIEW操作ACCESS、MySQL、SQL server資料庫實作按照時間段查詢

圖3 表内資料

2.2 要求

(1)查詢 2022/5/4 8:00:00 到 2023/2/5 17:30:00 之間的全部資料;

(2)查詢 2022/5/4 8:00:00 到 至今的 商品名稱資料;

(3)查詢 2022/5/4 8:00:00 之前的 商品名稱、商品種類資料;

2.3 ACCESS資料庫SQL語句實作方式

SELECT * FROM 商品 WHERE 登記日期 between #2022/5/4 8:00:00# and #2023/2/5 17:30:00#;
SELECT 商品名稱 FROM 商品 WHERE 登記日期 >= #2022/5/4 8:00:00#;
SELECT 商品名稱,商品種類 FROM 商品 WHERE 登記日期 < #2022/5/4 8:00:00#;           

注意事項:“登記日期”這一列的資料類型必須為“日期/時間”

2.4 LabVIEW程式實作方式

程式實作方式詳見圖4-圖9。程式實作比較簡單,分為四步:

  1. 連接配接資料庫

LabVIEW與ACCESS資料庫連接配接有三種方式。這兒選用最友善的方式:字元串連接配接的方式。這三種方式這兒就不展開講解了,含興趣的可以百度一下。或者看一下三易電子工作室的《LabVIEW與資料庫存儲實戰視訊教程》。

  1. 調用SQL語句

LabVIEW調用SQL語句對資料庫執行“增、删、改、查“操作有三種方法,這三種方法各有特點,我們這兒選用第二種方法(比較直覺),使用“Execute Query.vi”調用SQL語句。對這三種方式的詳細使用感興趣的話,可以看一下三易電子工作室的《LabVIEW與資料庫存儲實戰視訊教程》。

2.2節的三個要求,隻需要調用不同的SQL語句就行,程式實作方式完全一樣。

  1. 擷取查詢得到的資料

使用“Fetch Recordset Data.vi”函數擷取。

  1. 關閉句柄

關閉已經連接配接的資料庫。

本文中涉及的資料庫檔案、LabVIEW源碼、文檔可以聯系淘寶客服擷取。給客服發送“資料庫按時間段查詢”,自動獲得。三易電子工作室淘寶店鋪位址:淘寶店鋪-三易電子工作室

LabVIEW操作ACCESS、MySQL、SQL server資料庫實作按照時間段查詢

圖4 要求1實作方式---程式框圖

LabVIEW操作ACCESS、MySQL、SQL server資料庫實作按照時間段查詢

圖5 要求1實作方式---前面闆

LabVIEW操作ACCESS、MySQL、SQL server資料庫實作按照時間段查詢

圖6 要求2實作方式---程式框圖

LabVIEW操作ACCESS、MySQL、SQL server資料庫實作按照時間段查詢

圖7 要求2實作方式---前面闆

LabVIEW操作ACCESS、MySQL、SQL server資料庫實作按照時間段查詢

圖8 要求3實作方式---程式框圖

LabVIEW操作ACCESS、MySQL、SQL server資料庫實作按照時間段查詢

圖9 要求3實作方式---前面闆

2.5 擴充

目的:時間資訊由前面闆輸入

實作也非常簡單,詳見圖10和圖11。這兒使用了兩個函數“格式化日期/時間字元串.vi”和“格式化寫入字元串.vi”兩個函數。

LabVIEW操作ACCESS、MySQL、SQL server資料庫實作按照時間段查詢

圖10 時間資訊由前面闆輸入---程式框圖

LabVIEW操作ACCESS、MySQL、SQL server資料庫實作按照時間段查詢

圖11 時間資訊由前面闆輸入---前面闆

3、MySQL資料庫實作按照時間段查詢資料

3.1 資料庫情況描述

資料庫表名為:“商品”,每列的資料類型詳見圖12,表中内容詳見圖13。

LabVIEW操作ACCESS、MySQL、SQL server資料庫實作按照時間段查詢

圖12 每列的資料類型

LabVIEW操作ACCESS、MySQL、SQL server資料庫實作按照時間段查詢

圖13 表内資料

3.2 要求

(1)查詢 2022/5/4 8:00:00 到 2023/2/5 17:30:00 之間的全部資料;

(2)查詢 2022/5/4 8:00:00 到 至今的 商品名稱資料;

(3)查詢 2022/5/4 8:00:00 之前的 商品名稱、商品種類資料;

3.3 MySQL資料庫SQL語句實作方式

SELECT * FROM 商品 WHERE 登記日期 between ‘2022/5/4 8:00:00’ and ‘2023/2/5 17:30:00’;
SELECT 商品名稱 FROM 商品 WHERE 登記日期 >= ‘2022/5/4 8:00:00’;
SELECT 商品名稱,商品種類 FROM 商品 WHERE 登記日期 < ‘2022/5/4 8:00:00’;           

注意事項:“登記日期”這一列的資料類型必須為“datetime”

3.4 LabVIEW程式實作方式

程式實作方式與2.4節ACCESS實作方式一緻。有兩方面差異

(1)連接配接資料庫有差異,LabVIEW與MySQL資料庫連接配接有兩種方式,這兩種方式這兒就不展開講解了,含興趣的可以百度一下。或者看一下三易電子工作室的《LabVIEW與資料庫存儲實戰視訊教程》。

(2)調用的SQL語句有差異,調用的語句詳見3.3節;

本文中涉及的資料庫檔案、LabVIEW源碼、文檔可以聯系淘寶客服擷取。給客服發送“資料庫按時間段查詢”,自動獲得。三易電子工作室淘寶店鋪位址:淘寶店鋪-三易電子工作室

4、SQL server資料庫實作按照時間段查詢資料

4.1 資料庫情況描述

資料庫表名為:“商品”,每列的資料類型詳見圖14,表中内容詳見圖15。

LabVIEW操作ACCESS、MySQL、SQL server資料庫實作按照時間段查詢

圖14 每列的資料類型

LabVIEW操作ACCESS、MySQL、SQL server資料庫實作按照時間段查詢

圖15 表内資料

4.2 要求

(1)查詢 2022/5/4 8:00:00 到 2023/2/5 17:30:00 之間的全部資料;

(2)查詢 2022/5/4 8:00:00 到 至今的 商品名稱資料;

(3)查詢 2022/5/4 8:00:00 之前的 商品名稱、商品種類資料;

4.3 SQL server資料庫SQL語句實作方式

SELECT * FROM 商品 WHERE 登記日期 between ‘2022/5/4 8:00:00’ and ‘2023/2/5 17:30:00’;
SELECT 商品名稱 FROM 商品 WHERE 登記日期 >= ‘2022/5/4 8:00:00’;
SELECT 商品名稱,商品種類 FROM 商品 WHERE 登記日期 < ‘2022/5/4 8:00:00’;           

注意事項:“登記日期”這一列的資料類型必須為“datetime”

4.4 LabVIEW程式實作方式

程式實作方式與2.4節ACCESS實作方式一緻。有兩方面差異

(1)連接配接資料庫有差異,LabVIEW與SQL server資料庫連接配接有三種方式,這三種方式這兒就不展開講解了,含興趣的可以百度一下。或者看一下三易電子工作室的《LabVIEW與資料庫存儲實戰視訊教程》。

(2)調用的SQL語句有差異,調用的語句詳見4.3節;

本文中涉及的資料庫檔案、LabVIEW源碼、文檔可以聯系淘寶客服擷取。給客服發送“資料庫按時間段查詢”,自動獲得。三易電子工作室淘寶店鋪位址:淘寶店鋪-三易電子工作室

5、結束語

在最後給大家推薦一門視訊課程《LabVIEW與資料庫存儲實戰視訊教程》,三易電子工作室推出的,課程品質杠杠的(三易出品,品質的保證!!!)。主要内容如下:

(1)與資料庫相關的29個函數均進行了詳細講解;

(2)包含LabVIEW與3大主流資料庫的存儲與讀取;

(3)多種方法實作對資料庫的連接配接;

(4)三種方法實作對資料庫表内容的“增、删、改、查”;

(5)不僅僅講到普通資料,還有二進制檔案的存儲與讀取!

感興趣的可以去三易電子工作室官方淘寶店鋪去逛逛。店鋪位址:淘寶店鋪-三易電子工作室