Access 数据库导入到SQL 中关于科学计数法的问题

问题描述

我写了一个程序一个Excel表其中某一列数据单元格格式为不为文本类型、当我把这一列变为文本类型后就会出现1.604E+11科学记数法类型的但是正常显示的是116040000001当我把数据导入到数据库的时候会出现1.604E+11类型的、我用的数据库为Access数据库,我用的导入数据库的方法是stringmystring="Provider=Microsoft.Jet.OLEDB.4.0;DataSource="+filepath+";ExtendedProperties='Excel8.0;HDR=Yes;IMEX=1'";OleDbConnectioncnnxls=newOleDbConnection(mystring);OleDbDataAdaptermyDa=newOleDbDataAdapter("select*from[Sheet1$]",cnnxls);DataSetmyDs=newDataSet();myDa.Fill(myDs);myDs.Tables[0].Columns[5].DataType=typeof(string);cnnxls.Close();if(myDs.Tables[0].Rows.Count>0){for(inti=1;i<myDs.Tables[0].Rows.Count;i++){strSql="insertintoAssetMessage(ZiChanXingZhi,ZiChanFenLei,ZiChanGuiGe,ZiChanXingHao,GouZhiData,ZiChanCode,ShuLiang,ZiChanYuanZhi,BaoGuanRen,BaoGuanDi,"+"ShiFouSunHuai,Remark)values('"+zichaningzhi+"','";strSql+=myDs.Tables[0].Rows[i].ItemArray[1].ToString().Trim()+"','";strSql+=myDs.Tables[0].Rows[i].ItemArray[2].ToString().Trim()+"','";strSql+=myDs.Tables[0].Rows[i].ItemArray[3].ToString().Trim()+"','";strSql+=myDs.Tables[0].Rows[i].ItemArray[4].ToString().Trim()+"','";strSql+=myDs.Tables[0].Rows[i].ItemArray[5].ToString().Trim()+"','";strSql+=myDs.Tables[0].Rows[i].ItemArray[6].ToString().Trim()+"','";strSql+=myDs.Tables[0].Rows[i].ItemArray[7].ToString().Trim()+"','";strSql+=myDs.Tables[0].Rows[i].ItemArray[8].ToString().Trim()+"','";strSql+=myDs.Tables[0].Rows[i].ItemArray[9].ToString().Trim()+"','";strSql+=myDs.Tables[0].Rows[i].ItemArray[10].ToString().Trim()+"','";strSql+=myDs.Tables[0].Rows[i].ItemArray[11].ToString().Trim()+"')";db.ExecuteSQL(strSql);}}请教为什么导入到数据库后数据库显示的方式是1.604E+11类型的呢、我该怎么去解决呢MSN:liyangsky-123@hotmail.com

解决方案

解决方案二:
顶~~~~~~~~~

时间: 2024-11-05 21:39:22

Access 数据库导入到SQL 中关于科学计数法的问题的相关文章

sqlite3-C#读取SQLite3数据库中以科学计数法存的数据,精度损失

问题描述 C#读取SQLite3数据库中以科学计数法存的数据,精度损失 我使用的是C#语言,.net 2.0,SQLite3中有一条数为 9.13253416969279E-29 读取方式为: SQLiteCommand command = new SQLiteCommand(strSql, m_Connection); return command.ExecuteScalar(); 返回一个object对象, 值为 0.0000000000000000000000000001M 我想取到数据库

java读取txt中的科学计数法表示的数字

问题描述 java怎么读取txt中的科学计数法表示的数字啊,比如3.843137e-013.764706e-013.803922e-013.764706e-013.725490e-01,想把他们存到数组中去,求代码 解决方案 解决方案二:我知道了已经解决了解决方案三:是怎么做的写出来呀!照顾一下路人的感受啊!

ASP.NET 2.0中直接将Access数据库导入到Excel中

