2011-10-19 61 views
34

我有一個.sql文件,我試圖將其導入到SQL Server 2008.什麼是正確的方法來做到這一點?如何將SQL數據文件導入SQL Server?

+0

你是什麼意思的進口?你想在.sql文件中針對數據庫運行查詢嗎? –

+0

它有一堆表,我想在一個網站中使用 –

回答

21

如果你是在談論一個實際的數據庫(一個MDF文件),你會Attach

.sql文件通常使用SQL Server Management Studio中運行。它們基本上是保存的SQL語句,所以可以是任何東西。你不會「導入」它們,更確切地說,你「執行」它們。儘管腳本確實可以插入數據。

另外,要擴展Jamie F的答案,除非知道它在做什麼,否則不要針對數據庫運行SQL文件。 SQL腳本可以爲選中的exe

9
  1. 啓動SQL Server Management Studio中
  2. 連接到數據庫
  3. 文件>打開>文件是危險的,挑選你的文件
  4. 執行它
+0

我試過,但它說「操作無法完成」... – user2070775

+0

當打開/執行非平凡的文件時SQL Server需要轉儲的陳述。你會認爲這是它擅長的。 –

+2

這不適用於大於250MB的文件:( – Nitesh

2

.sql文件是一組可以針對SQL服務器執行的命令。

有時.sql文件將指定數據庫,有時您可能需要指定此數據庫。

您應該與您的DBA或負責維護您的數據庫的人員交談。他們可能會想要快速查看文件。 .sql文件可能會造成很大的傷害,甚至是不經意的。

如果您想嘗試前進,請參閱其他答案。

3

試試這個過程 -

打開查詢分析器

開始 - >程序 - > MS SQL服務器 - >查詢分析器

一旦打開,連接到數據庫你希望在腳本上運行。

接下來,使用文件 - >打開選項打開SQL文件。選擇.sql文件。

打開後,可以按F5執行該文件。

65

如果你的文件是一個大文件,50MB +,那麼我建議你使用sqlcmd,這是SQL Server捆綁的命令行工具。它很容易使用,它可以很好地處理大文件。我使用下面的命令昨天試了一下帶有22GB文件:

sqlcmd -S SERVERNAME\INSTANCE_NAME -i C:\path\mysqlfile.sql -o C:\path\output_file.txt 

上面的命令假定您的服務器名稱是SERVERNAME,你的SQL Server安裝使用實例名INSTANCE_NAME,而Windows驗證是默認的身份驗證方法。執行後,output.txt將包含如下內容:

... 
(1 rows affected) 
Processed 100 total records 

(1 rows affected) 
Processed 200 total records 

(1 rows affected) 
Processed 300 total records 
... 

如果您需要查看大文件的內容,請使用readfileonline.com。

+1

儘管我不認爲它回答了這個問題,但它是有用的信息,所以「非常感謝」 – MVCDS

+1

需要永遠......但...... – spankmaster79