如何從實時SQL Server數據庫複製大量表格以及它們包含的數據?如何複製表格和數據以用於測試目的
我想爲我的機器上的基本測試獲取一些數據。
我原本打算做一個簡單的數據庫備份,直到我注意到它的大小超過了100GB。然而,我所追求的桌子只是一些小桌子。然後,我嘗試導出到Excel,但卻打在了65K限制(我們沒有Excel 2007)
如何從實時SQL Server數據庫複製大量表格以及它們包含的數據?如何複製表格和數據以用於測試目的
我想爲我的機器上的基本測試獲取一些數據。
我原本打算做一個簡單的數據庫備份,直到我注意到它的大小超過了100GB。然而,我所追求的桌子只是一些小桌子。然後,我嘗試導出到Excel,但卻打在了65K限制(我們沒有Excel 2007)
您可以通過使用SQL Server導入和導出嚮導
Here is MSDN video
嘗試導出數據你可以將其導出爲平面文件
在Management Studio中,選擇數據庫,右鍵單擊並選擇任務 - >導出數據。在那裏您將看到可導出到不同種格式的選項,包括CSV。
您也可以從查詢窗口運行查詢並將結果保存爲CSV。
您不能使用從您的實時服務器到您的測試機器的導出數據嚮導?或使用bcp?甚至使用簡單的PowerShell腳本?
$Server = "MyServer"
$ServerInstance = "$Server\MyInstance"
$database = "MyDatabase"
$BackupFile = "c:\MyBackupFile.sql"
$tables = @('TableBlah','TableBluh','TableBloh')
$server = New-Object (
'Microsoft.SqlServer.Management.Smo.Server') $ServerInstance
$scripter = New-Object ('Microsoft.SqlServer.Management.Smo.Scripter') $server
$scripter.Options.SchemaQualify = $false
$scripter.Options.ScriptSchema = $false
$scripter.Options.ScriptData = $true
$scripter.Options.NoCommandTerminator = $true
$scripter.Options.ToFileOnly = $true
$scripter.Options.FileName = $BackupFile
$ServerUrn=$server.Urn
$UrnsToScript = New-Object Microsoft.SqlServer.Management.Smo.UrnCollection
foreach ($t in $tables)
{
# Could use bcp here for dumping big tables (like archives)
# $ret = (bcp.exe "$database..$t" out `"$ConfigBackupDir\$t.bcp`"
# -S $ServerInstance -U sa -P $SAPWD -n)
$Urn = "$ServerUrn/Database[@Name='" +
$database + "']/Table[@Name='" + $t + "' and @Schema='dbo']"
$UrnsToScript.Add($Urn)
}
$scripter.EnumScript($UrnsToScript)
對不起,SQL導出非常新,所以不知道有什麼可用的,不必介意有什麼更好的選擇...我的導出到Excel的實驗不是很好成功的。感謝指針 – SteveC
謝謝你的指針,但視頻是導出到Excel,但至少在Excel 2003中,我們有,它僅限於65K記錄 – SteveC
讓我去那......解決方案,我用用的是去導出數據並將Destination設置爲本地SQL Express實例中的新數據庫 – SteveC