C#中的double类型数据向SQL sqerver 存储与读取问题
1、存储
由于double类型在SQLsever中并没有对应数据,试过对应float、real类型,发现小数位都存在四舍五入的现象,目前我使用的是decimal类型,用此类型时个人觉得小数位数应该比自己的数据中小数位数设置的多一点,不然还是会出现四舍五入。
以下是我的代码,由于业务需求,我的数据库只存储一条数据,一直更新
using (SqlConnection con = new SqlConnection(connectionString))
{
try
{
//dbHelper = new DBHelper(BCSSqlConnection);
con.Open();
StringBuilder sbSql = new StringBuilder(); //sbSql.Append("insert into GpsData(");
//sbSql.Append("lon,lat,AddTime)");
//sbSql.Append(" values (");
//sbSql.Append(" @lon,@lat,@AddTime)");
sbSql.Append("update GpsData set lon = @lon ,lat = @lat,AddTime=@AddTime where id = 1");
string strInsertSql = sbSql.ToString();
SqlCommand cmd = new SqlCommand(strInsertSql, con);
cmd.Parameters.Add("@lon", lon);
cmd.Parameters.Add("@lat", lat);
cmd.Parameters.Add("@AddTime", DateTime.Now);
cmd.ExecuteNonQuery();
}
catch (Exception ex)
{
Console.WriteLine("添加失败了" + ex.Message); //表示数据库异常
}
finally
{
con.Close();
}
}
2.读取
2.1 从数据库中取出数据
using (SqlConnection con = new SqlConnection(connectionString))
//using (BCSSqlConnection = new MySqlConnection(mysqlcon))
{
try
{
con.Open();
StringBuilder sbSql = new StringBuilder();
sbSql.Append("select lon,lat from GpsData");
SqlCommand com = new SqlCommand(sbSql.ToString(), con);
SqlDataAdapter da = new SqlDataAdapter(com);
DataTable dt = new DataTable();
da.Fill(dt);
//返回DataTable对象dt
return dt;
}
catch (Exception e)
{
throw new Exception(e.Message);
}
finally
{
con.Close();
}
}
2.2 数据类型转换
DataTable dt = mm.SelectGpsData();
double lon = Convert.ToDouble(dt.Rows[]["lon"].ToString());
double lat = Convert.ToDouble(dt.Rows[]["lat"].ToString());
Console.WriteLine(lon + " " + lat);
C#中的double类型数据向SQL sqerver 存储与读取问题的更多相关文章
- C#中设置double类型数据的小数长度
如果double A=1.5321654:需要将其转换为3位小数,字符串的话A.tostring(".###")就可以,输出的是1.532: 也可以用A.ToString(&quo ...
- 在JAVA中怎么比较Double类型数据的大小
在JAVA中怎么比较Double类型数据的大小 我来答 浏览 33044 次 3个回答 #活动# “双11”答题活动,奖励加码!最高得2000元购物礼金! pollutedair 2015- ...
- hbase中double类型数据做累加
public static Result incr(String tableFullName, String rowKey, String family, String qualifier, long ...
- 由Double类型数据到数据的格式化包java.text
需求:Double类型数据截取操作保留两位小数 解决方案: java.text.DecimalFormat df =new java.text.DecimalFormat("#.00&quo ...
- asp.net mvc视图中使用entitySet类型数据时提示出错
asp.net mvc5视图中使用entitySet类型数据时提示以下错误 检查了一下引用,发现已经引用了System.Data.Linq了,可是还是一直提示出错, 后来发现还需要在Views文件夹下 ...
- (工具类)double类型数据运算
package com.flf.util;import java.math.BigDecimal;/** * double类型数据运算 * @author Yancy 2016-12-14 * */p ...
- 在oracle中存入date类型数据遇到的问题及其解决方法(利用java.sql.date和Timestamp)
转自:https://blog.csdn.net/ShadowerWArden/article/details/80652377 1. 使用JDBC操作Oracle数据库时,使用java.sql.Da ...
- 读写SQLServer数据库中的image类型数据(简单)
1.将double类型的数据存储于image类型的变量中: (1). char *CManualForecastResultBll::DoubleArray2Binary(std::vector< ...
- java通过poi读取excel中的日期类型数据或自定义类型日期
Java 读取Excel表格日期类型数据的时候,读出来的是这样的 12-十月-2019,而Excel中输入的是 2019/10/12 或 2019-10-12 poi处理excel时,当excel没 ...
随机推荐
- Spring Framework 5.x 学习专栏
Spring Framework 5.0 入门篇 Spring构建REST Web Service 消费一个RESTful Web Service 事务管理 Spring使用JDBC访问关系数据 任务 ...
- idea系列ide给git增加push按钮
第一步 打开设置 Appearance & Behavior -- Menus and ToolBars,选中VscNavBarToolBarActios,然后点击"+"添 ...
- 用WordPress建立专业网站教程 (一步步建站, 一步也不少)
最新美国域名中心US Domain Center: http://www.usdomaincenter.com/ 建站教程 (10分钟上线, 无需备案): https://www.qiyewp.com ...
- apache2.4 httpd.conf httpd-vhost.conf配置
extra / httpd-vhost.conf <VirtualHost *:81> DocumentRoot "/data/sda1_data/" ServerNa ...
- Centos VMware 克隆后 网络配置
第一步:生产新的网卡地址,启动系统. 第二步:修改主机名(注:此处根据个人需要,不修改也行,此处我是用于搭建集群,修改主机名做区分) 执行命令:vi /etc/sysconfig/network 修改 ...
- 转:spring配置文件中xsd引用问题
来自:http://blog.csdn.net/dingqinghu/article/details/46758671
- 在windows上搭建SSH服务踩过的坑
前两天安装了windows操作系统,想在windows上做内网穿透,所以就想在windows下启用ssh服务,今天就来讲一下我在搭建ssh服务中遇到的坑. 我显示在Mac下搭建了ssh服务,并且测试通 ...
- 如何用AJax提交name[]数组?
https://www.cnblogs.com/junzilan/p/5424120.html
- 获取当前目录绝对路径,参考canal run.sh里面的方式
case "`uname`" in Darwin) bin_abs_path=`cd $(dirname $0); pwd` ;; Linux) bin_abs_path=$(re ...
- maven 私服同步无法获取依赖的pom.xml的依赖
项目中引入了依赖: <dependency> <groupId>org.apache.hadoop</groupId> <artifactId>hado ...