将存储过程的结果导出到CSV文件

时间:2014-08-27 11:59:35

标签: sql sql-server export-to-csv

我有一个非常旧的软件,我需要更新。软件本身是用VB6编写的,现在我需要在SQL Server上构建一个存储过程,并将存储过程的结果输出到.csv文件。解决这个问题的最佳方法是什么?

我应该在数据库上设置某种作业,将其导出到.CSV吗?或者我应该从软件中获取结果,还是在软件中构建.CSV文件?

就我个人而言,如果可能的话,我宁愿使用数据库工作,但这是你会做什么的?很久以前,我在VB6工作,这是服务器端的原因,但如果你们更喜欢其他方式(甚至是第三种方式),我会考虑这样做。

对此表示赞赏!

2 个答案:

答案 0 :(得分:1)

你看过SSIS(SQL Server集成服务)吗?它允许您轻松创建“包”(SQL代理作业),该程序包按预定义的计划导出数据。 CSV是输出选项之一,它具有很大的灵活性。默认情况下,SQL安装不会加载SSIS,因此如果您没有足够的权限,这可能不是您的选择,但如果您已安装或可以安装它,那么这对此非常有用。

编辑:
如果你对仔细观察感兴趣,这个页面会逐步显示图片http://beyondrelational.com/modules/2/blogs/70/Posts/18873/exploring-ssis-export-to-csv-file.aspx,对于完整的解决方案,点击和输入大约需要15分钟,但当然第一次需要更长的时间习惯了界面。

它也是非常可扩展的,如果您稍后决定需要操作文件或目录,运行存储过程或在数据库中设置标志,它也可以在包中执行所有这些操作 - 只需确保您的SQL代理帐户或你运行的任何代理都有对你正在操作的表,文件,目录等的权限。

答案 1 :(得分:0)

你不需要乱用VB,MSSQL服务器有一个"导出和导入向导"。根据您的SQL Server版本,它位于SQL Server菜单/图标中的某个位置。您可以选择csv和Excel格式,以及许多其他格式。

如果"导出和导入向导"不适合您的问题,您可以使用SSIS(SQL Server集成服务)。它还与SQL Server捆绑在一起。它给你更多的力量,但它更复杂。

基本上,最复杂的部分是编写存储过程。使用上述工具可以轻松导出数据。