>SQLSETPROP(0,"DispLogin", 2) >m1 = SQLSTRINGCONNECT("Driver={SQL Server Native Client 10.0};Server=(local)") >IF m1 < 0 > AERROR(laError) > MessageBox(laError[1,2]) > RETURN >ENDIF > >TEXT TO lcSQL NOSHOW > IF NOT EXISTS(SELECT * FROM sys.databases WHERE Name = 'TestBlob') > CREATE DATABASE TestBlob >ENDTEXT >IF sqlexec(m1,lcSql) < 0 > AERROR(laError) > MessageBox(laError[1,2]) > RETURN >ENDIF > >TEXT TO lcSQL NOSHOW > IF NOT EXISTS(SELECT * FROM TestBlob.Information_Schema.Tables WHERE Table_Name = 'TestMe ') > BEGIN > USE TestBlob > CREATE TABLE dbo.TestMe (Mytest varbinary(max)) > END > ELSE > TRUNCATE TABLE TestBlob.dbo.TestMe >ENDTEXT >IF sqlexec(m1,lcSql) < 0 > AERROR(laError) > MessageBox(laError[1,2]) > RETURN >ENDIF > > >cMyImage = GETFILE() >IF NOT EMPTY(cMyImage) > CREATE CURSOR crsTest (Fld1 BLOB) > INSERT INTO crsTest VALUES (FILETOSTR(cMyImage)) > TEXT TO lcSQL NOSHOW PRETEXT 15 TEXTMERGE > INSERT INTO TestBlob.dbo.TestMe (Mytest) > VALUES (?crsTest.Fld1) > ENDTEXT > IF sqlexec(m1,lcSql) < 0 > AERROR(laError) > MessageBox(laError[1,2]) > RETURN > ENDIF >ENDIF > >TRY > _screen.RemoveObject("MyImage") >CATCH >ENDTRY > > >**** I don't know why it didn't work with Native Cleint 10, but I'm almost sure that it worked with Native Client >**** I can't test it right know. >SQLDISCONNECT(0) >SQLSETPROP(0,"DispLogin", 2) >m1 = SQLSTRINGCONNECT("Driver={SQL Server};Server=(local)") >IF m1 < 0 > AERROR(laError) > MessageBox(laError[1,2]) > RETURN >ENDIF > > >CLOSE DATABASES ALL >SET VARCHARMAPPING ON >CURSORSETPROP("MapBinary", .t., 0) >TEXT TO lcSQL NOSHOW PRETEXT 15 TEXTMERGE > SELECT * FROM TestBlob.dbo.TestMe >ENDTEXT >IF sqlexec(m1,lcSql,[aaa]) < 0 > AERROR(laError) > MessageBox(laError[1,2]) >ENDIF >CURSORSETPROP("MapBinary", .f., 0) >_screen.AddObject("MyImage","Image") >WITH _screen.MyImage AS Image > .Height = 400 > .Width = 400 > .Top = 0 > .Left = 0 > .Stretch = 1 > .PictureVal = Mytest > .Visible = .t. >ENDWITH >