EXCEL到SQL SERVER的数据处理的身份证号问题

yangzhy 2005-05-08 08:05:27
第一,我要把EXCEL中的数据用程序导入到SQL SERVER数据库中,可是EXCEL中的“身份证号”字段中的内容导入到库中总是成了科学记数法,我要的是字符型的东东啊!在EXCEL中把“身份证号”字段改成“文本”时就显示为科学记数法了。郁闷啊!

有人说给EXCEL这一列中加上一个字符型的东西,比如加个’就可以了,哪请问给EXCEL的一列怎么加一个相同的字符?不要告诉我用UE。

因为具体原因,手工去改EXCEL中的数据是下下策。

还有,表中有10个字段,而EXCELE中只有5列值,用程序导入的时候有办法控制把哪些列导到哪个字段吗?

希望路过的高手能帮帮忙,非常感谢!100分不够我把我所有分贡献出来都可以:)
谢谢。
...全文
911 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
yangzhy 2005-06-02
  • 打赏
  • 举报
回复
我最近见到过有EXCEL里隐藏了一个逗号“,”的,但是该文件没有任何宏,有谁知道是怎么回事吗?
zjcxc 2005-05-14
  • 打赏
  • 举报
回复
select * from
OPENROWSET('MICROSOFT.JET.OLEDB.4.0'
,'Excel 8.0;IMEX=1;HDR=YES;DATABASE=c:\Fyzyquest.xls'
,sheet1$)
/*-结果

身份证号码 姓名
--------------------- ---------
622701470430017.0 吴俊海
622701460805035.0 王越
622701490220059.0 贾少英
622725510929001.0 万英
622727520619501.0 李克和
622701540726034.0 白存莲
622701570812031.0 周永盛
622701660202031.0 史录平

(所影响的行数为 8 行)
--*/
LLanguage 2005-05-12
  • 打赏
  • 举报
回复
问题不在sqlserver ,要在excel中将身份证号字段强制转换为文本格式,如下:
在包含数据的excel文件中加入以下宏:

Sub 将所选单元格内容转换为字符串格式()
ActiveCell.FormulaR1C1 = "'" + ActiveCell.Text
Dim iCol, iRow
For iRow = 1 To Selection.Cells.Rows.Count
For iCol = 1 To Selection.Cells.Columns.Count
Selection.Cells(iRow, iCol).FormulaR1C1 = "'" + Selection.Cells(iRow, iCol).Text
Next iCol
Next iRow
End Sub

加入宏的方法:
1:打开Excel文件
2:进入“工具”-“宏”-“Visual Basic 编辑器”
3:选择菜单“插入”--“模块”,将上面的代码copy到里面
4:关闭“Visual Basic 编辑器”,选择保存

运行宏的方法:
1:进入“工具”-“宏”-“宏”
2:在“宏”界面中选中要执行的宏
3:点击“执行”按钮

选定身份证号那一列,执行该宏,之后再进行导入操作。
yangzhy 2005-05-12
  • 打赏
  • 举报
回复
谢谢楼上的!虽然我还没有实践,但是我知道你这种方法肯定可行。
我现在的办法都是把身份证号那一列拷贝到UE中,整列加上一个分号后导入的。

可是看邹建大哥的方法里好象没有提到这些,难道有更好的办法?

希望听到各位见仁见智的方法!
chenqianlong 2005-05-10
  • 打赏
  • 举报
回复
select * into excell from
OPENROWSET('MICROSOFT.JET.OLEDB.4.0'
,'Excel 8.0;IMEX=1;HDR=YES;DATABASE=d:\1.xls' --d:\1.xls是excel文件名
,sheet1$)
select * from excell

出錯啊。
OLE DB provider 'MICROSOFT.JET.OLEDB.4.0' reported an error. The provider did not give any information about the error.
OLE DB error trace [OLE/DB Provider 'MICROSOFT.JET.OLEDB.4.0' IDBInitialize::Initialize returned 0x80004005: The provider did not give any information about the error.].
claus2001 2005-05-10
  • 打赏
  • 举报
回复
mark
dbdebuger 2005-05-10
  • 打赏
  • 举报
回复
yangzhy(杨杨) :
--引用
我的EXCELE中身份证一栏是“数值”型的。SQLSERVER中的表对应字段建的是CHAR型的。身份证中有的包含字母,不能建成NUMERIC类型的。

我把EXCELE中改成“字符”型的后内容马上就变成科学记数法了。

---回答:

