如何用JAVA录入数据到SQL数据库

如何用JAVA录入数据到SQL数据库,第1张

Java可以使用JDBC对数据库进行读写。JDBC访问一般分为如下流程:

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() ;  

   }  

 }

Java可以使用JDBC访问数据库,也可以使用各类ORM框架访问数据库,但这些框架最终还是通过JDBC访问数据库,它们只是封装了数据库 *** 作,而使得开发者可以减少这部分消耗。因此,本文只讲解JDBC访问方式。

JDBC访问一般分为如下流程:

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() ;

}

}

建立数据库??

是数据库连接吧?

public static Connection getConnection()

{

try

{

ClassforName("oraclejdbcdriverOracleDriver");

return DriverManagergetConnection("jdbc:oracle:thin:@192168110:1521:数据库实例名", "数据库登录名","数据库登陆密码");

catch (Exception e)

{

eprintStackTrace();

}

return null;

}

java中怎样创建MySQL数据库列表

需要使用jdbc访问数据库。

具体步骤如下:

1:加载驱动

,返回连接

private

static

final

String

DRIVER_CLASS

=

"commysqljdbcDriver";

private

static

final

String

DATABASE_URL

=

"jdbc:mysql://localhost:3306/student";

private

static

final

String

DATABASE_USRE

=

"root";

private

static

final

String

DATABASE_PASSWORD

=

"cs";

/

返回连接

@return

Connection

/

public

static

Connection

getConnection()

{

Connection

dbConnection

=

null;

try

{

ClassforName(DRIVER_CLASS);

dbConnection

=

DriverManagergetConnection(DATABASE_URL,

DATABASE_USRE,

DATABASE_PASSWORD);

}

catch

(Exception

e)

{

eprintStackTrace();

}

return

dbConnection;

}

2:获取连接,执行sql语句

public

static

List

selectAllStudent()

{

Connection

con

=

null;

PreparedStatement

pstm

=

null;

ResultSet

rs

=

null;

List

list

=

new

ArrayList();

String

sql

=

"select

from

Student

";

try

{

con

=

ConnectionManagergetConnection();

pstm

=

conprepareStatement(sql);

//

pstmsetString(1,

uname);

rs

=

pstmexecuteQuery();

while

(rsnext())

{

Student

model

=

new

Student();

modelsetStuId(rsgetInt("stuId"));

listadd(model);

}

}

catch

(SQLException

e)

{

eprintStackTrace();

}

finally

{

ConnectionManagercloseResultSet(rs);

ConnectionManagercloseStatement(pstm);

ConnectionManagercloseConnection(con);

}

return

list;

}

3:调用获取列表方法。

导入javasql包

一、加载要连接数据库的驱动程序

//Jdbc-Odbc桥 和 Microsoft Access 数据库

ClassforName("sunjdbcodbcJdbcOdbcDriver");

// SQL Server 驱动程序:

ClassforName("commicrosoftjdbcsqlserverSQLServerDriver");

注:ClassforName()方法将给定的类加载到JVM,如果系统中不存在给定的类,则会引发异常

二、通过驱动程序管理器得到连接实例

Connection conn=null;

//1

//11建立数据源

conn=DriverManagergetConnection("jdbc:odbc:MyDataSource"); //MyDataSource是数据源名称

//1-2、不建立数据源

conn=DriverManagergetConnection("jdbc:odbc:;Driver=Microsoft Access Driver (mdb);DBQ=C:\\VBTestmdb");

//2SQL Server

conn=DriverManagergetConnection("jdbc:microsoft:sqlserver://127001:1433;databasename=mydb","sa","");

注:DriverManager类跟踪已注册的驱动程序,通过getConnection(URL)方法, 找到一个能够连接至URL中指定的数据库驱动程序

它接收三个参数, 分别表示1 数据源的名称、类型 2 用户名(可选) 3 密码(可选)

三、基于连接对象建立处理器对象

Statement stmt=conncreateStatement();

四、准备sql命令

String sql="select from Student";

五、执行命令返回结果集

ResultSet rs=stmtexecuteQuery(sql);

六、显示结果集

while(rsnext())//只要后面有记录

{

//对当前行的所有字段遍历

for(int i=1;i<=rsgetMetaData()getColumnCount();i++)

{

Systemoutprint(rsgetMetaData()getColumnName(i)+": ");//显示字段名

Systemoutprintln(rsgetString(i));//显示字段当前值

}

Systemoutprintln();

}

七、关闭资源

rsclose(); //关闭记录集

stmtclose(); //关闭处理器对象

connclose(); //关闭连接对象

预处理器的应用:

//3基于连接对象建立预处理器对象

PreparedStatement pstmt=connprepareStatement("insert into student values(,,,)");

//4给预处理对象的参数赋值

pstmtsetString(1,"8888");

pstmtsetString(2,"nemo");

pstmtsetString(3,"accp");

pstmtsetString(4,"sanxianglu");

//5执行预处理命令

int i=pstmtexecuteUpdate();

Systemoutprintln(i+"条记录已成功插入!");

需要oralce数据库

1,以oralce数据库为例

2,下载驱动

3,加载驱动

4,建立数据库连接

注意:数据库的驱动需要自行下载

代码解释:

①,驱动程序类的名称

②,使用thin模式登陆数据库

③,内置的一个库

④,默认的登陆密码

⑤,返回我们的连接

以上就是关于如何用JAVA录入数据到SQL数据库全部的内容,包括:如何用JAVA录入数据到SQL数据库、java如何访问数据库、用Java怎么建立数据库等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存