不需要单独下载。
ODBC(Open Database Connectivity,开放数据库互连)是微软公司开放服务结构(WOSA,Windows Open Services Architecture)中有关数据库的一个组成部分,它建立了一组规范,并提供了一组对数据库访问的标准API(应用程序编程接口)。这些API利用SQL来完成其大部分任务。ODBC本身也提供了对SQL语言的支持,用户可以直接将SQL语句送给ODBC。
使用方法如下:
一、点击开始-管理工具-数据源。(若不能找到就去控制面板找到管理工具就可以发现数据源)
二、出现ODBC管理器,里面有用户系统还有文件DSN
这三者区别是:
1用户DSN允许单个用户在单个计算机上访问数据库(一对一);
2系统DSN允许在某个计算机上的多个用户访问数据库(一机多用);
3文件DSN在一个以DSN扩展名结尾的文本文件中存储相关信息,并且可以被安装了相同驱动器的不同计算机上的多个用户共享。
三、找到安装oracle驱动程序。
四、填写数据源名称。这名称自己定。但服务器填写就要根据oracle配置服务名。
五、打开ACCESS,在对象-表-点击新建链接表。
六、在d出文件框,在文件类型里选择ODBC数据库。
七、点击机器数据源-选择刚才设的数据源oracle。
八、就会d出odbc登录对话框。输入登录账户密码。确认即可。
九、选择想链接表。可以一次性选多个表。
十、在Access就可以看到所要链接的表。
第一个类:
package totabelaction;
import javaawteventActionEvent;
import javaawteventActionListener;
import javaxswingJOptionPane;
import topdfTableToPdf;
import totabelviewTabelData;
import totabelxlsExcelDemo;
public class TableAction implements ActionListener {
TabelData data;
public TableAction(TabelData data) {
thisdata = data;
}
public void actionPerformed(ActionEvent e) {
String str = egetActionCommand();
if ("添加"equals(str)) {
dataaddData();
} else if ("导出到Excel"equals(str)) {
ExcelDemo demo = new ExcelDemo();
demomethod(data);
} else if ("删除"equals(str)) {
if (datagetRow() != -1) {
datadelRow();
} else {
JOptionPaneshowMessageDialog(null, "请选择要删除的行!");
}
}else if("从Excel导入"equals(str)){
datagetXlsInfo();
}else if("从Excel导入到数据库"equals(str)){
datatoDb();
}else if("从table导出到pdf"equals(str)){
TableToPdf pdf=new TableToPdf();
pdfnewPage(data);
}else if("计算学分"equals(str)){
datagetXlsInfoToCredit();
}
}
}
第二个类:数据库连接
package totabeldb;
import javasqlConnection;
import javasqlDriverManager;
import javasqlResultSet;
import javasqlSQLException;
import javasqlStatement;
public class JdbcConnection {
private static JdbcConnection con;
public static JdbcConnection getCon() {
if (con == null) {
con = new JdbcConnection();
}
return con;
}
public Connection getConnection() {
Connection connection=null;
try {
ClassforName("oraclejdbcOracleDriver");
String url = "jdbc:oracle:thin:@127001:1521:oracle";
String user = "scott";
String password = "tiger";
connection = DriverManagergetConnection(url, user,
password);
} catch (ClassNotFoundException e) {
eprintStackTrace();
} catch (SQLException e) {
eprintStackTrace();
}
return connection;
}
// public static void main(String[] args) {
// JdbcConnection connection=new JdbcConnection();
// connectiongetConnection("asd", "99");
// }
}
第三个类:主类(入口)
package totabeldb;
import javasqlConnection;
import javasqlDriverManager;
import javasqlResultSet;
import javasqlSQLException;
import javasqlStatement;
public class JdbcConnection {
private static JdbcConnection con;
public static JdbcConnection getCon() {
if (con == null) {
con = new JdbcConnection();
}
return con;
}
public Connection getConnection() {
Connection connection=null;
try {
ClassforName("oraclejdbcOracleDriver");
String url = "jdbc:oracle:thin:@127001:1521:oracle";
String user = "scott";
String password = "tiger";
connection = DriverManagergetConnection(url, user,
password);
} catch (ClassNotFoundException e) {
eprintStackTrace();
} catch (SQLException e) {
eprintStackTrace();
}
return connection;
}
// public static void main(String[] args) {
// JdbcConnection connection=new JdbcConnection();
// connectiongetConnection("asd", "99");
// }
}
第四个类:
package totabelxls;
import javaioFile;
import javaioIOException;
import javautilVector;
import javautilregexMatcher;
import javautilregexPattern;
import javaxswingJOptionPane;
import totabelviewTabelData;
import jxlCell;
import jxlSheet;
import jxlWorkbook;
import jxlreadbiffBiffException;
import jxlwriteLabel;
import jxlwriteWritableSheet;
import jxlwriteWritableWorkbook;
import jxlwriteWriteException;
import jxlwritebiffRowsExceededException;
public class ExcelDemo {
/
@param args
/
private Vector title = new Vector();
private Vector[] array;
// public static void main(String[] args) {
// ExcelDemo demo = new ExcelDemo();
// demogetXlsInfo();
//
// }
public void method(TabelData table) {
int row = tablegetRowSize();
int column = tablegetColumnSize();
WritableWorkbook book = null;
Vector title = tablesetTitle();
Object[] str = titletoArray();
try {
book = WorkbookcreateWorkbook(new File("testxls"));
WritableSheet sheet = bookcreateSheet("成绩表", 0);
for (int i = 0; i < strlength; i++) {
sheetaddCell(new Label(i, 0, (String) str[i]));
}
for (int i = 1; i < row + 1; i++) {
for (int j = 1; j < column + 1; j++) {
sheetaddCell(new Label(j - 1, i, tablegetTableInfo(i - 1,
j - 1)));
}
}
bookwrite();
JOptionPaneshowMessageDialog(null, "导出完成!");
} catch (IOException e) {
eprintStackTrace();
} catch (RowsExceededException e) {
eprintStackTrace();
} catch (WriteException e) {
eprintStackTrace();
} finally {
try {
bookclose();
} catch (WriteException e) {
eprintStackTrace();
} catch (IOException e) {
eprintStackTrace();
}
}
}
/
输出Excel的数据到表单
@return
/
public Vector getXlsInfo() {
Vector v = new Vector();
jxlWorkbook rwb = null;
int index = 0;
try {
rwb = jxlWorkbookgetWorkbook(new File("testxls"));
Sheet[] sheet = rwbgetSheets();
for (int i = 0; i < sheetlength; i++) {
int rs = sheet[i]getRows();
array = new Vector[rs - 1];
for (int j = 1; j < rs; j++) {
Cell[] cell = sheet[i]getRow(j);
Vector info = new Vector();
for (int k = 0; k < celllength; k++) {
infoadd(cell[k]getContents());
}
array[index] = info;
index++;
vadd(info);
}
Cell[] titleCell = sheet[i]getRow(0);
for (int j = 0; j < titleCelllength; j++) {
titleadd(titleCell[j]getContents());
}
}
} catch (BiffException e) {
eprintStackTrace();
} catch (IOException e) {
eprintStackTrace();
} finally {
rwbclose();
}
return v;
}
public Vector getXlsInfoToCredit() {
Vector v = new Vector();
jxlWorkbook rwb = null;
try {
rwb = jxlWorkbookgetWorkbook(new File("d:/test/信科0821(南迁)xls"));
Sheet[] sheet = rwbgetSheets();
for (int i = 0; i < sheetlength; i++) {
int rs = sheet[i]getRows();
array = new Vector[rs - 1];
for (int j = 1; j < rs; j++) {
Cell[] cell = sheet[i]getRow(j);
Vector info = new Vector();
for (int k = 0; k < celllength; k++) {
// if(){
Pattern p = Patterncompile("[0-9]{1,}");
Matcher m = pmatcher(cell[k]getContents());
if (mmatches()) {
int score = IntegervalueOf(cell[k]getContents());
float result = getScore(score);
infoadd(result);
} else {
infoadd(cell[k]getContents());
}
}
vadd(info);
}
Cell[] titleCell = sheet[i]getRow(0);
for (int j = 0; j < titleCelllength; j++) {
titleadd(titleCell[j]getContents());
}
}
} catch (BiffException e) {
eprintStackTrace();
} catch (IOException e) {
eprintStackTrace();
} finally {
rwbclose();
}
return v;
}
public float getScore(int n) {
float score = n;
if (n < 60) {
score = 0;
return score;
} else {
if (n >= 60 && n <= 63) {
score = (float) 10;
} else if (n >= 64 && n <= 67) {
score = (float) 13;
} else if (n >= 68 && n <= 71) {
score = (float) 17;
} else if (n >= 72 && n <= 75) {
score = (float) 20;
} else if (n >= 76 && n <= 79) {
score = (float) 23;
} else if (n >= 80 && n <= 83) {
score = (float) 27;
} else if (n >= 84 && n <= 87) {
score = (float) 30;
} else if (n >= 88 && n <= 91) {
score = (float) 33;
} else if (n >= 92 && n <= 95) {
score = (float) 37;
} else if (n >= 96 && n <= 100) {
score = (float) 40;
}
return score;
}
}
public Vector getTitle() {
// getXlsInfo();
return title;
}
public Vector[] getArray() {
getXlsInfo();
return array;
}
}
因为时间问题就没有再写了,上面是我以前做的,不懂就q我
用友sql2005数据库可以说是目前通用的用友数据库中最难安装的一款数据库了,因为安装过程中配置的选项较多,而且一旦点错,安装错了实例名称,就会导致用友软件安装后不断提示SA口令的问题,因为目前用友T1,用友T3,用友T6及用友U8只能识别默认的实例名,而安装SQL2005数据库时默认是选择的sqlexpress实例名,一旦忽略就安装错了, 需要重新安装,所以用友财务软件免费下载网站将sql2005数据库的安装方法整理了一下,并以图文的形式指导大家怎么安装用友sql2005数据库,值得提醒的是,大家在安装过程中一定要耐心参考哦,以下是详细安装步骤:
第1步:解压用友软件免费下载网站提供的用友sql2005数据库安装程序,下载地址:>
1、在安装SQLServer2008数据库时,请确保系统的硬件和系统要求都得到了满足。如果系统不符合要求,则可能会导致安装失败。您可以在Microsoft官网查看相关的硬件和系统要求。
2、如果已经安装了SQLServer2005数据库,那么在安装SQLServer2008数据库之前,请卸载SQLServer2005数据库。安装多个版本的数据库可能会导致冲突和错误。
3、您可以尝试重新下载SQLServer2008数据库的安装程序,并确保下载的安装程序没有受到破损或篡改。如果没有下载正确的文件,安装过程可能会出现各种错误。
当然需要驱动程序了。
驱动程序就如同进入一座房子的门户的钥匙,不同的房子(门)需要不同的钥匙,也就是针对不同的数据库,需要不同的驱动程序,只有有了驱动程序,你的java程序才可以访问相应的数据库。
安装一个数据库,安装的应该有数据库本身和数据库管理软件,两个部分。
数据库自带有驱动程序吗?那是肯定的,否则数据库管理软件就不可能访问到数据库了。但是我们为什么使用不了那个自带的驱动,而要使用第三方驱动呢?因为数据库自带的驱动是一个最底层访问数据库软件的驱动,这个驱动是直接访问数据库的,而我们如果用java语言来访问数据库其实最终还是访问的那个数据库自带的驱动,但是,因为我们不知道如果访问数据库(访问数据库需要使用那些类、使用类中的那个方法、方法中有什么参数)这些我们都不知道,不知道我们就无从下手,但是这些有人知道。也就是开发第三方驱动的那些人知道,他们与该数据库服务商协商后开发出一套访问数据库的标准(访问数据库需要使用什么类、类中什么方法、方法有什么参数)这些都是硬性的规定的,我们只要根据他的规定编写程序就可以通过我们的程序去调用底层的数据库驱动,来访问数据库了。
访问mysql数据库,需要相应的mysql的驱动程序,到网上搜搜,下载一个放到你的项目中,在程序中引用就可以了。
以上就是关于Access的ODBC驱动程序需要单独下载吗全部的内容,包括:Access的ODBC驱动程序需要单独下载吗、java代码怎样将oracle数据库中数据下载本地,为.txt文件或者.excel文件。、怎么安装用友sql2005数据库等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)