关于java连接数据库--直连

戏子 2011-05-17 08:02:05
各位大侠,帮解释下
创建SQL驱动Class.forName()
连接SQL路径String url=""
帮讲下,括号和引号里边东西的理解和应注意的地方,连接前需要调哪些配置,能不能附带个简单的例子,谢谢
...全文
132 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
ETCentury 2011-05-20
  • 打赏
  • 举报
回复
数据库的连接就是那几个步骤,可以看做模板。
要注意的就是驱动,各个连接的url,有时候还要考虑编码的问题
zrarleiyang 2011-05-20
  • 打赏
  • 举报
回复
连接不同的数据库,驱动和连接url都是不一样的,
Java数据库连接(JDBC)由一组用 Java 编程语言编写的类和接口组成。JDBC 为工具/数据库开发人员提供了一个标准的 API,使他们能够用纯Java API 来编写数据库应用程序。然而各个开发商的接口并不完全相同,所以开发环境的变化会带来一定的配置变化。本文主要集合了不同数据库的连接方式。

  一、连接各种数据库方式速查表

  下面罗列了各种数据库使用JDBC连接的方式,可以作为一个手册使用。

  1、Oracle8/8i/9i数据库(thin模式)

  Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();

  String url="jdbc:oracle:thin:@localhost:1521:orcl"; //orcl为数据库的SID

  String user="test";

  String password="test";

  Connection conn= DriverManager.getConnection(url,user,password);

  2、DB2数据库

  Class.forName("com.ibm.db2.jdbc.app.DB2Driver ").newInstance();

  String url="jdbc:db2://localhost:5000/sample"; //sample为你的数据库名

  String user="admin";

  String password="";

  Connection conn= DriverManager.getConnection(url,user,password);

  3、Sql Server7.0/2000数据库

  Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();

  String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=mydb";

  //mydb为数据库

  String user="sa";

  String password="";

  Connection conn= DriverManager.getConnection(url,user,password);

  4、Sybase数据库

  Class.forName("com.sybase.jdbc.SybDriver").newInstance();

  String url =" jdbc:sybase:Tds:localhost:5007/myDB";//myDB为你的数据库名

  Properties sysProps = System.getProperties();

  SysProps.put("user","userid");

  SysProps.put("password","user_password");

  Connection conn= DriverManager.getConnection(url, SysProps);

  5、Informix数据库

  Class.forName("com.informix.jdbc.IfxDriver").newInstance();

  String url = "jdbc:informix-sqli://123.45.67.89:1533/myDB:INFORMIXSERVER=myserver;

  user=testuser;password=testpassword"; //myDB为数据库名

  Connection conn= DriverManager.getConnection(url);

  6、MySQL数据库

  Class.forName("org.gjt.mm.mysql.Driver").newInstance();

  String url ="jdbc:mysql://localhost/myDB?user=soft&password=soft1234&useUnicode=true&characterEncoding=8859_1"

  //myDB为数据库名

  Connection conn= DriverManager.getConnection(url);

  7、PostgreSQL数据库

  Class.forName("org.postgresql.Driver").newInstance();

  String url ="jdbc:postgresql://localhost/myDB" //myDB为数据库名

  String user="myuser";

  String password="mypassword";

  Connection conn= DriverManager.getConnection(url,user,password);

  8、access数据库直连用ODBC的

  Class.forName("sun.jdbc.odbc.JdbcOdbcDriver") ;

  String url="jdbc:odbc:Driver={MicroSoft Access Driver (*.mdb)};DBQ="+application.getRealPath("/Data/ReportDemo.mdb");

  Connection conn = DriverManager.getConnection(url,"","");

  Statement stmtNew=conn.createStatement() ;

r9cnkr 2011-05-20
  • 打赏
  • 举报
