怎么连接数据库,用JAVA麻烦大哥们写一下代码吧,拜托了。。。

怎么连接数据库,用JAVA麻烦大哥们写一下代码吧,拜托了。。。,第1张

//JDBC与ODBC方法均有

package org;

import javasqlConnection;

import javasqlDriverManager;

import javasqlResultSet;

import javasqlStatement;

public class Conn{

//private String DBDriver="sunjdbcodbcJdbcOdbcDriver";

//private String DBurl="jdbc:odbc:SIMS";

private String DBDriver="commicrosoftjdbcsqlserverSQLServerDriver";

private String DBurl="jdbc:microsoft:sqlserver://localhost:1433;databaseName=first";

Connection con=null;

Statement stmt=null;

ResultSet rs=null;

private String DBuser="sa";

private String DBpwd="sa";

public Conn()

{

try

{

ClassforName(DBDriver);

Systemoutprintln("驱动加载成功");

}

catch(Exception e)

{

Systemoutprintln("数据库加载失败!!!");

eprintStackTrace();

}

try

{

con=DriverManagergetConnection(DBurl,DBuser,DBpwd);

Systemoutprintln("数据库连接成功!!!");

}

catch(Exception e)

{

Systemoutprintln("数据库连接失败!!!!!");

eprintStackTrace();

}

try

{

stmt=concreateStatement();

Systemoutprintln("数据库声明成功!!!!");

}

catch(Exception e)

{

Systemoutprintln("数据库创建声明失败!!!!");

eprintStackTrace();

}

}

/

执行查询功能

/

public ResultSet Query(String sql)

{

try

{

rs=stmtexecuteQuery(sql);

Systemoutprintln("执行查询成功!!!");

}

catch(Exception e)

{

Systemoutprintln("执行查询出现异常!!!!");

eprintStackTrace();

}

return rs;

}

/

执行更新 *** 作

/

public int Update(String sql)

{

int i=0;

try

{

i=stmtexecuteUpdate(sql);

Systemoutprintln("执行更新成功!!!!");

}

catch(Exception e)

{

Systemoutprintln("执行更新失败!!!!");

eprintStackTrace();

}

return i;

}

/

关闭数据库(ResultSet)的连接

/

public void rsClose()

{

try

{

rsclose();

Systemoutprintln("数据库结果集成功关闭!!!");

}

catch(Exception e)

{

eprintStackTrace();

Systemoutprint("数据库结果集关闭失败");

}

}

public void close()

{

try

{

conclose();

Systemoutprintln("数据库成功关闭!!!!");

}

catch(Exception e)

{

Systemoutprintln("关闭数据库时出现异常!!!!");

eprintStackTrace();

}

}

}

导入javasql包 \x0d\一、加载要连接数据库的驱动程序 \x0d\//Jdbc-Odbc桥 和 Microsoft Access 数据库 \x0d\ClassforName("sunjdbcodbcJdbcOdbcDriver"); \x0d\// SQL Server 驱动程序: \x0d\ClassforName("commicrosoftjdbcsqlserverSQLServerDriver"); \x0d\注:ClassforName()方法将给定的类加载到JVM,如果系统中不存在给定的类,则会引发异常 \x0d\二、通过驱动程序管理器得到连接实例 \x0d\Connection conn=null; \x0d\//1 \x0d\//11建立数据源 \x0d\conn=DriverManagergetConnection("jdbc:odbc:MyDataSource"); //MyDataSource是数据源名称 \x0d\//1-2、不建立数据源 \x0d\conn=DriverManagergetConnection("jdbc:odbc:;Driver=Microsoft Access Driver (mdb);DBQ=C:\\VBTestmdb"); \x0d\//2SQL Server \x0d\conn=DriverManagergetConnection("jdbc:microsoft:sqlserver://127001:1433;databasename=mydb","sa",""); \x0d\\x0d\注:DriverManager类跟踪已注册的驱动程序,通过getConnection(URL)方法, 找到一个能够连接至URL中指定的数据库驱动程序 \x0d\它接收三个参数, 分别表示1 数据源的名称、类型 2 用户名(可选) 3 密码(可选) \x0d\三、基于连接对象建立处理器对象 \x0d\Statement stmt=conncreateStatement(); \x0d\四、准备sql命令 \x0d\String sql="select from Student"; \x0d\五、执行命令返回结果集 \x0d\ResultSet rs=stmtexecuteQuery(sql); \x0d\六、显示结果集 \x0d\while(rsnext())//只要后面有记录 \x0d\{ \x0d\//对当前行的所有字段遍历 \x0d\for(int i=1;i回答于 2022-12-11

