Here is the example how to import from DBF table to SQL Databases.
ALTER PROCEDURE [dbo].[Import_Table]
AS
DECLARE @vSQL varchar(3500)
DECLARE @vSQL2 varchar(2000)
DECLARE @vSQLD VARCHAR(1000)
BEGIN
IF EXISTS(SELECT * FROM SYS.TABLES WHERE [NAME]='testtbl')
BEGIN
DROP TABLE testtbl
END
IF EXISTS(SELECT * FROM SYS.SERVERS WHERE [NAME]='DBF')
BEGIN
EXEC sp_dropserver 'DBF','droplogins'
END
EXEC SP_ADDLINKEDSERVER
@SERVER='DBF', @SRVPRODUCT ='VFP',
@PROVIDER='VFPOLEDB', @DATASRC='\\server\Temp\testtbl.DBF'
SET @vSQL = 'CREATE TABLE [dbo].[testtbl](
[LOGNo] [float] NULL,
[SID] [varchar](8) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[LS] [datetime] NULL,
[LE] [datetime] NULL,
[LT] [varchar](8) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[GP] [varchar](8) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[LH] [varchar](1) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[LD] [float] NULL,
[LU] [varchar](1) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[LA] [float] NULL,
[CL] [varchar](8) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[PI] [varchar](1) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[HDL] [varchar](254) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[LOGDATE] [datetime] NULL,
[LOGTIME] [varchar](254) COLLATE SQL_Latin1_General_CP1_CI_AS NULL
) ON [PRIMARY]'
SET @vSQL2='INSERT INTO dbo.LV SELECT * FROM DBF...LV'
EXEC (@vSQL)
EXEC (@vSQL2)
IF EXISTS(SELECT * FROM SYS.SERVERS WHERE [NAME]='mdbDB')
BEGIN
EXEC sp_dropserver 'DBF','droplogins'
END
END
ALTER PROCEDURE [dbo].[Import_Table]
AS
DECLARE @vSQL varchar(3500)
DECLARE @vSQL2 varchar(2000)
DECLARE @vSQLD VARCHAR(1000)
BEGIN
IF EXISTS(SELECT * FROM SYS.TABLES WHERE [NAME]='testtbl')
BEGIN
DROP TABLE testtbl
END
IF EXISTS(SELECT * FROM SYS.SERVERS WHERE [NAME]='DBF')
BEGIN
EXEC sp_dropserver 'DBF','droplogins'
END
EXEC SP_ADDLINKEDSERVER
@SERVER='DBF', @SRVPRODUCT ='VFP',
@PROVIDER='VFPOLEDB', @DATASRC='\\server\Temp\testtbl.DBF'
SET @vSQL = 'CREATE TABLE [dbo].[testtbl](
[LOGNo] [float] NULL,
[SID] [varchar](8) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[LS] [datetime] NULL,
[LE] [datetime] NULL,
[LT] [varchar](8) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[GP] [varchar](8) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[LH] [varchar](1) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[LD] [float] NULL,
[LU] [varchar](1) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[LA] [float] NULL,
[CL] [varchar](8) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[PI] [varchar](1) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[HDL] [varchar](254) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[LOGDATE] [datetime] NULL,
[LOGTIME] [varchar](254) COLLATE SQL_Latin1_General_CP1_CI_AS NULL
) ON [PRIMARY]'
SET @vSQL2='INSERT INTO dbo.LV SELECT * FROM DBF...LV'
EXEC (@vSQL)
EXEC (@vSQL2)
IF EXISTS(SELECT * FROM SYS.SERVERS WHERE [NAME]='mdbDB')
BEGIN
EXEC sp_dropserver 'DBF','droplogins'
END
END