给你这些,够用了
//-------批量导入用比较实用
select
*
into
[Excel
8.0database=导出目录].导出表名
from
表
//这个是你要的
select
*
into
[FoxPro
2.6database=导出目录].导出表名
from
表
select
*
into
[FoxPro
2.5database=同上].导出表名
from
表
select
*
into
[dBase
IIIdatabase=同上].导出表名
from
表
select
*
into
[Paradox
4.Xdatabase=同上].导出表名
from
表
select
*
into
[database=C:\temp\xxx.mdb].导出表名
from
表
//----循环导入
给你些关键的片段信息,全的我这里太长了
Const
ConnExcelStr
=
'Provider=Microsoft.Jet.OLEDB.4.0Data
Source=%sExtended
Properties=Excel
8.0Persist
Security
Info=False'
//这个是连接串
ForMat(ConnExcelStr,[FileName])
//FileName是Excel文件
单独一个ADOQuery。使用以上连接串
ADOQuery.SQL.ADD('Select
*
from
[Log$]')
//[Log$]是Excel里的一个页,你可以把它看成一个表
剩下的和 *** 作普通数据库一样了
While
Not
ADOQuery.Eof
do
begin
//TODO
ADOQuery.Next
end
元接口部分引用comobj单元(uses)\x0d\x0aprocedureTForm1.Button1Click(Sender:TObject)\x0d\x0a\x0d\x0avarexcelx,excely:string\x0d\x0a\x0d\x0abegin\x0d\x0a\x0d\x0atry\x0d\x0a\x0d\x0aExcelApp:=CreateOleObject('Excel.Application')\x0d\x0a\x0d\x0aWorkBook:=ExcelApp.WorkBooks.Open(opendialog.FileName)//使用opendialog对话框指定\x0d\x0a//excel档路径\x0d\x0a\x0d\x0aExcelApp.Visible:=false\x0d\x0a\x0d\x0aExcelRowCount:=WorkBook.WorkSheets[1].UsedRange.Rows.Count\x0d\x0a\x0d\x0afori:=1toexcelrowcount+1do\x0d\x0a\x0d\x0abegin\x0d\x0a\x0d\x0aexcelx:=excelapp.Cells[i,1].Value\x0d\x0a\x0d\x0aexcely:=excelapp.Cells[i,2].Value\x0d\x0a\x0d\x0aif((excelapp.Cells[i,1].Value='')and(ExcelApp.Cells[i,2].Value=''))then\x0d\x0a//指定excel档的第i行,第1,2(看情况而定)行如果为空就退出,这样的设定,最好是你的档案力这两行//对应数据库中不能为空的数据\x0d\x0a\x0d\x0aexit\x0d\x0a\x0d\x0aelse\x0d\x0a\x0d\x0awithquery1do\x0d\x0a\x0d\x0abegin\x0d\x0a\x0d\x0aclose\x0d\x0asql.clear\x0d\x0asql.add(insertintotest(name,address)values(:name,:address))\x0d\x0aparambyname('name').asstring:=excelx//excel档的第一列插入到test表的name栏位\x0d\x0aparambyname('address').asstring:=excely//excel档的第二列插入到test表的address栏位\x0d\x0aexecsql\x0d\x0a\x0d\x0aend\x0d\x0a\x0d\x0aend\x0d\x0a\x0d\x0afinally\x0d\x0a\x0d\x0aWorkBook.Close\x0d\x0a\x0d\x0aExcelApp.Quit\x0d\x0a\x0d\x0aExcelApp:=Unassigned\x0d\x0a\x0d\x0aWorkBook:=Unassigned\x0d\x0a\x0d\x0aend\x0d\x0a\x0d\x0aend\x0d\x0a\x0d\x0a上面的是导到sql中的。oracle应该也差不多的吧。。1.打开SQLServer
Management
Studio,按图中的路径进入导入数据界面。
2.导入的时候需要将EXCEL的文件准备好,不能打开。点击下一步。
3.数据源:选择“Microsoft
Excel”除了EXCEL类型的数据,SQL还支持很多其它数据源类型。
4.选择需要导入的EXCEL文件。点击浏览,找到导入的文件确定。
5.再次确认文件路径没有问题,点击下一步。
6.默认为是使用的WINODWS身份验证,改为使用SQL身份验证。输入数据库密码,注意:数据库,这里看看是不是导入的数据库。也可以在这里临时改变,选择其它数据库。
7.选择导入数据EXCEL表内容范围,若有几个SHEET表,或一个SHEET表中有些数据不想导入,则可以编写查询指定的数据进行导入。点击下一步。
8.选择需要导入的SHEET表,比如在这里将SHEET表名改为price,则导入后生面的SQL数据库表为price$。点击进入下一步。
9.点击进入下一步。
10.在这里完整显示了导入的信息,执行内容,再次确认无误后,点击完成,开始执行。
11.可以看到任务执行的过程和进度。
12.执行成功:可以看看执行结果,已传输1754行,表示从EXCEL表中导入1754条数据,包括列名标题。这样就完成了,执行SQL查询语句:SELECT
*
FROM
price$就可以查看已导入的数据内容。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)