Welcome to Sign in | Help

Re: executa dts dar schimba automat sursa - SQL Server 2005

  •  12-11-2008, 11:43 AM

    Re: executa dts dar schimba automat sursa - SQL Server 2005

    am facut astfel pana la urma:

    declare @var varchar (50)

    set @var = 'dir /B C:\TMP'

    if object_id('tempdb..#tbl_dbf ') is not null drop table #tbl_dbf

    create table #tbl_dbf

    (

    NameDbf varchar (50)

    )

    insert into #tbl_dbf

    exec xp_cmdshell @var

    delete from #tbl_dbf where NameDbf is null

    declare @dbf as varchar (50)

    declare c cursor for

    select replace(NameDbf, '.DBF', '') from #tbl_dbf

    open c

    fetch next from c into @dbf

    while @@fetch_status=0

    begin

    exec Insert_DBF @dbf

    fetch next from c into @dbf

    end

    close c

    deallocate c

    iar procedura Insert_DBF este:

    ALTER PROCEDURE [dbo].[Insert_DBF]

    ( @Fisier varchar(10))

    AS

    DECLARE @SqlToRun NVARCHAR(MAX)

    SET @SqlToRun = N'INSERT INTO Table

    SELECT * 

    FROM OPENROWSET(

    ''MSDASQL'',

    ''Driver={Microsoft dBase Driver (*.dbf)};DBQ=C:\TMP\'',

    ''SELECT * FROM ' + @Fisier + ''')'

    exec (@SqlToRun)

    go

    si merge super ok mai trebuie doar sa descoper de ce primesc eroarea:

     Msg 7399, Level 16, State 1, Line 1

    The OLE DB provider "MSDASQL" for linked server "(null)" reported an error. The provider did not give any information about the error.

    Msg 7303, Level 16, State 1, Line 1

    Cannot initialize the data source object of OLE DB provider "MSDASQL" for linked server "(null)".

    si am o banuiala ca este de la un dll si anume sqlunirl.dll pe care l-am inlocuit cu cel de pe o statie pe care tot acest proces merge f bine doar ca nu pot da restart la server decat la noapte ca sa testez daca merge

    multumesc.

    alex.

View Complete Thread
Powered by Community Server (Commercial Edition), by Telligent Systems