Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何将utf-8数据从sql server 2008导出到excel_Sql_Excel_Sql Server 2008_Utf 8 - Fatal编程技术网

如何将utf-8数据从sql server 2008导出到excel

如何将utf-8数据从sql server 2008导出到excel,sql,excel,sql-server-2008,utf-8,Sql,Excel,Sql Server 2008,Utf 8,我尝试通过两个选项将utf-8数据从SQLServer2008导出到excel。但是data-utf-8是不正确的 例如我有一个表hasname列(排序规则:SQL\u Latin1\u General\u CP1\u CI\u AS,nvarchar(3000)) 如果我使用asp代码在浏览器上显示 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 但当我使用以下工具导出到excel时: 选

我尝试通过两个选项将utf-8数据从SQLServer2008导出到excel。但是data-utf-8是不正确的
例如我有一个表hasname列(排序规则:SQL\u Latin1\u General\u CP1\u CI\u AS,nvarchar(3000))

如果我使用asp代码在浏览器上显示

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
但当我使用以下工具导出到excel时:

选择1 i使用

Enable Ad Hoc Distributed Queries

EXEC sp_configure 'show advanced options', 1;
GO
RECONFIGURE;
GO
EXEC sp_configure 'Ad Hoc Distributed Queries', 1;
GO
RECONFIGURE;
GO


INSERT INTO OPENROWSET('Microsoft.ACE.OLEDB.12.0', 'Excel 8.0;Database=C:\testing.xls;', 'SELECT Name, Email FROM [Sheet1$]')
SELECT Name, Email FROM tblnames
GO
或选项2:我使用

SQL Server Import and Export Wizard
但这两个选项都没有显示正确的数据-utf-8。它仍然像

 |Name               |
 |TrÆ°á»ng ÄH Dược|

如何将utf-8数据从sql server 2008导出到excel谢谢您可以尝试BCP批量导出,但是2008R2

SQL Server不支持代码页65001(UTF-8编码)

您需要在bcp实用程序中添加-w参数,以指定编码为UTF16

DECLARE @cmd varchar(1000)
    SET @cmd = 'bcp "select * from table" queryout "d:\file.csv" -w -T -t; -Slocalhost'
    EXEC xp_cmdshell @cmd

然后尝试在excel中打开csv

 |Name               |
 |TrÆ°á»ng ÄH Dược|
DECLARE @cmd varchar(1000)
    SET @cmd = 'bcp "select * from table" queryout "d:\file.csv" -w -T -t; -Slocalhost'
    EXEC xp_cmdshell @cmd