以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  SQL数据库的双精度小数列转换成字符列的问题。  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=20771)

--  作者:pc005637
--  发布时间:2012/6/19 12:53:00
--  SQL数据库的双精度小数列转换成字符列的问题。

原来SQL数据库使用双精度小数列来储存电话号码。因为数值列是不能够like筛选的,所以想转换成字符列格式。

 

但是,无论在SQL企业管理器里面转换,还是在狐表里用"更改列"转换。电话号码都变成了。1.2350E+2354类似的数值。

 

请问我应该如何,进行完美的转换。谢谢。


--  作者:狐狸爸爸
--  发布时间:2012/6/19 15:15:00
--  

这是没有办法的哦,复制粘贴的。

数据类型一定要和其本质项目,电话号码就是一个字符,没有数值的意义,一开始就应该用字符型,还有身份证号码等等,都应该用字符型。


--  作者:pc005637
--  发布时间:2012/6/19 16:12:00
--  谢谢指点。只能曲线救国了。

原来的双精度小数电话列为:"联系电话"
在表中新增一字符列"字符电话",
在DataColChanged事件中输入代码:

 

Select Case e.Datacol.Name
case "联系电话"
if e.NewValue isnot nothing then
e.DataRow("字符电话") = e.NewValue
end if
end select

 

重置"联系电话"列后,"字符电话"的内容就和"联系电话"一致了。

然后删除"联系电话"列,将"字符电话"列名改为"联系电话",OK!