sqlserverdbf
發布時間: 2023-08-07 08:11:36
『壹』 sqlServer的幾種數據傳輸方法
本篇文章討論的是有關資料庫之間數據傳送的問題 在實際的應用領域里都可以用到 具有實用價值 例如 公司目前資料庫中的信息量不夠 需要第三方的數據支持 這事就有幾種情況了 對方直接提供資料庫帳號 你可以直接訪問(可能性很小) 對方把資料庫的信息自動轉換成 mdb;dbf;TXT等格式的文件 然後傳到你的伺服器上 通過一個資料庫介面程序 直接插到你的資料庫中 這里還有個問題 無論對方提供的數據的結構是否和我們自己的一樣 都不能直接插到我們的庫中 這樣一旦有問題會破壞我們的資料庫 那麼我們怎麼辦呢?下面的文檔會有很好的答案 具體示例 本篇文章並野討論的是有關資料庫之間數據傳送的問題 在實際的應用領域里都可以用到 具有實用價值 例如 公司目前資料庫中的信息量不夠 需要第三方的數據支持 這事就有幾種情況了 對方直接提供資料庫帳號 你可以直接訪問(可能性很小) 對方把資料庫的信息自動轉換成 mdb;dbf;TXT等格式的文件 然後傳到你的伺服器上 通過一個資料庫介面程序 直接插到你的資料庫中 這里還有個問題 無論對方提供的數據的結構是否和我們自己的一樣 都不能直接插到我們的庫中 這樣一旦有問題會破壞我們的資料庫 那麼我們怎麼辦呢?下面的文檔會有很好的答案 具體示例 本篇文章討論的是有關資料庫之間數據傳送的問題 在實際的應用領域里都可以用到 具有實用價值 例如 公司目前資料庫中的信息量不夠 需要第三方的數據支持 這事就有幾種情況了 對方直接提供資料庫帳號 你可以直接訪問(可能性很小) 對方把資料庫的信息自動轉換成 mdb;dbf;TXT等格式的文件 然後傳到你的伺服器上 通過一個資料庫介面程序 直接插到你的資料庫中 這里還有個問題 無論對方提供的數據的結構是否和我們自己的一樣 都不能直接插到我們的庫中 這樣一旦有問題會破壞我們的資料庫 那麼我們怎麼辦呢?下面的文檔會有很好的答案 一 資料庫間氏蔽叢的 COPY 導入導出等 利用資料庫自帶的向導進行資料庫之間的傳遞 好處 可以在不同的資料庫介面間傳遞數據 缺點 傳遞數據的過程中不能對數據進行更改 技巧 可以利用任務(JOB)定時取需要的數據 二 利用腳本和任務(JOB)更改處理數據 編寫相關的資料庫腳本 然後在任務(JOB)中運行 好處 可以更改插入的內容和插入的位置 使用靈活 缺點 要自己手寫代碼 技巧 可以殲櫻配合導入導出 利用任務(JOB)實現強大的功能 具體示例 用途 把其它資料庫伺服器中的數據( mdb; dbf;sqlserver 等) 定時導入自己的資料庫中使用 有個問題是 因為我們自己的資料庫已經在使用 並且結構和要導入的資料庫大不相同 而且原資料庫中的某些內容要調整 所以我們利用了中間資料庫 如圖 具體的腳本程序 /*用途 把第三方提供的數據信息時時導入我們自己的資料庫中 步驟 用 DTS (導入導出向導)把數據導入到中間資料庫中 要設置任務定時導入 編寫下面的腳本 然後把它加在 DTS 任務的後一步 即運行完 DTS後在運行此腳本 */ declare @id int @title nvarchar( ) 定義變數 declare test cursor for 定義游標 select DISTINCT id title from society where datediff(day date getdate()) < 1 open test--打開游標fetch next from test into @id,@title while @@fetch_status = 0 --循環取數據 begindeclare @titletemp nvarchar(255)declare test1 cursor for select title from dbB.dbo.tb_infogegu where title=@title and datediff(day,date,getdate()) = 0 open test1 fetch next from test1 into @titletemp if( @@fetch_status = 0) --表中該記錄已經存在,刪除該記錄 DELETE FROM society WHERE id=@id Else --不存在時,插入該記錄 begin insert into dbB.dbo.tb_infogegu (title,content,channel,date,tradetype,stockcode, fromdate) select top 1 title,content,channel,date,tradetype,stockcode, fromdate from society where id=@id order by date DELETE FROM society WHERE id=@id end close test1 deallocate test1 fetch next from test into @id,@title end DELETE FROM societyclose test deallocate test GO lishixin/Article/program/SQLServer/201311/22150
熱點內容