首先你要导包

JDBC连接数据库  

•创建一个以JDBC连接数据库的程序,包含7个步骤:

1、加载JDBC驱动程序:

在连接数据库之前,首先要加载想要连接的数据库的驱动到JVM(Java虚拟机),

这通过javalangClass类的静态方法forName(String  className)实现。

例如:

try{

//加载MySql的驱动类

ClassforName("commysqljdbcDriver") ;

}catch(ClassNotFoundException e){

Systemoutprintln("找不到驱动程序类 ,加载驱动失败!");

eprintStackTrace() ;

}

成功加载后,会将Driver类的实例注册到DriverManager类中。

2、提供JDBC连接的URL

•连接URL定义了连接数据库时的协议、子协议、数据源标识。      

•书写形式:协议:子协议:数据源标识

协议:在JDBC中总是以jdbc开始       子协议:是桥连接的驱动程序或是数据库管理系统名称。

数据源标识:标记找到数据库来源的地址与连接端口。

例如:

(MySql的连接URL)

jdbc:mysql:           //localhost:3306/testuseUnicode=true&characterEncoding=gbk ;

useUnicode=true:

表示使用Unicode字符集。如果characterEncoding设置为      gb2312或GBK,本参数必须设置为true 。characterEncoding=gbk:字符编码方式。

3、创建数据库的连接

•要连接数据库,需要向javasqlDriverManager请求并获得Connection对象,        该对象就代表一个数据库的连接。

•使用DriverManager的getConnectin(String url , String username ,        String password )方法传入指定的欲连接的数据库的路径、数据库的用户名和        密码来获得。

例如:        //连接MySql数据库,用户名和密码都是root

String url = "jdbc:mysql://localhost:3306/test" ;

String username = "root" ;

String password = "root" ;

try{      

Connection con =                 DriverManagergetConnection(url , username , password ) ;

}catch(SQLException se){

Systemoutprintln("数据库连接失败!");

seprintStackTrace() ;

}

4、创建一个Statement

•要执行SQL语句,必须获得javasqlStatement实例,Statement实例分为以下3       种类型:

1、执行静态SQL语句。通常通过Statement实例实现。

2、执行动态SQL语句。通常通过PreparedStatement实例实现。        

3、执行数据库存储过程。通常通过CallableStatement实例实现。

具体的实现方式:

Statement stmt = concreateStatement() ;          PreparedStatement pstmt = conprepareStatement(sql) ;          CallableStatement cstmt =                                conprepareCall("{CALL demoSp( , )}") ;    

5、执行SQL语句

Statement接口提供了三种执行SQL语句的方法:executeQuery 、executeUpdate      和execute

1、ResultSet executeQuery(String sqlString):执行查询数据库的SQL语句           ,返回一个结果集(ResultSet)对象。

2、int executeUpdate(String sqlString):用于执行INSERT、UPDATE或           DELETE语句以及SQL DDL语句,如:CREATE TABLE和DROP TABLE等        

3、execute(sqlString):用于执行返回多个结果集、多个更新计数或二者组合的           语句。      具体实现的代码:

ResultSet rs = stmtexecuteQuery("SELECT FROM ") ;       int rows = stmtexecuteUpdate("INSERT INTO ") ;       boolean flag = stmtexecute(String sql) ;    

6、处理结果       两种情况:

1、执行更新返回的是本次 *** 作影响到的记录数。

2、执行查询返回的结果是一个ResultSet对象。

• ResultSet包含符合SQL语句中条件的所有行,并且它通过一套get方法提供了对这些         行中数据的访问。

• 使用结果集(ResultSet)对象的访问方法获取数据:

while(rsnext()){

String name = rsgetString("name") ;

String pass = rsgetString(1) ; // 此方法比较高效

}      

(列是从左到右编号的,并且从列1开始)

7、关闭JDBC对象

*** 作完成以后要把所有使用的JDBC对象全都关闭,以释放JDBC资源,关闭顺序和声        明顺序相反:

1、关闭记录集

2、关闭声明

