VFP 愛用者社區 首頁 VFP 愛用者社區
本討論區為 Visual Foxpro 愛用者經驗交流的地方, 請多多利用"搜尋"的功能, 先查看看有無前例可循, 如果還有不懂的再發問. 部份主題有附加檔案, 須先註冊成為社區居民才可以下載.
 
 常見問題常見問題   搜尋搜尋   會員列表會員列表   會員群組會員群組   會員註冊會員註冊 
 個人資料個人資料   登入檢查您的私人訊息登入檢查您的私人訊息   登入登入

VFP 在SQL中存取图片

 
發表新主題   回覆主題    VFP 愛用者社區 首頁 -> VFP 討論區
上一篇主題 :: 下一篇主題  
發表人 內容
billjiang



註冊時間: 2006-06-09
文章: 5


第 1 樓

發表發表於: 星期五 六月 09, 2006 8:02 pm    文章主題: VFP 在SQL中存取图片 引言回覆

哪位高手有VFP在SQL数据库中存取图片的代码,多谢了!急急急!! Sad
回頂端
檢視會員個人資料 發送私人訊息
billjiang



註冊時間: 2006-06-09
文章: 5


第 2 樓

發表發表於: 星期日 六月 11, 2006 12:00 am    文章主題: 引言回覆

不知道我的问题太低级不值得看还是问题太难,一直没有人回复,失望极了! 不过还好啦,经过两天的奋战,我终于把这个问题搞定了.愉快愉快! 现在和大家分享.这是参考VB相关代码才做出来的.经过测试没有问题,如果大家觉得好就投我一票吧!先谢谢了!



******************存入图片***********************
LOCAL lcConnStr, lcSQL, loConnection
lcconnstr="Driver={SQL Server};Server=PERSONAL-1CB;UID=billjiang;PWD=billjiang;DataBase=kashiondata"
lcSQL = "SELECT * FROM pictest"
*!* 创建对象.
loConnection = CREATEOBJECT("ADODB.Connection")
loRecordSet = CREATEOBJECT("ADODB.Recordset")
loADOStream = CREATEOBJECT("ADODB.Stream")
*!* 打开连接.
loConnection.OPEN(lcConnStr)
loRecordSet.OPEN(lcSQL,loConnection,2,3)

lorecordset.addnew
lorecordset.fields("pic_id").value=2

*!* 设置 Stream 对象属性.
loADOStream.TYPE = 1 && 1=二进制数据, 2=文本数据.
loADOStream.OPEN
tp=ALLTRIM(thisform.text2.Value)
IF !EMPTY(tp)
loADOStream.LoadFromFile(tp)
lorecordset.Fields("picture") = loADOStream.Read
lorecordset.update
ELSE
RETURN
ENDIF
loRecordSet.CLOSE
loConnection.CLOSE
loADOStream.CLOSE
*******************************读取图片***********************************
LOCAL lcConnStr, lcSQL, loConnection,lcImageName
lcconnstr="Driver={SQL Server};Server=PERSONAL-1CB;UID=billjiang;PWD=billjiang;DataBase=kashiondata"
lcSQL = "SELECT * FROM pictest"
*!* 创建对象.
loConnection = CREATEOBJECT("ADODB.Connection")
loRecordSet = CREATEOBJECT("ADODB.Recordset")
loADOStream = CREATEOBJECT("ADODB.Stream")
*!* 打开连接.
loConnection.OPEN(lcConnStr)
loRecordSet.OPEN(lcSQL,loConnection,2,3)
lorecordset.movefirst
lorecordset.movenext

loADOStream.TYPE = 1 && 1=二进制数据, 2=文本数据.
loADOStream.OPEN
loADOStream.WRITE(loRecordSet.FIELDS("picture")) && 传递数据到 Stream 对象.
lcImageName = "mypic.bmp" && 设置本地文件名.
loADOStream.SaveToFile(lcImageName,2) && 保存 stream 对象到一个文件.
thisform.image1.Picture="e:\kxerp\mypic.bmp"
thisform.refresh
loRecordSet.CLOSE
loConnection.CLOSE
loADOStream.CLOSE
回頂端
檢視會員個人資料 發送私人訊息
從之前的文章開始顯示:   
發表新主題   回覆主題    VFP 愛用者社區 首頁 -> VFP 討論區 所有的時間均為 台北時間 (GMT + 8 小時)
1頁(共1頁)

 
前往:  
無法 在這個版面發表文章
無法 在這個版面回覆文章
無法 在這個版面編輯文章
無法 在這個版面刪除文章
無法 在這個版面進行投票
無法 在這個版面附加檔案
無法 在這個版面下載檔案


Powered by phpBB © 2001, 2005 phpBB Group
正體中文語系由 phpbb-tw 維護製作