osql执行SQL脚本内容包含中文时出现乱码问题的解决办法

本机环境:Windows2003 + SQL2008R2 + 包含中文的SQL脚本文件

经验小结:SQL脚本文件编码最好是存成GB2312的,而不是UTF-8

 

开始--运行--CMD

C:\Documents and Settings\Administrator>

osql -U sa -P 123456 -S 192.168.1.28 -d testdb -r -e  -i "C:\sp_Insert_User.sql" -o "c:\ErrorInfo.txt"

出现一堆错误:

1> 2> 3> [SQL Server Native Client 10.0]COUNT 字段不正确或语法错误
锘?-濡傛灉瀛樺偍杩囩▼宸插瓨鍦ㄥ垯鍏堝垹闄?if exists


解决办法:
运行SQL Server Management Studio后打开"C:\sp_Insert_User.sql"SQL脚本文件,选择“另存为”编码为GB2312。

重新运行OSQL命令
C:\Documents and Settings\Administrator>

osql -U sa -P 123456 -S 192.168.1.28 -d testdb -r -e  -i "C:\sp_Insert_User.sql" -o "c:\ErrorInfo.txt"

运行成功

其它解决办法如"改变MS-DOS代码页"尝试过不起作用:

C:\Documents and Settings\Administrator>chcp 936

C:\Documents and Settings\Administrator>chcp 65001

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

疾风铸境

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值