Stored Procedure & Image

Discussion of open issues, suggestions and bugs regarding SDAC (SQL Server Data Access Components) for Delphi, C++Builder, Lazarus (and FPC)
Post Reply
hmelihkara
Posts: 21
Joined: Fri 09 Nov 2007 23:29

Stored Procedure & Image

Post by hmelihkara » Sat 10 Nov 2007 16:22

Is there any way that i can post image with a stored procedure?
MSDN said "images can't be post by sps caused by limitations"!

Antaeus
Posts: 2098
Joined: Tue 14 Feb 2006 10:14

Post by Antaeus » Mon 12 Nov 2007 09:54

You can do it by executing commands like the one below through TMSQuery/TMSCommand conmonents.

Code: Select all

  {:EmpNO = CALL SDAC_InsertEmp;1(:ENAME, :JOB, :IMG)}
Before executing load an image into the parameter:

Code: Select all

  Params.ParamByName('img').LoadFromFile(ImagePath, ftBlob);
Another way is TMSStoredProc component:

Code: Select all

  MSStoredProc1.StoredProcName := 'SDAC_InsertEmp';
  MSStoredProc1.Params.ParamByName('ENAME').AsString := 'AName';
  MSStoredProc1.Params.ParamByName('Job').AsString := 'AJob';
  MSStoredProc1.Params.ParamByName('img').LoadFromFile(ImagePath, ftBlob);
  MSStoredProc1.Execute;
The procedure is defined in this way:

Code: Select all

PROCEDURE [dbo].[SDAC_InsertEmp]  
	@ENAME	nvarchar(20),
	@JOB	nvarchar(10),
	@img	image
AS
	INSERT INTO 
		EMP (ENAME, JOB, img) 
	VALUES
		(@ENAME, @JOB, @img)
	RETURN @@Identity;

Post Reply