当前位置: 技术问答>java相关
如何连接数据库~?
来源: 互联网 发布时间:2015-03-12
本文导语: 请问jdbc的驱动程序是jdk当中自带的吗? 在连接数据库时,如何对jdbc的驱动程序进行设置连接? 在与其他数据库驱动程序连接时会提示错误 比如在连接piontbase的drivers时 就会说:not suitable drivers 我不明白连接一个数...
请问jdbc的驱动程序是jdk当中自带的吗?
在连接数据库时,如何对jdbc的驱动程序进行设置连接?
在与其他数据库驱动程序连接时会提示错误
比如在连接piontbase的drivers时
就会说:not suitable drivers
我不明白连接一个数据库时因该对jdbc进行怎样的设置
比如连接odbc时需要怎样的设置呢
是否所有的原因都是因为jdk没有自带jdbc的驱动程序?
还是路径设置时遇到了问题?
还请明师指导~
在连接数据库时,如何对jdbc的驱动程序进行设置连接?
在与其他数据库驱动程序连接时会提示错误
比如在连接piontbase的drivers时
就会说:not suitable drivers
我不明白连接一个数据库时因该对jdbc进行怎样的设置
比如连接odbc时需要怎样的设置呢
是否所有的原因都是因为jdk没有自带jdbc的驱动程序?
还是路径设置时遇到了问题?
还请明师指导~
|
我只做过jdbc-odbc bridge连接数据库,感觉和直接用ODBC差不多,就是在写协议的时候有点不同。
try
{
Statement s;
PreparedStatement ps;
ResultSet rs;
//读取数据库信息
try{
RandomAccessFile file=new RandomAccessFile("nmms.ini","r");
dbName=file.readLine();
dbUsername=file.readLine();
dbPassword=file.readLine();
file.close();
}catch(Exception ex){
System.out.println(ex.toString());
}
//建立数据库连接
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
String url=new String("jdbc:odbc:"+dbName);
Connection con=DriverManager.getConnection(url,dbUsername,dbPassword);
System.out.println("Connection"+con);
s=con.createStatement();
//建立和录入数据库
try
{
s.executeUpdate("CREATE TABLE NMMSTable (来稿日期 char(15),来稿单位 Char(40),印付名称 Char(20),纸张 char(15),单价 char(15),数量 char(15),金额 char(15) ,开别 char(15),色别 char(10),交货日期 char(15),收货人 char(10),发票号码 char(20) ,开票金额 char(15) ,付款日期 char(15))");
System.out.println("Table mytable created");
}catch(Exception exp){
System.out.println(exp.toString());
}
ps=con.prepareStatement("INSERT INTO NMMSTable (来稿日期,来稿单位,印付名称,纸张,单价,数量,金额,开别,色别,交货日期,收货人,发票号码,开票金额,付款日期) VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?,?)");
ps.setString(1,rdateField.getText());
ps.setString(2,unitField.getText());
ps.setString(3,nameField.getText());
ps.setString(4,paperField.getText());
ps.setString(5,priceField.getText());
ps.setString(6,numberField.getText());
ps.setString(7,scoreField.getText());
ps.setString(8,kField.getText());
ps.setString(9,colorField.getText());
ps.setString(10,checkoutDateField.getText());
ps.setString(11,personField.getText());
ps.setString(12,checkNumberField.getText());
ps.setString(13,checkScoreField.getText());
ps.setString(14,payforDateField.getText());
ps.executeUpdate();
System.out.println("Insert data successful");
con.close();
}catch(Exception ex){
System.out.println(ex);
note.setText("一个或者多个项目未填");
}
}
这是我做的一个管理软件的一个片断,用法大致如此。
try
{
Statement s;
PreparedStatement ps;
ResultSet rs;
//读取数据库信息
try{
RandomAccessFile file=new RandomAccessFile("nmms.ini","r");
dbName=file.readLine();
dbUsername=file.readLine();
dbPassword=file.readLine();
file.close();
}catch(Exception ex){
System.out.println(ex.toString());
}
//建立数据库连接
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
String url=new String("jdbc:odbc:"+dbName);
Connection con=DriverManager.getConnection(url,dbUsername,dbPassword);
System.out.println("Connection"+con);
s=con.createStatement();
//建立和录入数据库
try
{
s.executeUpdate("CREATE TABLE NMMSTable (来稿日期 char(15),来稿单位 Char(40),印付名称 Char(20),纸张 char(15),单价 char(15),数量 char(15),金额 char(15) ,开别 char(15),色别 char(10),交货日期 char(15),收货人 char(10),发票号码 char(20) ,开票金额 char(15) ,付款日期 char(15))");
System.out.println("Table mytable created");
}catch(Exception exp){
System.out.println(exp.toString());
}
ps=con.prepareStatement("INSERT INTO NMMSTable (来稿日期,来稿单位,印付名称,纸张,单价,数量,金额,开别,色别,交货日期,收货人,发票号码,开票金额,付款日期) VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?,?)");
ps.setString(1,rdateField.getText());
ps.setString(2,unitField.getText());
ps.setString(3,nameField.getText());
ps.setString(4,paperField.getText());
ps.setString(5,priceField.getText());
ps.setString(6,numberField.getText());
ps.setString(7,scoreField.getText());
ps.setString(8,kField.getText());
ps.setString(9,colorField.getText());
ps.setString(10,checkoutDateField.getText());
ps.setString(11,personField.getText());
ps.setString(12,checkNumberField.getText());
ps.setString(13,checkScoreField.getText());
ps.setString(14,payforDateField.getText());
ps.executeUpdate();
System.out.println("Insert data successful");
con.close();
}catch(Exception ex){
System.out.println(ex);
note.setText("一个或者多个项目未填");
}
}
这是我做的一个管理软件的一个片断,用法大致如此。