在VFP中读取SQL-Server数据库Image字段

来源:计算机等级考试    发布时间:2012-08-28    计算机等级考试视频    评论

  001: FUNCTION ReadImageFromSQL
  002: *-- 传递参数:员工工号,是否使用本地临时照片文件
  003: LPARAMETERS tcPerCode,tlUseLocalPhoto
  004:
  005: LOCAL loConn,loRS,loStream
  006: LOCAL lcDriverName,lcServerName,lcDatabaseName,lcUserName,lcPassword
  007: LOCAL lcConnectString
  008: LOCAL lcTempImageFile,luPhotoData,lcPhotoPath
  009: lcPhotoPath = GETENV("TEMP") + "/HR_Photo/"
  010: lcTempImageFile = lcPhotoPath + tcPerCode + ".bmp"
  011:
  012: *-- 如果使用本地照片就从本地找
  013: IF tlUseLocalPhoto
  014: IF FILE("&lcTempImageFile")
  015: RETURN lcTempImageFile
  016: ENDIF
  017: ENDIF
  018:
  019: loConn= CREATEOBJECT("Adodb.Connection")
  020: loRS?= CREATEOBJECT("Adodb.Recordset")
  021: loStream = CREATEOBJECT("ADODB.Stream")
  022:
  023: *-- 连接字符串
  024: lcDriverName?= "{SQL Server}"
  025: lcServerName?= ReadIni("ServerSetting","ServerName",100)
  026: lcDatabaseName?= ReadIni("ServerSetting","DatabaseName",100)
  027: lcUserName?= ReadIni("ServerSetting","SystemAdmin",100)
  028: lcPassword?= ReadIni("ServerSetting","Password",100)
  029: lcConnectString?= ;
  030: "DRIVER=" + lcDriverName + ";" + ;
  031: "SERVER=" + lcServerName + ";" + ;
  032: "DATABASE=" + lcDataBaseName + ";" + ;
  033: "UID=" + lcUserName + ";" + ;
  034: "PWD=" + lcPassword
  035:
  036: IF !DIRECTORY("&lcPhotoPath")
  037: MD lcPhotoPath
  038: ENDIF
  039:
  040: loConn.ConnectionString = lcConnectString
  041: loConn.Open
  042:
  043: loRS.ActiveConnection = loConn
  044: loRS.LockType= 2?&& adLockPessimistic
  045: loRS.CursorType= 3?&& adOpenStatic
  046: loRS.source = "select ID,per_code,photo from personal where per_code = '" + tcPerCode + "'"
  047: loRS.Open
  048:
  049: luPhotoData = loRS.Fields("photo").Value
  050: loRS.Close
  051: loConn.Close
  052:
  053: If !IsNull(luPhotoData) Then
  054: loStream.Type = 1 && adTypeBinary
  055: loStream.Open
  056: loStream.Write(luPhotoData)
  057: loStream.SaveToFile(lcTempImageFile,2)
  058: Else
  059: lcTempImageFile = ""
  060: EndIf
  061:
  062: RETURN lcTempImageFile
  063:

视频学习

我考网版权与免责声明

① 凡本网注明稿件来源为"原创"的所有文字、图片和音视频稿件,版权均属本网所有。任何媒体、网站或个人转载、链接转贴或以其他方式复制发表时必须注明"稿件来源:我考网",违者本网将依法追究责任;

② 本网部分稿件来源于网络,任何单位或个人认为我考网发布的内容可能涉嫌侵犯其合法权益,应该及时向我考网书面反馈,并提供身份证明、权属证明及详细侵权情况证明,我考网在收到上述法律文件后,将会尽快移除被控侵权内容。

最近更新

社区交流

考试问答