• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

在Transact-SQL语句中如何用常量来表示二进制形式的数据?

发布: 2007-7-02 11:08 | 作者: admin | 来源: | 查看: 9次 | 进入软件测试论坛讨论

领测软件测试网   二进制数据可能是图像、声音或任何其他数据。如果我们能够把这些二进制以常量的形式表示,我们就可以直接用Transcat-SQL语句来插入和更新数据表中的这些数据。
  其实,Transcat-SQL已经给我们提供了方法,那就是二进制常量格式。这个格式是以“0x”开头,后面跟若干十六进制数字,每个字节用两位十六进制数来表示。因此,你完全可以将那些图像声音数据转换成这种二进制常量格式,然后用于INSERT或UPDATE语句中。
  不过,这样的二进制常量将很长很长。这样一来SQL语句很难翻看,而且在某些行的长度有限制的编辑器中还会出问题。
  那么,又没有给二进制常量折行的办法呢?
  很遗憾,我查遍Transact-SQL的联机帮助,搜遍了网络,都没有答案。
  难道就真的没办法?
  路从来都是有人走过以后才能成其为路。也许前人曾经走过,而后人不知道。甚至,路本来就在那里,而你敢不敢走?
  于是,冒险开始:
  我将那个长长的二进制常量强行折断,执行,出错...
  在前面一行加“_”,VB的折行符号,出错...
  换成“\n”,C,C++字符串的折行符号,出错...
  用引号引起来,出错...
  换双引号,出错...
  ...,出错...
  ...,出错...
  ...,出错...
  前面一行就加“\”,成功!
  我有点不敢相信,再试,成功!

  稍微惊喜之后,我立刻保持冷静:插入的数据是否正确呢?
  立即,编写程序验证,完全正确!
  

  原来“\”是二进制常量的换行符,路就在那儿!

李战.深圳 2004-10-14

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备10010545号-5
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网