java jdc-odbc桥读取excel指导.docVIP

  • 2
  • 0
  • 约1.05万字
  • 约 8页
  • 2016-10-18 发布于贵州
  • 举报
java jdc-odbc桥读取excel指导

步骤一,创建Excel文件 ??我们就来创建一个员工信息的Excel文件吧。该文件名称就叫Employee,包 括5列:ID、Name、Gender、Title和Email。见Figuree 1。 为了能被微软的ODBC Driver识别,Excel文件要满足一定的格式。一般来说,ODBC Driver会把Excel?WorkSheet的第一行的列名当成数据库表的对应得列名,而数据库表的名字就是WorkSheet的名字(注意数据库表 的名字不是Excel文件的名 字)。 ID Name Gender Title Email 1000 Jesse, G. M PM jesse@ 1001 Kamal M SE kamal@ 1002 Jenny F PA jenny@ 1003 … … … … Figure 1 Employee 步骤二,创建ODBC数据源 首先打开“控制面板”,然后是“管理工具”,接着在该目录下选择“数据源”。这时会有一个对话框弹出。 转到系统DSN标签,选添加: 在选择驱动列表中如下图选择。点击“完成”,出现 在“数据源名”编辑框输入“emp”,在“选择工作簿…”选中刚才创建的Excel文件Employee.xls,注意去掉只读选项,否则我们只能从该数据源读取数据,而不能插入和修改。点击确定。 最后emp会出现在“系统数据源”列表中。如下图。 到此,一个ODBC数据源就建好了。 ??下面就让我们来写一段java代码来读取该Excel文件。我们知道该文件中存储着员工的信息,假设我们现在要完成两个工作,一个是根据员工ID,列出该员工的相关信息;一个是向数据库中添加新的记录。 如果我们现在是对Oracle或是MSSQL等常见数据库操作,实现这两个功能的SQL语句马上就可以写出。假设表名为employee,下面的两条 SQL语句分别是查询ID为1000的员工记录和插入一条ID为1005的新记录。 1) SELECT ID, Name, Gender, Title, Email FROM employee WHERE ID=1000; 2) INSERT INTO employee(ID, Name, Gender, Title, Email) VALUES (1005, Yanjiang, M,PM,yanan@); 那么对Excel文件,这样写可以吗? 其实查询和读取Excel的SQL,95%以上和上面的是一样的。只需要注意一点,就是我们不能直接使用数据库表名,而是要在其后加上$字符,并把新的名 字放到[]中。对于这个例子来说,因为我们的数据表名为employee,所以在SQL语句中我们要写成 [employee$] 3) SELECT ID, Name, Gender, Title, Email FROM [employee$] WHEREID=1000; 4) INSERT INTO [employee$] (ID, Name, Gender, Title, Email)?VALUES (1005, Yanjiang, PM,yanan@); 下面就列出了所有的代码。 import java.sql.Connection; import java.sql.ResultSetMetaData; import java.sql.SQLException; import java.sql.Statement; import java.sql.ResultSet; import java.sql.DriverManager; import java.util.Collection; import java.util.HashMap; import java.util.Iterator; public class ExcelAccess { private Connection c; private Statement stmnt; private String driver; private String url; private String username; private String password; public ExcelAccess() { driver = sun.jdbc.odbc.JdbcOdbcDriver; url = jdbc:odbc:emp; username = ; password = ; } /** * constructor with specified pa

文档评论(0)

1亿VIP精品文档

相关文档