Dear 各位大大:
請教各位大大,SQL Server資料庫中有一個型別為image,如何存取呢?其他各種欄位的值我都可以存取
但是image的資料型別就是沒有辦法,有誰可以教教我
Dear 各位大大:
請教各位大大,SQL Server資料庫中有一個型別為image,如何存取呢?其他各種欄位的值我都可以存取
但是image的資料型別就是沒有辦法,有誰可以教教我
怎麼都沒人回覆呢?
我最近也遇到這個問題了
當我以sql server 2005查看image欄位時會顯示為<二進位資料>
而以LabSQL的example中之Fetch a table去查詢時則此欄位為空白
有沒有人可以教我如何存取圖片資料呢?

提示一下:
這個功能要用Varient的icon才做的出來。
在LabSQL的工具裏面,現成的範例是已經把Varient的資料型態轉成string再轉成array了。
所以你如果要擷取圖片資料或是存入圖片資料的話,應該要在LabSQL裡面,當資料還是Varient型態的時候就轉成圖片,這樣就可以了。
把圖片存入資料庫也是一樣,把圖片轉成Varient,再存入資料庫中。
哇!好棒喔!
終於做出來了
謝謝班傑明兄的提示
當初看到提示後霧煞煞
不過實際研究了半天終於搞定了
跟大家分享我的做法

首先需先將SQL Fetch Data這個subvi改為如上圖紅框所示
即可將輸出之字串改為輸出variant型態
接下來將variant中存放圖片資訊之欄位資料以矩陣vi擷取出來並轉換為一維矩陣格式(如下圖紅框所示)
之後再依圖片資訊將一維矩陣轉換為二維矩陣(如下圖綠框所示,本處之一維矩陣第0及4個element定義圖片橫及縱軸pixel數,故圖片實際灰階矩陣由第9 element開始)

之後即可由IMAQ顯示圖片囉!
Dear Waneric,
你真厲利,可以寄程式給我嗎.
另外請問你如何將圖檔上傳到database,可以寄程式給我嗎,謝謝!
先前雖已可把圖片從已有的資料庫中擷取出來
延續先前的成果,這兩天開始在想如何把圖片再寫入其它資料庫中呢?
依照班兄的提示,必須把圖片轉成Variant
可是寫入的SQL指令卻必須是String
於是我只好再把圖片Variant轉成Flattened String
可是還是一直出現錯誤(Exception occured in Microsoft OLE DB Provider for SQL Server: 接近 '(' 之處的語法不正確。 in ADO Connection Execute.vi->SQL Execute.vi->Insert a image test.vi)
附上我的程式
有誰可以教教我呢?

因為你是字串,所以指令應該為
INSERT INTO image (image)
VALUES (‘你的Flattened String’)
感謝caeru大的提醒
我已將指示修正,加入了前後的引號
不過還是沒辦法成功寫入
這次錯誤訊息換成了:Exception occured in Microsoft OLE DB Provider for SQL Server: 遺漏字元字串 '' 後面的引號。 in ADO Connection Execute.vi->SQL Execute-test.vi->Fetch a image test2-遠端ok.vi(code:-2147217900)
請問還有哪裡出了問題呢?
有可能是你的Flattened String中帶有不合法的字元如 ’ ) ( 等,造成語法錯誤
另建議不要直接將圖放入sql,把圖放到伺服器上的資料夾並把路徑紀錄在sql中即可