程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SqlServer數據庫 >> 關於SqlServer >> 通過本地Excel文件更新遠程SQL SERVER表中數據

通過本地Excel文件更新遠程SQL SERVER表中數據

編輯:關於SqlServer

語句如下 :

1.添加遠程服務器到本地


exec sp_addlinkedserver  'web_Server','','sqloledb','ServerName'
exec sp_addlinkedsrvlogin 'web_Server','false',null,'sa','PassWord

2. 更新遠程表中數據

update srv_lnk.[e-budget].dbo.TA_Current set CYLE3=b.Y07LE3
--select * 
from srv_lnk.[e-budget].dbo.TA_Current a

join
(
SELECT f1,
convert(varchar(50), convert (decimal(18,0), f2))as account, convert(decimal(18,2), f13/1000) as Y07LE3


  FROM
 
OPENROWSET('Microsoft.JET.OLEDB.4.0',
'Excel 8.0;HDR=NO;Database=D:\Documents and Settings\T325234\My Documents\budget\9.6\420200.xls',
'SELECT * FROM [sheet$A18:AC78] ') tableExcel
 ) b
on  a.accountcode=b.account COLLATE Chinese_PRC_CI_AS
where a.costcenter = 420201  

 

A18:AC78 為Excel 中部分單元格的數據.

發現數字列中有了標題,數字查出來就全為NULL了,可能格式轉化不過來。

 COLLATE  為漢字查詢,如果數據庫是英文,和中文的相關聯 需要轉化。


  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved