【急求】中文减号在mssql中的查询? PHP页面是UTF-8,现有Sql语句中包含有中文减号,即“——”,需要把该减号转为gb2312后进行查询,但是使用iconv('utf-8', 'gb2312', '——')函数转换过后,结果为空!!!!!!!!!!这是什么BUG!!!!!如果转码不成功,有什么其它办法使得包含该中文减号的Sql能够成功在mssql中查询?? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 你那个减号到了SQLServer是一个-还是两个“--”还似乎3个? 你这个是MYSQL吧 SET NAMES 'GBK'试试 转码后为空,所以Sql中也就没有减号了……直接在workbench中写Sql查询的话,包含几个中文减号都没有问题的,环境不一样。 那你用replace函数把——换成- 没遇到过,用cast(XX as nvarchar)再转试试 经查证:iconv在转换字符”—”到gb2312时会出错,如果没有ignore参数,所有该字符后面的字符串都无法被保存。不管怎么样,这个”—”都无法转换成功,无法输出。 另外mb_convert_encoding没有这个bug.(我的PHP没有该类库……)gb2312字符数量少,也许没有包含这个字符所致;可以转为GBK或是GB19030,但是发现转换后却依旧无法在mssql中查询出正确结果。并且还发现,mssql(GB2312编码)情况下,也不能由页面成功插入“—”。有其它方法欢迎提出。结贴! sql 中 我把2个数据相除,得到 科学型数据 不同的用户在同个时间是否能执行同一个存储过程 sql的学习资料 关于保存分辨率到注册表的问题 给存储过程里的参数定义默认值的问题 报表中要把相同的记录排成一列要怎么做?(邹建等高手快来啊) 用什么加密算法好呢? SQL多条明细变为一条的问题 招聘软件工程师 查询问题 为何维护计划不能按时执行呢? 怎么在事物中获取未提交前的数据
转码后为空,所以Sql中也就没有减号了……直接在workbench中写Sql查询的话,包含几个中文减号都没有问题的,环境不一样。
结贴!