回复
这个是我自己写的一个单纯数据库连接的程序,只是测试能不能连上。可以给你做一个参考
public class NewClass {
public static void main(String[] args) {
Connection conn = null;//JDBC关联部分
try {
Class.forName("oracle.jdbc.driver.OracleDriver");//JDBC驱动登录
conn = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:score", "chengji", "chengji");//从DriverManager得到连接
System.out.println("数据库连接成功");
conn.close();//数据库关闭连接
} catch (Exception e) {
System.out.println("数据库连接失败");
}
}
}
戏子 2011-05-18
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 wangxiaolongbob 的回复:]
你一开始在网上下的jar包应该都导入进来了吧,然后Class.forname()里面填的是你这个jar包的路径,如果你用的是eclips的话,你可以直接在左边的筐里看到的,具体在什么地方我也说不清楚,你去百度一大把,而且这一长串是不用记的.第二个的话,好象是数据库厂家固定的东西,是要记的,我不只道URL是怎么构造起来的,所以还是百度吧,一起学习!
[/Quote]
url里边写数据库路径,连接url="jdbc:mircorsoft:sqlserver://localhost:1433;database=(数据库名)";引的SQLsever2000的数据库 2005的好像不一样,应该是不要mircorsoft.
代码容易写,只是有的地方总是调试错误
刘朝雷 2011-05-18
  • 打赏
  • 举报
回复
你可以借鉴这个小例子
刘朝雷 2011-05-18
  • 打赏
  • 举报
回复
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

public class jdbc3 {

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
try {
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
System.out.println("找不到驱动程序!");
e.printStackTrace();
}
Connection conn=null;
PreparedStatement st=null;
ResultSet rs=null;
String url="jdbc:sqlserver://127.0.0.1:1433;DatabaseName=AdventureWorks;user=sa;password=123";
try {
conn=DriverManager.getConnection(url);
String sql="select * from HumanResources.Department where DepartmentID <? order by DepartmentID desc";
st=conn.prepareStatement(sql);
st.setInt(1, 15);
rs=st.executeQuery();
while(rs.next()){
System.out.print(rs.getString(1)+"\t");
System.out.println(rs.getString(2));
}
} catch (SQLException e) {

// TODO Auto-generated catch block
e.printStackTrace();
}finally{

try {
if (rs!=null)
rs.close();
if(st!=null)
st.close();
if(conn!=null)
conn.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}



}

}
戏子 2011-05-17
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 nian_jun 的回复:]
Java code

import java.sql.*;
public class TestJDBCsql {
public static void main(String [] args){
Connection conn =null;
Statement stat =null;
ResultSet rs = null;
……
[/Quote]
其实这些代码我有只是,那几处关键地方不理解
NIan_jun 2011-05-17
  • 打赏
  • 举报
回复

import java.sql.*;
public class TestJDBCsql {
public static void main(String [] args){
Connection conn =null;
Statement stat =null;
ResultSet rs = null;
try {
new com.mysql.jdbc.Driver();
conn =
DriverManager.getConnection("jdbc:mysql://localhost/liuwenbo?user=root&password=liuwenbo" );
stat = conn.createStatement();
rs = stat.executeQuery("select * from dept");
while(rs.next()){
System.out.println(rs.getInt("deptno"));
System.out.println(rs.getString("dname"));
System.out.println(rs.getString("loc"));

}
} catch (SQLException ex) {
System.out.println("SQLException: " + ex.getMessage());
System.out.println("SQLState: " + ex.getSQLState());
System.out.println("VendorError: " + ex.getErrorCode());
}
try {
if(rs!=null){
rs.close();
rs= null;
}
if(stat!=null){
stat.close();
stat=null;
}
if(conn!=null){
conn.close();
conn =null;
}
} catch (SQLException e) {
e.printStackTrace();
}
}
}
amos1989 2011-05-17
  • 打赏
  • 举报
回复
网上搜索jdbc 大把的例子啊
SelfMedicated 2011-05-17
  • 打赏
  • 举报
回复
你一开始在网上下的jar包应该都导入进来了吧,然后Class.forname()里面填的是你这个jar包的路径,如果你用的是eclips的话,你可以直接在左边的筐里看到的,具体在什么地方我也说不清楚,你去百度一大把,而且这一长串是不用记的.第二个的话,好象是数据库厂家固定的东西,是要记的,我不只道URL是怎么构造起来的,所以还是百度吧,一起学习!

51,408

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