收藏本站 
网站首页 
网站地图 
>> 我们从网络和杂志上收集了近100000余篇各类电脑技术、网络技术、软件技术等方面的文章教程,我们的收录原则:不是精华拒不收录!
先飞电脑技术网技术文章
中英文字符混合处理方法
[ 作者:sunnyming    转贴自:网载    阅读次数:14    更新时间:2006-1-12 23:09:00   录入:蓝色动力 ]        

1,TXT文件导入SQL时

303410001401??????? 600 LANG 4-T粤IG? 0220??? 011840628900000?? BPO
303410001501??????? 600 LANDAU中ER? 0220??? 011840628900000?? BPO
303410001601??????? 600 LANG 6-T汉IG? 0220??? 011840628900000?? BPO

有此一TXT文件要导入SQL,有固定数据格式,因无明显界定符,将其导成一列,再在SQL中截取分离,存在以下问题:

数据结构给定的长度是单字节长度,但在SQL中使用substring()一个汉字只算一位,在些要求中因汉字是无固定位置,如只算一位将影响后面数据正确性

解决方法:cast(substring(cast(col001 as varbinary(1000)),39,4) as char(18)) as time_id

就是先将字段转成varbinary类型,这样汉字也算2位,截取就满足了固定格式要求了,然后再转回字符型。

2,SQL表导出至TXT中

使用cast(????? as char(20))限定

3,取长度

len()汉字只算1位

使用datalength()汉字算2位

上一篇:Oracle10g安装升级以及新特性介绍  下一篇: 判断表中的数据是否被其他表中使用过!!  

网站主页 | 收藏本页 | 联系我们 | 广告服务 | 站点地图 | 会员注册 | 招聘信息 | 内容指正

联系QQ:先飞电脑技术网站事务联系QQ,点击可以直接留言. 32933427 电话:13710542091 [世界排名] 鄂ICP备05005890号