借用mysql 或者其他数据库 处理MSSQL 2016前处理导入特殊字符
2017-06-13 15:08
706 查看
MSSQL 2016支持了utf8编码的文件,之前处理比较麻烦的bcp 方式导入特殊字符一下子就方便了。
但是之前的版本,处理起来还是有一点麻烦。这次处理使用的数据库版本是sql server 2014,
用于测试的例子用2个字符串
T3 Rénové tout Confort proche métro
Ona el Marqués Resort
首先我们在test数据库上面先创建一个测试表 CREATE TABLE T1 (name NVARCHAR(50))
分别使用如下几种处理方法来进行处理
尝试1:直接用 bcp -c 来处理
结果是酱汁:
![](https://images2015.cnblogs.com/blog/675244/201706/675244-20170613142117087-1955708364.png)
尝试2 :使用 bcp的格式导入导出来处理
![](https://images2015.cnblogs.com/blog/675244/201706/675244-20170613142713165-1816892267.png)
结果还是这个图
![](https://images2015.cnblogs.com/blog/675244/201706/675244-20170613142117087-1955708364.png)
尝试3: 使用数据库自带的数据导入功能,得出结论可行!
![](https://images2015.cnblogs.com/blog/675244/201706/675244-20170613145911353-382842517.png)
尝试4: 当尝试3 也不能导入的时候,可以使用借助mysql或者其他数据库作为中转。先把数据导入其他数据库,然后借助链接服务器把数据导入到sql server
可以说,尝试4的操作比较复杂,但是确是有用的
比如用MySQL做例子: 创建一个同名同架构的表
然后用
然后建一个链接服务器把数据导入过来即可
PS:同时向各位大佬求教这种情况用2014 用bcp 能解决这个问题吗?还是我有某些参数不对呢???
希望这个方法对大家有帮助
但是之前的版本,处理起来还是有一点麻烦。这次处理使用的数据库版本是sql server 2014,
用于测试的例子用2个字符串
T3 Rénové tout Confort proche métro
Ona el Marqués Resort
首先我们在test数据库上面先创建一个测试表 CREATE TABLE T1 (name NVARCHAR(50))
分别使用如下几种处理方法来进行处理
尝试1:直接用 bcp -c 来处理
EXEC sys.xp_cmdshell 'bcp test..T1 in D:\T1.txt -S GINLATOP\MSSQLSERVER2014 -T -c' SELECT * FROM T1
结果是酱汁:
![](https://images2015.cnblogs.com/blog/675244/201706/675244-20170613142117087-1955708364.png)
尝试2 :使用 bcp的格式导入导出来处理
EXEC sys.xp_cmdshell 'bcp test..T1 format nul -f D:\format.xml -S GINLATOP\MSSQLSERVER2014 -T -x -c' EXEC sys.xp_cmdshell 'bcp test..T1 in D:\T1.txt -f D:\format.xml -S GINLATOP\MSSQLSERVER2014 -T -x' SELECT * FROM T1
![](https://images2015.cnblogs.com/blog/675244/201706/675244-20170613142713165-1816892267.png)
结果还是这个图
![](https://images2015.cnblogs.com/blog/675244/201706/675244-20170613142117087-1955708364.png)
尝试3: 使用数据库自带的数据导入功能,得出结论可行!
![](https://images2015.cnblogs.com/blog/675244/201706/675244-20170613145911353-382842517.png)
尝试4: 当尝试3 也不能导入的时候,可以使用借助mysql或者其他数据库作为中转。先把数据导入其他数据库,然后借助链接服务器把数据导入到sql server
可以说,尝试4的操作比较复杂,但是确是有用的
比如用MySQL做例子: 创建一个同名同架构的表
然后用
load data infile "D:\\T1.txt" into table T1 ;
然后建一个链接服务器把数据导入过来即可
PS:同时向各位大佬求教这种情况用2014 用bcp 能解决这个问题吗?还是我有某些参数不对呢???
希望这个方法对大家有帮助
相关文章推荐
- oracle中使用单引号或者其他特殊字符处理方法
- mysql sql语句中的特殊字符处理
- Mysql:语法:支持的和其他数据库开发商兼容的数据类型映射,或者说mysql的数据类型别名
- mysql 中的特殊字符处理
- 特殊字符在数据库查询前的处理
- MySQL数据入库时特殊字符处理详解
- Excel 导入SQL 特殊字符的处理
- mssql 和 mysql的区别,让自动增长列自动递增就必须指定其他列名,mysql创建事务,如果插入的字符多余字段的值,会报错?截取插入?带输出参数的存储过程,带If else判断
- 牛人是怎样处理海量数据的_数据库?access?mssql?mysql?oracle等_夜鹰教程网
- C#数据库操作特殊字符单引号三种处理方式
- mysql过滤字符特殊字符或者特殊字符的字段
- 从MySQL导出导入数据库的命令实例及设置会话字符编码
- MySQL数据入库时特殊字符处理
- C#数据库操作特殊字符单引号三种处理方式
- mysql导入mssql 怎么把mysql数据库导入到mssqlserver 数据库 转帖
- 文档的当前编码不能保存文档内所有字符,需要改为UTF-8或者其他支持本文当中的特殊字符的编码
- java程序:mysql特殊字符处理
- 一个从mysql导入数据库到mssql的根据
- 不同数据库模糊查询特殊字符处理
- MySQL数据入库时特殊字符处理详解