我在SQL Server中有一个数据库,其中有很多表,并希望以csv格式导出所有表。从先前提出的一个非常类似的问题开始-通过Management
Studio从SQL Server
2012导出到.CSV
右键单击Management Studio中的数据库,然后选择“任务”->“导出数据…”。
遵循向导,然后在目标部分中选择“平面文件目标”。输入您的文件名,然后选择您的选项。
我想要的是能够一次导出所有表的功能。SQL
Server导入和导出向导一次只允许一个表。如果您有一个非常大的数据库,这将非常麻烦。我认为更简单的解决方案可能涉及编写查询,但不确定。
导出向导一次只允许一个。我使用powershell脚本将所有表导出到csv中。如果可以帮助您,请尝试此操作。
$server = "SERVERNAME\INSTANCE"
$database = "DATABASE_NAME"
$tablequery = "SELECT schemas.name as schemaName, tables.name as tableName from sys.tables inner join sys.schemas ON tables.schema_id = schemas.schema_id"
#Delcare Connection Variables
$connectionTemplate = "Data Source={0};Integrated Security=SSPI;Initial Catalog={1};"
$connectionString = [string]::Format($connectionTemplate, $server, $database)
$connection = New-Object System.Data.SqlClient.SqlConnection
$connection.ConnectionString = $connectionString
$command = New-Object System.Data.SqlClient.SqlCommand
$command.CommandText = $tablequery
$command.Connection = $connection
#Load up the Tables in a dataset
$SqlAdapter = New-Object System.Data.SqlClient.SqlDataAdapter
$SqlAdapter.SelectCommand = $command
$DataSet = New-Object System.Data.DataSet
$SqlAdapter.Fill($DataSet)
$connection.Close()
# Loop through all tables and export a CSV of the Table Data
foreach ($Row in $DataSet.Tables[0].Rows)
{
$queryData = "SELECT * FROM [$($Row[0])].[$($Row[1])]"
#Specify the output location of your dump file
$extractFile = "C:\mssql\export\$($Row[0])_$($Row[1]).csv"
$command.CommandText = $queryData
$command.Connection = $connection
$SqlAdapter = New-Object System.Data.SqlClient.SqlDataAdapter
$SqlAdapter.SelectCommand = $command
$DataSet = New-Object System.Data.DataSet
$SqlAdapter.Fill($DataSet)
$connection.Close()
$DataSet.Tables[0] | Export-Csv $extractFile -NoTypeInformation
}
谢谢
问题内容: 是否有一条SQL命令将列出数据库中的所有表,并且该命令与提供程序无关(可在MSSQLServer,Oracle,MySQL上运行)? 问题答案: 最接近的选项是查询表。 它是标准SQL的一部分,但并非所有供应商都支持它。据我所知,唯一支持它的RDBMS供应商是: 的MySQL PostgreSQL的 微软SQL服务器2000年/ 2005年/ 2008年 一些品牌的数据库,例如Orac
问题内容: 我想保留所有MySQL数据库的备份。我有100多个MySQL数据库。我想同时导出所有它们,然后一次将所有它们再次导入到我的MySQL服务器中。我怎样才能做到这一点? 问题答案: 出口: 查找有关mysqldump的文档。您可能要使用注释中提到的一些选项: 进口:
将中的每行复制到. Microsoft SQL Server Management Studio2012中是否有从表创建插入SQL的选项?或者还有其他选择吗?
问题内容: 如何使用查询获取SQL Server数据库中所有表的列表。我的意图是将其动态显示在网页上。 问题答案: 尝试: 这应该给您您想要的。然后,您需要从网页中调用它,以所需格式显示。 您可能要看: 如何使用C#在组合框中从数据库获取所有表的名称 可能会帮助您完成您想做的事情。 另外-您可能想看一下SQL Server:我应该在sys表上使用information_schema表吗? 用于sy
问题内容: 我有兴趣将值的子集从MySQL数据库导出到磁盘上的JSON格式的文件中。 我找到了一个讨论执行此操作的方法的链接:http : //www.thomasfrank.se/mysql_to_json.html …但是当我使用该页面中的方法时,它似乎可以工作,但是有两个问题: 1)它只返回大约15个结果,最后一个突然中断(不完整)。当我按以下方式运行时,我对此的标准查询返回大约4000个结
问题内容: 我环顾四周,仍然找不到如何列出数据库中的所有表。MySQLi有可能吗? 谢谢。 问题答案: 有很多方法。 是执行此操作的最简单的SQL语句。您还可以查看是否需要更多详细信息或进行过滤等操作。