|
ados_dani
Starting Member
1 Post |
Posted - 2004-04-16 : 06:08:39
|
| Hello every body, first sorry my bad english.We're developing an aplicatión to store images, the data base has two tables one for commun data an another to images.The code (visual basic 6) calls the fist procedure "insertar_cabeceras" and this procedure calls the procedure "insertar_imagenes" as many times as images have that document.THE PROBLEM IS that it works in local machine, but when we execute it in the server, it looks correctly the records is written correctly but the image isn´t write or we can´t take it.ThanksDanithe code is listed belowCREATE PROCEDURE sp_Insertar_cabecera@User varchar(20), --usuario@Pag_T varchar(2), --Página total@Cam1 varchar(20), --campo1@Cam2 varchar(20), --campo2@Cam3 varchar(20), --campo3@Cam4 varchar(20), --campo4@Resol varchar(3), --resolucion@Tam_Ima varchar(10), --tamaño de imagen@Nom_Med varchar(10), --nombre del archivo de la imagen--Número de imágenes@CantImagenes int,-- Otros parámetros@srvname2 varchar (30),@login2 varchar (30),@password2 varchar (30),@dbname2 varchar (30),@tbname2 varchar (30),@colname2 varchar (30),@filename2 varchar (30)--path to the temporal files--@whereclause2 varchar (40), --@direction2 char(1),--Direccion de entrada o de salida--@out int OUTPUT--ID de registro de vueltaASdeclare @Id_refer as intdeclare @contador as intdeclare @Where as varchar(200)declare @strTemp as varchar(79)--Metemos el registro de CabeceraINSERT INTO Cabeceras VALUES(getdate(),@User,@Pag_T,@Cam1,@Cam2,@Cam3,@Cam4,@Resol,@Tam_Ima,@Nom_Med)select @id_refer = @@IDENTITYprint @id_referselect @contador=1SELECT @Where = 'WHERE Id_Registro = '+CAST( @Id_refer AS VARCHAR)print @Whereprint cast(@cantimagenes as varchar)+ ': number of images'WHILE (@contador<= @cantImagenes) BEGIN SELECT @Where = 'WHERE Id_Registro = '+CAST( @Id_refer AS VARCHAR)+' AND [N_Pag] = '+ CAST( @contador AS VARCHAR) SELECT @strTemp= @filename2 + CAST(@contador AS VARCHAR) +'.jpg' Insert into Imagenes values (@id_refer,@contador,0x0) exec sp_insertar_imagen @srvname = @srvname2, @login = @login2, @password = @password2, @dbname = @dbname2, @tbname = @tbname2, @colname = @colname2, @filename = @strTemp, @WhereClause = @Where, @direction= 'I' select @contador = @contador +1 ENDCREATE PROCEDURE sp_insertar_imagen ( @srvname varchar (30), @login varchar (30), @password varchar (30), @dbname varchar (30), @tbname varchar (30), @colname varchar (30), @filename varchar (30), @whereclause varchar (40), @direction char(1))AS DECLARE @exec_str varchar (255) SELECT @exec_str = 'C:\Ados\comun\SQLejec\textcopy /S ' + @srvname + ' /U ' + @login + ' /P ' + @password + ' /D ' + @dbname + ' /T ' + @tbname + ' /C ' + @colname + ' /W "' + @whereclause + '" /F ' + @filename + ' /' + @direction EXEC master..xp_cmdshell @exec_str print 'asdsad'GO |
|