smakhavan
چهارشنبه 18 فروردین 1389, 16:51 عصر
سلام
من يك سري دستور نوشتم كه با استفاده از اونها ميشه يك جدول را با استفاده از tsql به اكسس فرستاد
DECLARE @sql nvarchar(1000)
DECLARE @provider nvarchar(100)
DECLARE @FileName nvarchar(100)
DECLARE @query nvarchar(1000)
DECLARE @username nvarchar(100)
DECLARE @password nvarchar(100)
set @provider = 'Microsoft.Jet.OLEDB.4.0'
set @FileName = 'c:\a.mdb'
set @query = '(Parvandeh, LastName, Firstname, Father, Identify, D1, D2, D3, D4, D5) Select Parvandeh, LastName, Firstname, Father, Identify, D1, D2, D3, D4, D5 from vPersonal'
set @username = 'admin'
set @password = ''
set @sql = 'insert into OPENrowset(''' + @provider + ''',''' + @FileName + '''; ''' + @username + ''';''' + @password + ''',Personal) ' + @query
print @sql
exec(@sql)
دستورات به خوبي كار ميكنه و نتايج را داخل فايل اكسس مينويسه، اما وقتي همين دستورات را داخل يه sp مينويسم به صورت
CREATE PROCEDURE pExportAccess
AS
DECLARE @sql nvarchar(1000)
DECLARE @provider nvarchar(100)
DECLARE @FileName nvarchar(100)
DECLARE @query nvarchar(1000)
DECLARE @username nvarchar(100)
DECLARE @password nvarchar(100)
set @provider = 'Microsoft.Jet.OLEDB.4.0'
set @FileName = 'c:\a.mdb'
set @query = '(Parvandeh, LastName, Firstname, Father, Identify, D1, D2, D3, D4, D5) Select Parvandeh, LastName, Firstname, Father, Identify, D1, D2, D3, D4, D5 from vPersonal'
set @username = 'admin'
set @password = ''
set @sql = 'insert into OPENrowset(''' + @provider + ''',''' + @FileName + '''; ''' + @username + ''';''' + @password + ''',Personal) ' + @query
print @sql
exec(@sql)
GO
و با دستور
exec pExportAccess
فراخواني ميكنمش با خطاي
Heterogeneous queries require the ANSI_NULLS and ANSI_WARNINGS options to be set for the connection. This ensures consistent query semantics. Enable these options and then reissue your query.
مواجه ميشم! اشكال به نظرتون از كجاست؟
من يك سري دستور نوشتم كه با استفاده از اونها ميشه يك جدول را با استفاده از tsql به اكسس فرستاد
DECLARE @sql nvarchar(1000)
DECLARE @provider nvarchar(100)
DECLARE @FileName nvarchar(100)
DECLARE @query nvarchar(1000)
DECLARE @username nvarchar(100)
DECLARE @password nvarchar(100)
set @provider = 'Microsoft.Jet.OLEDB.4.0'
set @FileName = 'c:\a.mdb'
set @query = '(Parvandeh, LastName, Firstname, Father, Identify, D1, D2, D3, D4, D5) Select Parvandeh, LastName, Firstname, Father, Identify, D1, D2, D3, D4, D5 from vPersonal'
set @username = 'admin'
set @password = ''
set @sql = 'insert into OPENrowset(''' + @provider + ''',''' + @FileName + '''; ''' + @username + ''';''' + @password + ''',Personal) ' + @query
print @sql
exec(@sql)
دستورات به خوبي كار ميكنه و نتايج را داخل فايل اكسس مينويسه، اما وقتي همين دستورات را داخل يه sp مينويسم به صورت
CREATE PROCEDURE pExportAccess
AS
DECLARE @sql nvarchar(1000)
DECLARE @provider nvarchar(100)
DECLARE @FileName nvarchar(100)
DECLARE @query nvarchar(1000)
DECLARE @username nvarchar(100)
DECLARE @password nvarchar(100)
set @provider = 'Microsoft.Jet.OLEDB.4.0'
set @FileName = 'c:\a.mdb'
set @query = '(Parvandeh, LastName, Firstname, Father, Identify, D1, D2, D3, D4, D5) Select Parvandeh, LastName, Firstname, Father, Identify, D1, D2, D3, D4, D5 from vPersonal'
set @username = 'admin'
set @password = ''
set @sql = 'insert into OPENrowset(''' + @provider + ''',''' + @FileName + '''; ''' + @username + ''';''' + @password + ''',Personal) ' + @query
print @sql
exec(@sql)
GO
و با دستور
exec pExportAccess
فراخواني ميكنمش با خطاي
Heterogeneous queries require the ANSI_NULLS and ANSI_WARNINGS options to be set for the connection. This ensures consistent query semantics. Enable these options and then reissue your query.
مواجه ميشم! اشكال به نظرتون از كجاست؟