如果你在SQL里已经有表了,那应该使用NVARCHAR类型定义 ‘身份证字段’,EXCEL里就用“数值”类型的都可以
yangzhy 2005-05-09
  • 打赏
  • 举报
回复
谢谢两位!
可是我这么做了还是不成功啊!
我的EXCELE中身份证一栏是“数值”型的。SQLSERVER中的表对应字段建的是CHAR型的。身份证中有的包含字母,不能建成NUMERIC类型的。

我把EXCELE中改成“字符”型的后内容马上就变成科学记数法了。

你们怎么会成功呢?奇怪,跟环境有关系吗?

谢谢关注。
yba6699 2005-05-09
  • 打赏
  • 举报
回复
-- insert 表(要导入数据保存的字段列表)
select * from
OPENROWSET('MICROSOFT.JET.OLEDB.4.0','Excel 8.0;IMEX=1;HDR=YES;DATABASE=c:\abc.xls',sheet1$)

邹大哥的写法,我试了一下,在我的机器上不行,不知道是怎么回事

服务器: 消息 7399,级别 16,状态 1,行 2
OLE DB provider 'MICROSOFT.JET.OLEDB.4.0' reported an error. The provider did not give any information about the error.
zjcxc 2005-05-09
  • 打赏
  • 举报
回复
帖个文件出来看看嘛.
yangzhy 2005-05-09
  • 打赏
  • 举报
回复
顶一下。
不知上面两位是怎么成功的,我怎么导入总是有问题?
是不是我们所导的EXCEL文档的属性有区别?
谢谢!
ReViSion 2005-05-09
  • 打赏
  • 举报
回复
关注,是不是有的是X呀?
dbdebuger 2005-05-08
  • 打赏
  • 举报
回复


经测试 :zjcxc(邹建) 大哥的写法无论事先在SQL有没有“表”都可以通过, 不会变成科学记数法。谢谢,我也学会了一种新的写法。

dbdebuger 2005-05-08
  • 打赏
  • 举报
回复
我也试试 zjcxc(邹建) 大哥的 写法。 然后告诉你 结果
dbdebuger 2005-05-08
  • 打赏
  • 举报
回复
我遇到过相同的问题

在SQL中没有对应表的前提下, EXCEL中如果字段中全是数字,只要长度大于6,导入后就是科学记数法表示。

建议先在SQL建表,并且把与EXCEL“身份证”字段对应的SQL字段设为 NUMERIC, INT我没试过,你可以试试。 不会再是科学记数法。

有人说用NVARCHAR 可我那时候没成功。 你也可以试试
zjcxc 2005-05-08
  • 打赏
  • 举报
回复
如果要用dts导入的话,可以导入时,点"转换"按钮设置列的对应关系,解决列的匹配问题.

而对于身份证显示为数字的问题,应该在每个身份证号码前面加'解决.
zjcxc 2005-05-08
  • 打赏
  • 举报
回复
--直接用语句就可以解决这两个问题

