日期:2014-05-18  浏览次数:20476 次

关于SSIS将excel导入数据库
excel里的数据,若SQL里没有的--插入
有的---更新

能否给个详细的示例,我这里一些字段为null的几条数据总是不能插入数据库,而数据不为NULL的能正常插入及更新数据,不解啊!!!

------解决方案--------------------
跟BI有何关系?
try
SQL code

BEGIN TRAN    --开启事务
with tbl as (
    select * 
    FROM OpenDataSource('Microsoft.Jet.OLEDB.4.0',   --下面修改路径和文件名
    'Data Source=E:\文件名.xls;     
    User ID=Admin;Password=;Extended Properties=Excel 8.0;')...sheet1$  --sheet名
    )
--判断条件是否成立
if exists(select * from [表] b   
            where exists(select * from tbl a where 。。。)  --判断条件自己给
        begin 
        --判断条件成立更新
            update b set XXXX  --自己给更新条件
            from tbl a join [表] b on 。。。--关联关系自己给
            where 。。。 --判断条件自己给
        end 
    else 
        begin 
        --判断条件不成立插入
            insert into [B表](列名)  
            select * from tbl    --自己给插入数据
        end 
COMMIT TRAN