在VFP中读取SQL-Server数据库Image字段
来源:优易学  2010-1-15 19:40:21   【优易学:中国教育考试门户网】   资料下载   IT书店
  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:

责任编辑:cyth

文章搜索:
 相关文章
热点资讯
资讯快报
热门课程培训