3、关闭连接对象

if(rs != null){   // 关闭记录集

try{

rsclose() ;

}catch(SQLException e){

eprintStackTrace() ;

}

}

if(stmt != null){   // 关闭声明

try{

stmtclose() ;

}catch(SQLException e){

eprintStackTrace() ;

}

}

if(conn != null){  // 关闭连接对象

try{

connclose() ;

}catch(SQLException e){

eprintStackTrace() ;

}

}

步骤如下,

1 在开发环境中加载指定数据库的驱动程序。

接下来的实验中,使用数据库MySQL,所以需要下载MySQL支持JDBC的驱动程序(mysql-connector-java-5118-binjar)。

2 开发环境是MyEclipse,将下载得到的驱动程序加载进开发环境中。

3 在Java程序中加载驱动程序。

在Java程序中,通过 “ClassforName(“指定数据库的驱动程序”)”

方式来加载添加到开发环境中的驱动程序,例如ClassforName(“commysqljdbcDriver”)。

4 创建数据连接对象:通过DriverManager类创建数据库连接对象Connection。

DriverManager类作用于Java程序和JDBC驱动程序之间,用于检查所加载的驱动程序是否可以建立连接,然后通过它的getConnection方法,根据数据库的URL、用户名和密码,创建一个JDBC

Connection 对象。代码如:Connection connection = DriverManagergetConnection(“连接数据库的URL", "用户名",

"密码”)。

其中,URL=协议名+IP地址(域名)+端口+数据库名称;用户名和密码是指登录数据库时所使用的用户名和密码。具体示例创建MySQL的数据库连接代码如下:

Connection connectMySQL =

DriverManagergeiConnection(“jdbc:mysql://localhost:3306/myuser","root"

,"root" );

5 创建Statement对象:Statement 类的主要是用于执行静态 SQL

语句并返回它所生成结果的对象。

通过Connection 对象的 createStatement()方法可以创建一个Statement对象。例如:Statement statament =

connectioncreateStatement(); 具体示例创建Statement对象代码如下:Statement statamentMySQL =connectMySQLcreateStatement();

6 调用Statement对象的相关方法执行相对应的 SQL

语句:通过execuUpdate()方法用来数据的更新,包括插入和删除等 *** 作,例如向staff表中插入一条数据的代码:

statementexcuteUpdate( "INSERT INTO

staff(name, age, sex,address, depart, worklen,wage)" + " VALUES ('Tom1', 321,

'M', 'china','Personnel','3','3000' ) ") ;

7 通过调用Statement对象的executeQuery()方法进行数据的查询,而查询结果会得到

ResulSet对象,ResulSet表示执行查询数据库后返回的数据的集合,ResulSet对象具有可以指向当前数据行的指针。通过该对象的next()方法,使得指针指向下一行,然后将数据以列号或者字段名取出。如果当next()方法返回null,则表示下一行中没有数据存在。使用示例代码如下:

ResultSet resultSel =

statementexecuteQuery( "select from staff" );

8 关闭数据库连接:使用完数据库或者不需要访问数据库时,通过Connection的close() 方法及时关闭数据连接。

使用java连接MySQL数据库与其他的数据库连接核心是一样的,如果说区别,那就是所需的驱动不一样。

工具/原料

MySQL、JDK

方法/步骤

1、首先需要安装好JDK(配置环境变量),如图所示:

2、其次要安装好MySQL数据库,可以使用可视化Navicar For MySQL,如图所示:

3、最后通过代码进行连接。

(1)确定连接路径URL:

String url="jdbc:mysql://localhost(可以是本机IP地址):3306(端口号)/mysqltest(数据库名称)?"+"user=用户账号&password=用户密码&useUnicode=字符编码";

(2)加载驱动:

ClassforName("commysqljdbcDriver");

(3)连接,获取Connection对象

Connection conn=DriverManagergetConnection(url)

(4)可以通过conn对象检验连接与否。

以上就是关于怎么连接数据库,用JAVA麻烦大哥们写一下代码吧,拜托了。。。全部的内容,包括:怎么连接数据库,用JAVA麻烦大哥们写一下代码吧,拜托了。。。、Java中如何与数据库建立连接、怎样连接mysql数据库java代码等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9341421.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-27
下一篇 2023-04-27

发表评论

登录后才能评论

评论列表(0条)

保存