可用第三方来导数据,参考spirexls for net的数据导入方法:
//创建Workbook对象并加载Excel文档
Workbook workbook = new Workbook();
workbookLoadFromFile(@"F:\ExportDataxlsx" , ExcelVersionVersion2013);
//获取第一张sheet
Worksheet sheet = workbookWorksheets[0];
//设置range范围
CellRange range = sheetRange[sheetFirstRow, sheetFirstColumn, sheetLastRow, sheetLastColumn];
//输出数据, 同时输出列名以及公式值
DataTable dt = sheetExportDataTable(range, true, true);
代码参考自原文。
选中sql
server2005中的数据库,点击鼠标右键,选择任务,然后选择导入数据,然后点击下一步,然后在数据源中选择microsoft
excel,然后选择你要导入的excel的路径,excel版本请选择最高,在这里需要说的是,如果你的excel文件是2007的或者2010的,请你使用office将其存为2003的excel文件,也就是说,需要将xlsx文件存储为xls,然后点击下一步,然后选择你要导进的地址,也就是ip,如果是导入到本机就填
号,然后选择你要导进的数据库就好了,一步一步来,有提示的
希望我的回答对你会有帮助,如果以上回答没有解决你的问题,请追问详述,当然也可以直接
hi
我,我百度随时在线,解决问题后望即时采纳,谢谢!
我也常做数据库设计,恕我直言,你设计的这张报表输出结构不太合理。你想,一年365天光数据列就要365列,报表太宽无法打印不说,明细也根本看不过来,查询起来也会非常慢,因为需要进行日期的行列转换。
所以最好是把你说的内容分成两张报表。
一张专门查询商品的汇总销售和计算增长率,格式为 货号、汇总销售数量、各种增长率 等等,可按货号,开始日期、结束日期设定查询条件。
一张专门查询商品的销售明细,格式为 货号、日期、销售数量 三列,可按货号、日期设定查询条件。
这样日常查查汇总销售的报表基本就可以了,如果对某种商品的数据感兴趣或有疑问,再对应来查明细的报表。
其实有两种方法,第一种是不用作任何程序直接在sql2005中就能手动将execl导入。自己去看软件,摸索下就行了,很简单!
当然另外一种是在程序中进行,
--如果接受数据导入的表已经存在
insert into 表 select from
OPENROWSET('MICROSOFTJETOLEDB40'
,'Excel 50;HDR=YES;DATABASE=c:\dataxlsx',sheet1$)
--如果导入数据并生成表
select into 表 from
OPENROWSET('MICROSOFTJETOLEDB40'
,'Excel 50;HDR=YES;DATABASE=c:\dataxlsx',sheet1$)
这里以SQL SERVE2008为例。SQLSERVER2008有一个“数据导入导出功能”,当然我们也可以打开数据库之后,在数据库上点击右键,然后选择“任务”,选择“导入数据”,我们就看到d出淡入数据的对话框:
这里我们主要导入数据的源格式是EXCEL的,在excel文件中,我们通常需要整理成数据表格的形式,excel中的数据不要出现合并的单元格等,必须是和数据库表对应的一条条记录的形式。在上图中我们先选择数据源为excel,然后再选择excel文件的路径,在最下面有一个“首行包含列名称”的复选项,默认是选中的,也就是说在导入数据的时候会把excel的第一行当做数据库表的列名称,根据需要进行选择。然后选择下一步:
上图中我们主要完成选择目的数据库,按照需要选择即可。然后我们直接点击下一步,指导出现下面的画面:
这就会打开excel文件的工作薄,我们选择一个工作簿(sheet),如果我们的excel中的数据列和数据库表中的列不是对应,则需要进行调整,上图中先选中一个“源”,然后再选择这个源对应的“目标”,此时按钮“编辑映射”处于可用状态,我们点击这个按钮,出现下图:
一使用php
excel
parser
pro软件,但是这个软件为收费软件;
二可将excel表保存为csv格式,然后通过phpmyadmin或者sqlyog导入,sqlyog导入的方法为:
·将excel表另存为csv形式;
·打开sqlyog,对要导入的表格右击,点击“导入”-“导入使用加载本地csv数据”;
·在d出的对话框中,点击“改变”,把选择“填写excel友好值”,点击确定;
·在“从文件导入”中选择要导入的csv文件路径,点击“导入”即可导入数据到表上;
三一个比较笨的手工方法,就是先利用excel生成sql语句,然后再到mysql中运行,这种方法适用于excel表格导入到各类sql数据库:
·假设你的表格有a、b、c三列数据,希望导入到你的数据库中表格tablename,对应的字段分别是col一、col二、col三
·在你的表格中增加一列,利用excel的公式自动生成sql语句,具体方法如下:
一)增加一列(假设是d列)
二)在第一行的d列,就是d一中输入公式:
=concatenate("insert
into
tablename
(col一,col二,col三)
values
(",a一,",",b一,",",c一,");")
三)此时d一已经生成了如下的sql语句:
insert
into
table
(col一,col二,col三)
values
('a','一一','三三');
四)将d一的公式复制到所有行的d列(就是用鼠标点住d一单元格的右下角一直拖拽下去啦)
5)此时d列已经生成了所有的sql语句
陆)把d列复制到一个纯文本文件中,假设为sqltxt
·把sqltxt放到数据库中运行即可,你可以用命令行导入,也可以用phpadmin运行
一、 建立数据库
方法一:使用向导,调出方法⑴可采用“文件”菜单“新建”
⑵或采用“工具”菜单“向导”
方法二:使用数据库设计器
1、 使用向导建立数据库
特点:可以方便快捷地创建数据库,但只适用于一般常用的数据库。
2、 使用数据库设计器建立数据库
特点: 最大特点就是灵活性
*** 作步骤:⑴“文件”菜单“新建”,显示新建对话框
⑵选择“数据库”和单击“新建文件”钮
⑶在创建对话框中输入新数据库的名称和单击“保存”钮
效果:数据库文件已经建立完成。
显示出“数据库设计器”窗口和“数据库设计工具”
打开“数据库设计器”工具方法:“显示”菜单“工具栏”
选择“数据库设计器”
三、建立表
1、 数据库与数据表
可以先建立自由表,然后再添加到数据库中
建立新的数据库表,系统会将其自动加入到数据库中。
2、 建立自由表
注意:自由表独立于任何数据库,如需要课添加到数据库中,但不能同时
将一个表添加到多个数据库。
预备知识:建立表必须首先建立表的结构
即要描述各个字段的字段名、字段类型、字段宽度、如果是数
值型还有小数位数,以及索引、是否再字段中允许空值(选择NULL)
3、 建立数据库表
有三种方法:
法一、“文件”菜单“新建”,显示新建对话框
选择“表”和单击“新建文件”钮
在创建对话框中输入新数表名称和单击“保存”钮
法二、再建立完数据库后,不关闭“数据库设计器”窗口,单击鼠标右键后
选择快捷菜单种的“新表”,单击“新表”钮,再创建对话框输入表 名
后“保存”
法三、使用数据库设计器工具栏
(“显示”菜单“工具栏”)
选择“数据库设计器”工具栏种的第一个钮“新建表”
二、使用命令建立数据库、数据库表
1、 建立数据库
CREATE DATABASE 数据库名称
2、 建立数据库表
CREATE TABLE │DBF 表名 [FREE]
(字段名1 字段类型 [(字段宽度 [,小数位数] )]
[(字段名2……]
二、使用向导建立查询
1、查询形式分类:查询向导:标准查询
交叉表向导:以电子表格形式输出查询结果
图形向导:以电子图形形式输出查询结果
2、使用查询向导建立查询步骤:
[0]使用查询向导前必须先打开用到的库表或自由表
⑴字段选取
⑵记录筛选
⑶选择排序方式
⑷查询完成(选择保存并运行)(浏览查询)
⑸打开查询设计器,修改查询
求采纳为满意回答。
以下面的做法为例,说明导入步骤:
oracle数据库有一个student表,现有一个excel表:studentxlsx,需导入oracle数据库student表中。
student表的拥有者是system,system密码为test
打开需导入的excel表格,单击office按钮,选择另存为--其他格式
选择保存路径(置于D:\),保存类型CSV(逗号分隔)(csv),设置文件名为studentcsv,单击保存
新建inputctl文件(置于D:\),内容为:
load data
infile 'd:\studentcsv'
append into table student fields terminated by ','
trailing nullcols(id,name,sex,age)
说明:infile后面参数为欲导入的excel表(已转换成csv格式)路径及名称;append在表后追加;table后面跟oracle数据库中的表名称; terminated by ','表示字段分隔符;(id,name,sex,age)表示字段名称列表
同时按Windows徽标键和R键,打开运行,输入cmd,打开命令提示符,输入命令:
sqlldr userid=system/test@netservicename control=d:\inputctl
说明:system/test,为oracle数据库表student的所有者及其密码;
@ netservicename为网络服务名;
control是inputctl文件名称及路径
进入oracle数据库,查询student表,excel已导入成功
以上就是关于如何用C#将Excel表中数据导入数据库全部的内容,包括:如何用C#将Excel表中数据导入数据库、EXCEL导入到数据库、如何把 .XLSx格式的表格中的数据导入到 SQL SERVER 2008数据库中的一个表里面,求具体步骤,谢谢等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)