下面的字符串怎样保存在数据库中才不会丢失数据

jakey_yang 2008-08-04 02:31:34
ls_string := #$02#$DA+#$05+#$31#$30#$30#$30#$39#$05#$31#$30#$30#$30#$30#$05#$39#$30#$30#$30#$30#$05#$31#$30#$30#$30#$30#$01#$31#$04#$30#$2E#$37#$35#$04#$30#$2E#$37#$38#$0C#$30#$34#$31#$31#$31#$38#$30#$35#$30#$35#$30#$31#$03#08;


保存扫数据库后,再取回,#$DA#S05就发生了变化,取回后就变成了:
#$02#$3F+#$31#$30#$30#$30#$39#$05#$31#$30#$30#$30#$30#$05#$39#$30#$30#$30#$30#$05#$31#$30#$30#$30#$30#$01#$31#$04#$30#$2E#$37#$35#$04#$30#$2E#$37#$38#$0C#$30#$34#$31#$31#$31#$38#$30#$35#$30#$35#$30#$31#$03#08;


谢谢
...全文
126 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
jakey_yang 2008-08-05
  • 打赏
  • 举报
回复
谢谢。
踢踏 2008-08-04
  • 打赏
  • 举报
回复
这些特殊的字符需要转成16进制字符,然后再存入数据库
lilopeng 2008-08-04
  • 打赏
  • 举报
回复
用它把你的#$.. ReplaceString();
换成别的字符。读取时再转回来就可以了。
jakey_yang 2008-08-04
  • 打赏
  • 举报
回复
数据是从串口接收的,
jakey_yang 2008-08-04
  • 打赏
  • 举报
回复
上面是我举的例子,ls_string在没有保存的时候,第2个字符取出来的ASCII是218,保存后再取回来就变成63了,郁闷了,并且把#$5给丢了
jakey_yang 2008-08-04
  • 打赏
  • 举报
回复
数据库字段类型,是Blob的或者Varchar的都可以,我保存后数据就变了。用Smimonhehe的方法是保存到数据库中了,但是他吧#$也都做为字符保存了,怎样能把他再转回来呢?
Corn1 2008-08-04
  • 打赏
  • 举报
回复
数据库的字段类型?
simonhehe 2008-08-04
  • 打赏
  • 举报
回复
ls_string := QuotedStr('#$02#$DA+#$05+#$31#$30#$30#$30#$39#$05#$31#$30#$30#$30#$30#$05#$39#$30#$30#$30#$30#$05#$31#$30#$30#$30#$30#$01#$31#$04#$30#$2E#$37#$35#$04#$30#$2E#$37#$38#$0C#$30#$34#$31#$31#$31#$38#$30#$35#$30#$35#$30#$31#$03#08');
simonhehe 2008-08-04
  • 打赏
  • 举报
回复
试试

ls_string := QuotedStr('#$02#$DA+#$05+#$31#$30#$30#$30#$39#$05#$31#$30#$30#$30#$30#$05#$39#$30#$30#$30#$30#$05#$31#$30#$30#$30#$30#$01#$31#$04#$30#$2E#$37#$35#$04#$30#$2E#$37#$38#$0C#$30#$34#$31#$31#$31#$38#$30#$35#$30#$35#$30#$31#$03#08');
jakey_yang 2008-08-04
  • 打赏
  • 举报
回复
这个问题困扰我半天了,我在想是不是DA 作为ASCII 大于了128,而产生了问题

2,497

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