用DELPHI编,实现查询EXCEL表在数据库中的表是否存在,不存在则插入数据库表中,请DELPHI高手帮个忙

来源:百度知道 编辑:UC知道 时间:2024/05/19 12:17:07
下面是一张EXCEL表格
客户代码 客户名称 客户税号 客户地址 客户开户银行账号
000001 abc 11111000 dasgadsgs 3241354325423
000002 dsf 32413454 dasadgdsgf 2314341413143
。。。
下面是一个用SQL语句创建的表
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_PADDING ON
GO
CREATE TABLE [dbo].[客户基本资料表](
[系统编号] [int] IDENTITY(1,1) NOT NULL,
[单位级别代码] [varchar](10) COLLATE Chinese_PRC_CI_AS NOT NULL,
[单位名称] [varchar](255) COLLATE Chinese_PRC_CI_AS NOT NULL,
[单位电话] [varchar](255) COLLATE Chinese_PRC_CI_AS NULL,
[所在省份代码] [varchar](10) COLLATE Chinese_PRC_CI_AS NOT NULL,
[所在城市代码] [varchar](10) COLLATE Chinese_PRC_CI_AS NOT NULL,
[邮政编码] [varchar](6) COLLATE Chinese_PRC_CI_AS NULL,
[通信地址] [varchar](255) COLLATE Chinese_PRC_CI_AS NULL,
[公司网址] [varchar](255) COLLATE Chinese_PRC_CI_AS NULL,
[公司类型代码] [varchar](10) COLLATE Chinese_PRC_CI_AS NOT NULL,
[公司性质代码] [varchar](10) COLLATE Chinese_PRC_CI_AS

有两种方式
一种建立Excel的Com对象,通过对象属性控制,来读取Excel数据
这个网上有很多资料,复杂一些。

另一种是将Excel的工作簿当做一个数据表来操作,只要你会基本的数据库操作就OK

这里给你一个连接串
Const
ConnExcelStr = 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\1.xls;Extended Properties=Excel 8.0;Persist Security Info=False';

这个连接串是用来连接“C:\1.xls”的

放一个ADOQuery到窗体上,在程序中把这个连接串赋值给它的Connectionstring属性

然后它就是你熟悉的数据库操作了

查询工作簿的语句(这里只写部分代码)

ADOQuery.SQL.Add('Select * from [Sheet1$]');//Sheet1是工作簿的名字 $不要忘记
ADOQuery.Open;

接下来你应该明白了吧。

注明:
Excel的格式第一行必须是字段名