Hi
I am creating an SP that will bulk insert data, the person calling the SP just needs to provide the file path and a number for the file and then the idea is i append this together to get the file to insert.
I have the SQL below which will not go past the BULK INSERT it is to do with my FilePath can anyone explain how I should be typing this?
Thanks very much
set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
go
CREATE PROCEDURE [dbo].[Get_DataFromFiles]
(
@.FileNumber VarCHAR(255),
@.FileID INT
)
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
--
-- 1. Insert Tasks Table Data and obtain the new ID
--
BULK INSERT Tasks FROM @.FilePath + 'FileNumber' + @.FileID WITH (FIELDTERMINATOR = '<$%^&>')
declare @.sql varchar(8000)
select @.sql = 'BULK INSERT Tasks FROM ' + @.FilePath + 'FileNumber' + @.FileID + ' WITH (FIELDTERMINATOR = ''<$%^&>'')'
exec (@.sql)|||
No but I forgot to show the backslash in the code i posted should read
select @.sql = 'BULK INSERT Tasks FROM ' + @.FilePath + '\FileNumber' + @.FileID + ' WITH (FIELDTERMINATOR = ''<$%^&>'')'
I still get an error though which is
Incorrect syntax near '@.FilePath'
|||Thanks for your help didnt realise I had to build the statement then execute it rather than just build as needed. Much appreciated.
No comments:
Post a Comment