insert 表(要导入数据保存的字段列表)
select * from
OPENROWSET('MICROSOFT.JET.OLEDB.4.0'
,'Excel 8.0;IMEX=1;HDR=YES;DATABASE=c:\test.xls' --c:\test.xls是excel文件名
,sheet1$) --sheet1$是工作表名+$
前言. 第1章 Windows窗体技术 案例1.1 多文档MDI应用程序 案例1.2 QQ窗体 案例1.3 卡通窗体, 案例1.4 带有分隔栏并更换主界面背景窗体 案例1.5 半透明渐显动画和渐变窗体 案例1.6 浮动的窗体 案例1.7 在屏幕中央并总在最前窗体 案例1.8 椭圆形窗体 案例1.9 可移动的五边形窗体 案例1.10 文字窗体 案例1.11 动态滑入滑出的闪烁窗体 案例1.12 以树形显示的窗体 案例1.13 图案动画窗体 本章小结 第2章 图形图像处理技术 案例2.1 波形图特效 案例2.2 在图像中写入文字 案例2.3 图像缩放与翻转 .案例2.4 图像的涂沫 案例2.5 百叶窗图像效果 案例2.6 图像的纹理和遮罩动画效果 案例2.7 图像的积木和浮雕效果 案例2.8 文字的360°旋转效果 案例2.9 可以随意移动的GIF动画 案例2.10 图像的属性及选择点的RGB颜色值 案例2.11 运行的时钟 本章小结 第3章 多媒体处理技术 案例3.1 MP3播放器 案例3.2 Flash播放器 案例3.3 Gif播放器 案例3.4 图像滚动展示动画效果 案例3.5 电子相册 案例3.6 交通信号灯 案例3.7 随机变换图像屏幕保护程序 案例3.8 MP3音乐屏幕保护程序 本章小结 第4章 数据库处理技术 案例4.1 利用控件连接Access数据库 案例4.2 利用代码连接加密Access数据库 案例4.3 读取并浏览Access数据库中的数据 案例4.4 利用控件连接SQL Server数据库 案例4.5 利用ADO.NET访问SQL Server数据库 案例4.6 连接Excel电子表格 案例4.7 利用SQL语句向数据库表中插入数据 案例4.8 利用存储过程修改数据库中的数据 案例4.9 分页显示数据库表中的数据 案例4.10 动态查询数据库表中的数据 案例4.11 SQL Server服务的开启和断开 本章小结 第5章 水晶报表和打印处理技术 案例5.1 水晶报表中使用SQL Server数据库 案例5.2 利用水晶报表分组统计数据库中的数据 案例5.3 图表在水晶报表中的应用 案例5.4 控制水晶报表的字段个数、字体颜色及记录显示 案例5.5 水晶报表中子报表的应用 案例5.6 利用打印组件实现窗体数据的打印 案例5.7 打印输出图形图像 案例5.8 调用Excel打印表格数据 案例5.9 调用Word打印表格数据 本章小结 第6章 文件及注册表处理技术 案例6.1 文件的动态创建与删除 案例6.2 文件夹的动态创建与删除.. 案例6.3 文件的打开和保存 案例6.4 文件的加密和解密 案例6.5 文件的动态查找 案例6.6 动态复制多个文件 案例6.7 动态获取系统当前目录及程序当前目录 案例6.8 文件属性的查看与修改 案例6.9 桌面图标和驱动器的显示与隐藏 案例6.10 禁示修改IE浏览器的主页 本章小结 第7章 硬件处理技术 案例7.1 计算机的注销、关闭和重新启动 案例7.2 任务栏和“开始”按钮的显示与隐藏 案例7.3 声卡的检测及PC喇叭的控制 案例7.4 动态控制光驱的打开和关闭 案例7.5 鼠标的控制 案例7.6 设置系统默认输入法 案例7.7 锁定计算机 案例7.8 屏幕保护程序的启动 案例7.9 利用串口进行通信 本章小结 第8章 数据结构与算法 案例8.1 单向链表数据结构 案例8.2 堆栈数据结构 案例8.3 队列数据结构 案例8.4 冒泡排序和选择排序 案例8.5 希尔排序和插入排序 案例8.6 搬砖问题算法 案例8.7 爱因斯坦的阶梯问题算法 案例8.8 求最大公因子的欧几里德算法 案例8.9 IP地址的合法性检查算法 案例8.10 由旧身份证自动生成新身证算法 本章小结 第9章 网络开发技术 案例9.1 动态获取本机名和IP地址 案例9.2 动态获取本机网卡地址 案例9.3 动态修改本机IP地址 案例9.4 网络连接和传输信息 案例9.5 网络在线检测 案例9.6 网络在线浏览器 案例9.7 HTTP动态下载 案例9.8 动态查看网页标题信息 案例9.9 电子邮件的发送 本章小结 第10章 Web程序开发技术 案例10.1 利用AdRotator控件随机显示广告图像 案例10.2 利用Calendar控件动态查询系统日期 案例10.3 会员登录系统 案例10.4 利用Application对象实现网站计数器 案例10.5 利用Session对象实现留言板 案例10.6 动态上传图像并显示 案例10.7 利用控件显示数据库表中的数据 案例10.8 分页显示数据库表中的数据 案例10.9 动态选择、编辑、删除数据库表中的数据 本章小结 第11章 应用程序的打包 案例11.1 Windows应用程序的打包 案例11.2 Web应用程序的打包 案例11.3 带有数据库文件的应用程序的打包 案例11.4 带有特定文件的应用程序打包 案例11.5 带有注册表信息的应用程序打包 本章小结 第12章 消费管理系统 12.1 系统总体设计 12.2 系统数据库设计 12.3 实例效果 12.4 消费管理登录系统 12.5 消费管理系统主界面 12.6 消费管理系统的查询功能 12.7 消费信息管理功能 12.8 消费信息报表输出界面 本章小结

27,579

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 应用实例
社区管理员
  • 应用实例社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