Sql server Excel 2007和SQL Server 2008R2之间的写回
在Excel 2007和MS SQL Server 2008 R2之间构建写回的最有效方法是什么 我需要一个稳定的解决方案,以沟通之间的Excel和SQL Server。我需要从数据库中的表下载数据,计算并在Excel中填写新数据,然后将这些新值提交到数据库Sql server Excel 2007和SQL Server 2008R2之间的写回,sql-server,sql-server-2008,excel,ssis,excel-2007,Sql Server,Sql Server 2008,Excel,Ssis,Excel 2007,在Excel 2007和MS SQL Server 2008 R2之间构建写回的最有效方法是什么 我需要一个稳定的解决方案,以沟通之间的Excel和SQL Server。我需要从数据库中的表下载数据,计算并在Excel中填写新数据,然后将这些新值提交到数据库 我发现SSI应该能够做到这一点,但如果我错过了一种更标准的连接方式,那可能就太过分了 我已经像这样使用了动态sql SET @sQl='SELECT ID=ROW_NUMBER() OVER(ORDER BY F2), * into xlC
我发现SSI应该能够做到这一点,但如果我错过了一种更标准的连接方式,那可能就太过分了 我已经像这样使用了动态sql
SET @sQl='SELECT ID=ROW_NUMBER() OVER(ORDER BY F2), * into xlCitems FROM '+dbo.fsExcelODS(@XLSPATH,'CITEMS')+' WHERE DESCRIPTION IS NOT NULL'
EXEC SP_EXECUTESQL @sql;
标量函数dbo.fsexcelODS返回openDatasoure语句,如中所定义
ALTER function [dbo].[fsExcelODS](@pathtods varchar(max),@sourceTable varchar(200))returns varchar(max)as
begin
return 'OpenDataSource('+dbo.fsQuoteString('Microsoft.ACE.OLEDB.12.0')+','+dbo.fsquoteString('Data Source='+dbo.fsdquotestring(@pathtods)+';Extended Properties="Excel 12.0;HDR=YES;IMEX=10"')+')...'+@sourcetable
end
我已经像这样使用了动态sql
SET @sQl='SELECT ID=ROW_NUMBER() OVER(ORDER BY F2), * into xlCitems FROM '+dbo.fsExcelODS(@XLSPATH,'CITEMS')+' WHERE DESCRIPTION IS NOT NULL'
EXEC SP_EXECUTESQL @sql;
标量函数dbo.fsexcelODS返回openDatasoure语句,如中所定义
ALTER function [dbo].[fsExcelODS](@pathtods varchar(max),@sourceTable varchar(200))returns varchar(max)as
begin
return 'OpenDataSource('+dbo.fsQuoteString('Microsoft.ACE.OLEDB.12.0')+','+dbo.fsquoteString('Data Source='+dbo.fsdquotestring(@pathtods)+';Extended Properties="Excel 12.0;HDR=YES;IMEX=10"')+')...'+@sourcetable
end
计算数据和新数据是否基于用户输入?如果不是的话,当您可以在SQL Server中完成所有工作时,转到excel似乎毫无意义。数据是用户定义的,不能仅用SQL中的逻辑来完成。计算出的数据和新数据是否基于用户输入?如果不是,那么当您可以在SQL Server中完成所有工作时,使用excel似乎毫无意义。数据是用户定义的,不能仅使用SQL中的逻辑来完成。