找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 328|回复: 2

[求助] 关于AutoCAD访问SQL Server2012数据库读取数据精度问题

[复制链接]
发表于 2018-4-2 23:13:32 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
经过一段时间的摸索,目前已成功运用AutoLisp访问SQL Server2012,目前遇到的问题是:
在SQL Server 2012 中执行执行选择语句,读取数据库中的数据(小数点后4位有效),可以准确得到,同样的SQL语句在Autolisp中输入后,打印出来的记过,自动把小数点后的数据四舍五入了,小数的精度大为减少,这种问题如何解决?
我使用的SQL语句是:
SELECT [ganhao]
   ,cast(gonglibiao AS decimal(38,4))
   ,cast(x_coor AS decimal(38,4))
      ,cast(y_coor AS decimal(38,4))
      ,cast(z_coor AS decimal(38,4))
  FROM [gtjxgcgl].[dbo].[ganhao_sjk] WHERE gudao_id = 1 ORDER BY ganhao_xh
下图分别为在SQL Server2012中执行结果和在AutoLisp中执行的结果。
SQL.jpg
图片1.jpg
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

已领礼包: 40个

财富等级: 招财进宝

发表于 2018-4-2 23:39:21 | 显示全部楼层
本帖最后由 newer 于 2018-4-2 23:40 编辑

看你的数,不是舍入了,而是截断了啊。
你代码不贴全,不好说,你LISP读出,然后构建表的语句是什么? 数据库读出来的是什么类型? 如果是实数,用下(rtos val 2 4)看看。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-4-4 11:27:36 来自手机 | 显示全部楼层
谢谢,已经搞定了,我把lisp要读取的数据全部转换成字符串,搞定了!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-4-19 11:37 , Processed in 0.335902 second(s), 35 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表