Java中如何与数据库建立连接?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java中如何与数据库建立连接?相关的知识,希望对你有一定的参考价值。
参考技术A 导入java.sql包 \\x0d\\x0a一、加载要连接数据库的驱动程序 \\x0d\\x0a//Jdbc-Odbc桥 和 Microsoft Access 数据库 \\x0d\\x0aClass.forName("sun.jdbc.odbc.JdbcOdbcDriver"); \\x0d\\x0a// SQL Server 驱动程序: \\x0d\\x0aClass.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver"); \\x0d\\x0a注:Class.forName()方法将给定的类加载到JVM,如果系统中不存在给定的类,则会引发异常 \\x0d\\x0a二、通过驱动程序管理器得到连接实例 \\x0d\\x0aConnection conn=null; \\x0d\\x0a//1. \\x0d\\x0a//1.1建立数据源 \\x0d\\x0aconn=DriverManager.getConnection("jdbc:odbc:MyDataSource"); //MyDataSource是数据源名称 \\x0d\\x0a//1-2、不建立数据源 \\x0d\\x0aconn=DriverManager.getConnection("jdbc:odbc:;Driver=Microsoft Access Driver (*.mdb);DBQ=C:\\VBTest.mdb"); \\x0d\\x0a//2.SQL Server \\x0d\\x0aconn=DriverManager.getConnection("jdbc:microsoft:sqlserver://127.0.0.1:1433;databasename=mydb","sa",""); \\x0d\\x0a\\x0d\\x0a注:DriverManager类跟踪已注册的驱动程序,通过getConnection(URL)方法, 找到一个能够连接至URL中指定的数据库驱动程序 \\x0d\\x0a它接收三个参数, 分别表示1 数据源的名称、类型 2 用户名(可选) 3 密码(可选) \\x0d\\x0a三、基于连接对象建立处理器对象 \\x0d\\x0aStatement stmt=conn.createStatement(); \\x0d\\x0a四、准备sql命令 \\x0d\\x0aString sql="select * from Student"; \\x0d\\x0a五、执行命令返回结果集 \\x0d\\x0aResultSet rs=stmt.executeQuery(sql); \\x0d\\x0a六、显示结果集 \\x0d\\x0awhile(rs.next())//只要后面有记录 \\x0d\\x0a \\x0d\\x0a//对当前行的所有字段遍历 \\x0d\\x0afor(int i=1;i<=rs.getMetaData().getColumnCount();i++) \\x0d\\x0a \\x0d\\x0aSystem.out.print(rs.getMetaData().getColumnName(i)+": ");//显示字段名 \\x0d\\x0aSystem.out.println(rs.getString(i));//显示字段当前值 \\x0d\\x0a \\x0d\\x0aSystem.out.println(); \\x0d\\x0a \\x0d\\x0a\\x0d\\x0a七、关闭资源 \\x0d\\x0a\\x0d\\x0ars.close(); //关闭记录集 \\x0d\\x0astmt.close(); //关闭处理器对象 \\x0d\\x0aconn.close(); //关闭连接对象 \\x0d\\x0a\\x0d\\x0a预处理器的应用: \\x0d\\x0a\\x0d\\x0a//3.基于连接对象建立预处理器对象 \\x0d\\x0aPreparedStatement pstmt=conn.prepareStatement("insert into student values(?,?,?,?)"); \\x0d\\x0a\\x0d\\x0a//4.给预处理对象的参数赋值 \\x0d\\x0apstmt.setString(1,"8888"); \\x0d\\x0apstmt.setString(2,"nemo"); \\x0d\\x0apstmt.setString(3,"accp"); \\x0d\\x0apstmt.setString(4,"sanxianglu"); \\x0d\\x0a\\x0d\\x0a//5.执行预处理命令 \\x0d\\x0aint i=pstmt.executeUpdate(); \\x0d\\x0aSystem.out.println(i+"条记录已成功插入!");在Java中建立Oracle数据库表怎么建啊??????
如题
下面是用JAVA 通过JDBC连接 Oracle的步骤希望对你有帮助
(1)装载并注册数据库的JDBC驱动程序
载入JDBC驱动:
Class.forName("oracle.jdbc.driver.OracleDriver");
注册JDBC驱动:
java.sql.DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
(2)建立与数据库的连接
要建立与数据库的连接,首先要创建指定数据库的URL。连接数据库的URL对象,利用DriverManager 的getConnection方法建立的。数据库URL对象与网络资源的统一资源定位类似,其构成格式如下:
jdbc:subProtocol:subName://hostname:port;DatabaseName=ⅹⅹⅹ
其中:
jdbc表示当前通过Java的数据库连接进行数据库访问;
subProtocol表示通过某种驱动程序支持的数据库连接机制;
subName表示在当前连接机制下的具体名称;
hostname表示主机名;
port表示相应的连接端口;
DatabaseName表示要连接的数据库的名称。
这里以与Oracle数据库的连接为例:
连接Oracle 8/8i/9i数据库(用thin模式)
url = jdbc:oracle:thin:@hostip:1521:oracleSID;
注意:hostip指主机的ip地址,oracleSID指数据库的SID。
再者确定连接数据库的用户名与密码,即user和password 的值:
user = “ⅹⅹⅹ “;
password = “ⅹⅹⅹ“;
最后使用如下语句:
Connection con=java.sql.DriverManager.getConnection(url,user,password);
(3)创建Statement对象
例如:
Statement stmt = con.createStatement();
(4)调用并执行SQL语句
例如:
String sql = “select a,b,c from table1";//table1为你所要查询的表名,a,b,c为所要查询的字段
ResultSet rs = stmt.executeQuery(sql);
(5)访问ResultSet中的记录集并从中取出记录
例如:
rs.next( );
rs.absolute(4);
String col1=rs.getString(1);
……..
(6)依次关闭ResultSet、Statement和Connection对象
例如:
rs.close();
stmt.close();
con.close(); 参考技术A 一般来说建立数据库表不是由应用程序建立的,而应该是手工通过DDL语句建立,或者通过Hibernate、JPA等框架建立的。 参考技术B String sql="create table XXX"
+"int item1 primary key not null,"
+"varchar(X) item2 "+...
+"";
connection.createStatement.execute(sql); 参考技术C 代码样例:
String sql = "create table tablename(id number, title varchar2(20), intro varchar2(200), time timestamp)";
PreparedStatement stmt = conn.prepareStatement(sql);
stmt.execute();
解析:
建表语句与oracle建表语句相同。主要的点是java程序与数据库连接及数据交互的过程代码。
PreparedStatement与Statement区别:
statement每次执行sql语句,相关数据库都要执行sql语句的编译,preparedstatement是预编译得,preparedstatement支持批处理。 参考技术D 步骤,,建表的语句还是跟你在Oracle里一样的。用它的相关方法来执行就ok了..
以上是关于Java中如何与数据库建立连接?的主要内容,如果未能解决你的问题,请参考以下文章