在实际的开发应用中,数据库导入导出是经常遇到的问题,尤其是数据库与Excel文件之间的导入导出,还存在数据类型不一致的问题.例如:数据库的数字超长时会在Excel里格式化成科学计数法的格式,或者记录内容是数字和字符的混合内容会丢失内容等等.将Access数据库的内容直接导入到Excel则可以避免这些问题. 下面例子就是实现这个功能,例子中的数据库使用<ASP.NET 2.0应用开发技术>一书中自带的数据库为例子. 另外,需要注意:Excel文件有诸多限制,在如果数据库记录内容很多,还要计算每次

如何将access mdb数据库导入到mysql中 .mdb转mysql

如何将access mdb数据库导入到mysql中,有人说用mysql-front但用起来十分难用,还要新建 dsn,dsn这东西有多少年没有人用了, 最简单的方法是使用navicat for mysql ,安装完成后,新建一个数据库,打开数据库后,展开数据库,会发现出现,表,视图,函数,等选项,在表上右击会出现导入向导,然后跟着向导一步步地向下做就可以了

将现有的Access数据库升级为SQL

很多Access和SQL Server开发人员都经常面临着将一个Access数据库升级到SQL Server数据库的问题.由于存在现有的Access升级向导,这一转变的过程就会变得相当简单,尤其是当你建立一个与SQL Server数据相联系的ADP的时候.然而,向导并不是十全十美的,需要解决的问题还是大有存在. 首先,有些对象并不是简单的升级,所以这时你不得不人为地处理.第二,很多Access特性──比如一些查询类型,对象,以及特定的数据类型在你没有做好升级之前的准备的情况下就会导致错误的产生.

Access数据库基于时间sql盲注的实现记录

  Access是微软把数据库引擎的图形用户界面和软件开发工具结合在一起的一个数据库管理系统.本文我们来看看Access数据库基于时间sql盲注的实现记录. 概述 众所周知,access数据库是不支持基于时间的盲注方式,但是我们可以利用access的系统表MSysAccessObjects,通过多负荷查询(Heavy Queries)的方式实现. 初步探究 我们以SouthIdcv17数据库为例 执行 select * from Southidc_About ,返回结果如下图. 如何实现time

Access数据库升级为SQL数据库的注意事项和方法_数据库其它

很多Access和SQL Server开发人员都经常面临着将一个Access数据库升级到SQL Server数据库的问题.由于存在现有的Access升级向导,这一转变的过程就会变得相当简单,尤其是当你建立一个与SQL Server数据相联系的ADP的时候.然而,向导并不是十全十美的,需要解决的问题还是大有存在. 首先,有些对象并不是简单的升级,所以这时你不得不人为地处理.第二,很多Access特性──比如一些查询类型,对象,以及特定的数据类型在你没有做好升级之前的准备的情况下就会导致错误的产生.

用C#在datagridview中显示access数据库一张表中的内容,但是列的显示乱了

问题描述 用C#在datagridview中显示access数据库一张表中的内容,但是列的显示乱了 ACCESS数据库表中列的顺序是1左,2左,11左,12左,1右,2右,11右,12右,但是当显示在datagridview中时就呈现上面的乱码, 解决方案 这是一个bug 试试看:http://blog.csdn.net/lukesunch/article/details/4644101 再不行就不要绑定,手工循环添加.

access-与数据库连接ACCESS数据库,显示库中所有的表名,但是出现很多不知道的表名

问题描述 与数据库连接ACCESS数据库,显示库中所有的表名,但是出现很多不知道的表名 用C#语句实现在combobox显示连接的数据库的中所有表的名称,但是为什么显示像 msysnamemap之类的很多不知道的表名,请问怎么解决. 解决方案 很正常,这些都是系统表名,你取出来以后判断下 if (!表名.Contains("msysname")) ComboBox1.Add(表名) 解决方案二: 如何得到一个ACCESS数据库的所有表名