版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第10章网络与数据库编程本章重点支持JAVA程序访问网上资源的类及其方法网络编程应用支持Java程序与数据库连接的类及其方法支持Java程序的数据表查询、数据记录修改和插入的类及其方法数据库编程应用第10章网络与数据库编程本章重点Java网络程序设计支持机制利用URL访问网络资源利用Socket通信Java网络程序设计支持机制利用URL访问网络资源3Java网络程序设计支持机制支持网络通信的类在包中。发送和接收消息需要使用I/O流,因此程序中也需要使用java.io包的类InetAddress类:包装IP地址URL类,URLConnection类:访问网络资源Socket,ServerSocket:实现网络通信3Java网络程序设计支持机制支持网络通信的类在java.n第10章网络与数据库编程基础-java语言基础自考教学课件第10章网络与数据库编程基础-java语言基础自考教学课件6利用URL访问网络资源(1)创建一个URL对象
URLurlBase
=
newURL(“/”);(2)获得URLConnection对象,它表示和URL之间的通信链接URLConnectiontc=urlBase.openConnection();(3)打开到此URL引用的资源的通信链接(如果尚未建立这样的连接)。
tc.connect();
(4)获得此链接的输入/输出流InputStreamin=tc.getInputStream();OutputStreamout=tc.getOutputStream();(5)从输入流中读取数据6利用URL访问网络资源(1)创建一个URL对象a程序b程序主机A:00主机B:03如何通信?网络a程序b程序主机A:00主机B:172预备知识-IPIP地址主机在Internet上的标识例如:00QQHTTPMSNftp主机A:00a程序只靠IP地址,能跟QQ通信吗?预备知识-IPIP地址QQHTTPMSNftp主机A:22预备知识-端口一台机器只通过一条链路连接到网络上,但一台机器中往往有很多应用程序需要进行网络通信,如何区分呢?这就要靠网络端口号(port)了。端口号是一个标记机器的逻辑通信信道的正整数,端口号不是物理实体。httpftpQQ21telnet端口23804000客户程序00:4000主机A:00预备知识-端口一台机器只通过一条链路连接到网络上,但一台机器预备知识-端口端口号是用一个整数来表达的,其范围为0~65535,其中0~1023为系统所保留,专门给那些通用的服务,如http服务的端口号为80,telnet服务的端口号为23,ftp服务的端口为21.当我们编写通信程序时,应选择一个大于1023的数作为端口号,以免发生冲突。预备知识-端口端口号是用一个整数来表达的,其范围为0~655客户/服务器模式监听发送连接请求接受请求客户端(主叫)服务器端(被叫)连接建立开始通话结束通话客户/服务器模式监听发送连接请求接受请求客户端(主叫)服务器12Socket和ServerSocket类套接字类(Socket)服务器套接字类(ServerSocket)12Socket和ServerSocket类套接字类(Soc13服务器端的连接步骤(1)创建ServerSocket对象,为服务器对象绑定端口号,服务器端在这个端口待客户端的连接,如果企图使用一个已经使用的端口,会引起BindException
ServerSocketserver=
newServerSocket(5555);(2)使用accept()方法监听连接:Socketsocket=server.accept();//此语句会一直等待,直到一个客户
//与该服务器端建立连接。(3)InputStreamin=socket.getInputStream();//获得此端口的输入流
OutputStreamout=socket.getOutputStream();//获得此端口的输出流(4)利用输入输出流和客户端通信(5)socket.close();//关闭13服务器端的连接步骤(1)创建ServerSocket对象客户端的连接步骤(1)呼叫服务器端,创建一个Socket对象,构造函数的两个参数分别为服务器端的IP地址以及端口号。客户端程序将会连接指定IP地址主机上的指定端口,连接成功之后,便能产生客户端的Socket对象,用于和服务器端进行通信SocketclientSocket=newSocket(“26",5555);(2)InputStreamin=clientSocket.getInputStream();//获得此端口的输入流
OutputStreamout=clientSocket.getOutputStream();//获得此端口的输出流(4)利用输入输出流和服务器端通信(5)socket.close();//关闭客户端的连接步骤(1)呼叫服务器端,创建一个Socket对通信双方Socket的产生过程服务器端程序:ServerSocketserver=newServerSocket(5555);SocketserverSocket=server.accept();客户端程序:SocketclientSocket=newSocket(“服务器端IP",5555);呼叫clientSocketserverSocket接受clientSocket.getInputStream()clientSocket.getOutputStream()serverSocket.getInputStream()serverSocket.getOutputStream()通信双方Socket的产生过程服务器端程序:客户端程序:呼叫JDBCJDBC,全称为JavaDataBaseConnectivity,它是一个面向对象的应用程序接口(API),通过它可访问各类关系数据库。JDBC也是java核心类库的一部分。JDBC能做三件事:和数据库建立连接向数据库发送SQL语句处理数据库的返回结果importjava.sql.*;JDBCJDBC,全称为JavaDataBaseConJava数据库编程---Java程序与数据库连接JDBC-ODBC桥接DriverManagerJdbcOdbcDriverJava数据库编程---Java程序与数据库连接JDBC-Otry{ Class.forName(“sun.jdbc.odbc.JdbcOdbcDriver”);//加载驱动 System.out.println("JDBC-ODBC的驱动程序注册成功");}catch(ClassNotFoundExceptione){ System.out.println("找不到JDBC驱动程序");}try{
Stringurl=“jdbc:odbc:mydb”;//mydb为odbc数据源名称
//连接数据库,第二个参数为用户名,第三个参数为密码
Connectioncon=DriverManager.getConnection(url, “”,“”);
System.out.println("数据库连接成功");}catch(SQLExceptione){
System.out.println("数据库连接不成功");}
try{用纯Java的JDBC驱动程序实现数据库连接
Java程序JDBC驱动数据库SQL命令结果DriverManager不同的数据库(sqlserver2000Sqlserver2005,Oracle,mysqlSybase等)驱动不同,由数据库厂商提供,DriverManager加载驱动的代码也有区别用纯Java的JDBC驱动程序实现数据库连接try{ Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver"); System.out.println("SQLServer2000的驱动程序注册成功");}catch(ClassNotFoundExceptione){ System.out.println("找不到JDBC驱动程序");}try{
Stringurl="jdbc:microsoft:sqlserver://:1433;databaseName=tempdb";
Connectioncon=DriverManager.getConnection(url, "sa","123");
System.out.println("数据库连接成功");}catch(SQLExceptione){
System.out.println("数据库连接不成功");}
try{JDBC连接数据库的步骤如下加载驱动程序Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");创建指定数据库的URLStringurl=
"jdbc:microsoft:sqlserver://localhost:1433;databaseName=tempdb";建立连接
Connectioncon=DriverManager.getConnection(url, "sa",
"123");JDBC连接数据库的步骤如下java.sql包中几个重要的类和接口DriverManager类处理驱动程序加载和建立新数据库连接Connectioncon=DriverManager.getConnection(url,"sa","123");Connection类表示数据库连接的对象Statementstmt=con.createStatement();Statement类在指定连接中处理SQL语句的类ResultSetrs=stmt.executeQuery(“select*fromstudent”);ResultSet类由查询结果构成的表java.sql包中几个重要的类和接口DriverManagResultSet Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); Stringurl="jdbc:odbc:mydb";//mydb为数据源名称Connectioncon=DriverManager.getConnection(url,"","");
Statementstmt=con.createStatement(); Stringsql="selectbook_id,book_name,pricefrombookwhereprice>20";
ResultSetrs=stmt.executeQuery(sql); System.out.println("书号"+"书名"+"价格"); while(rs.next()){//next()游标下移一行,最后一行再next一次,即返回false System.out.print(rs.getString(1)+“”);//第1列 System.out.print(rs.getString(2)+“”);//第2列 System.out.println(rs.getInt(“price”));//price列 } rs.close(); con.close();游标初始位置(第一行数据之前)用默认的Statement执行Select语句得到的ResultSet只能使用next()向下遍历ResultSet Class.forName("sun.j可滚动结果集 Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); Stringurl="jdbc:odbc:mydb";//mydb为数据源名称Connectioncon=DriverManager.getConnection(url,"","");
Statementstmt=con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,
ResultSet.CONCUR_READ_ONLY); Stringsql="selectbook_id,book_name,pricefrombookwhereprice>20"; ResultSetrs=stmt.executeQuery(sql); rs.first();//游标移到第一条记录
System.out.println(rs.getString(2)); rs.next();//游标向下移一行 System.out.print(rs.getString(2)+""); rs.previous();//游标上移一行 System.out.print(rs.getString(2)+"");
rs.last();
System.out.print(rs.getString(2)+"");游标可自由移动可滚动结果集 Class.forName("sun.jdbc数据库更新数据库更新包括数据表创建、删除、数据表记录的增加、删除、修改等操作。使用Statement对象使用ResultSet对象使用prepareStatement对象数据库更新数据库更新包括数据表创建、删除、数据表记录的增加、插入记录—使用Statement对象 Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); Stringurl="jdbc:odbc:mydb";//mydb为数据源名Connectioncon=DriverManager.getConnection(url,"","");
Statementstmt=con.createStatement();
Stringsql=“insertintobook(book_id,book_name)values(‘001’,‘计算机应用基础’)”;
inti=stmt.executeUpdate(sql);
con.close();插入记录—使用Statement对象 Class.forNa插入记录—使用ResultSet对象 Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); Stringurl="jdbc:odbc:mydb";//mydb为数据源名
con=DriverManager.getConnection(url,"","");Statementstmt=con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);Stringsql="select*frombook"; ResultSetrs=stmt.executeQuery(sql); rs.moveToInsertRow();//游标移到插入行 rs.updateString(1,“002”);//新行第一列的值设置为“002” rs.updateString(2,“XML教程”);//新行第二列的值设置为“XML” rs.updateInt(“price”,35);//将price字段的值设置为35 rs.insertRow();//插入新行
con.close();可更新结果集插入记录—使用ResultSet对象 Class.forNa插入记录--使用prepareStatement对象 Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); Stringurl="jdbc:odbc:mydb";//mydb为数据源名Connectioncon=DriverManager.getConnection(url,"","");Stringsql="insertintobook(book_id,book_name)values(?,?)";PreparedStatementpStmt=con.prepareStatement(sql);pStmt.setString(1,“003”);//第一个问号pStmt.setString(2,“数据库技术基础”);//第二个问号pStmt.executeUpdate();
con.close();插入记录--使用prepareStatement对象 Cla修改记录—使用Statement对象 Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); Stringurl="jdbc:odbc:mydb";//mydb为数据源名
con=DriverManager.getConnection(url,"","");
Statementstmt=con.createStatement();
Stringsql=
"updatebooksetbook_name='c语言程序设计'wherebook_id='dep04_b001_01'";
inti=stmt.executeUpdate(sql);
con.close();修改记录—使用Statement对象 Class.forNa修改记录—使用ResultSet对象 Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); Stringurl="jdbc:odbc:mydb";//mydb为数据源名
con=DriverManager.getConnection(url,"","");Statementstmt=con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
Stringsql="select*frombookwherebook_id='dep04_b002_01'"; ResultSetrs=stmt.executeQuery(sql); rs.next();//游标移到第一行 rs.updateString(2,“Java”);//第二列更新为Java rs.updateRow();//更新
con.close();修改记录—使用ResultSet对象 Class.forNa修改记录--使用prepareStatement对象 Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); Stringurl="jdbc:odbc:mydb";//mydb为数据源名
con=DriverManager.getConnection(url,"","");
Stringsql="updatebooksetbook_name=?wherebook_id=?"; PreparedStatementpStmt=con.prepareStatement(sql); pStmt.setString(1,"网络基础"); pStmt.setString(2,"dep04_b001_02"); pStmt.executeUpdate();
con.close();修改记录--使用prepareStatement对象 Cla删除记录—使用Statement对象 Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); Stringurl="jdbc:odbc:mydb";//mydb为数据源名
con=DriverManager.getConnection(url,"","");Statementstmt=con.createStatement(); Stringsql="deletefrombookwherebook_id='dep04_b004_01'";inti=stmt.executeUpdate(sql);System.out.println(i);
con.close();删除记录—使用Statement对象 Class.forNa删除记录—使用ResultSet对象 Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); Stringurl="jdbc:odbc:mydb";//mydb为数据源名
con=DriverManager.getConnection(url,"","");Statementstmt=con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);Stringsql="select*frombookwherebook_id='dep04_b004_01'";ResultSetrs=stmt.executeQuery(sql);rs.next();rs.deleteRow();rs.updateRow();
con.close();删除记录—使用ResultSet对象 Class.forNa删除记录--使用prepareStatement对象 Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); Stringurl="jdbc:odbc:mydb";//mydb为数据源名
con=DriverManager.getConnection(url,"","");
Stringsql="deletefrombookwherebook_id=?";PreparedStatementpStmt=con.prepareStatement(sql);pStmt.setString(1,"001"); pStmt.executeUpdate();
con.close();删除记录--使用prepareStatement对象 Cla第10章网络与数据库编程本章重点支持JAVA程序访问网上资源的类及其方法网络编程应用支持Java程序与数据库连接的类及其方法支持Java程序的数据表查询、数据记录修改和插入的类及其方法数据库编程应用第10章网络与数据库编程本章重点Java网络程序设计支持机制利用URL访问网络资源利用Socket通信Java网络程序设计支持机制利用URL访问网络资源37Java网络程序设计支持机制支持网络通信的类在包中。发送和接收消息需要使用I/O流,因此程序中也需要使用java.io包的类InetAddress类:包装IP地址URL类,URLConnection类:访问网络资源Socket,ServerSocket:实现网络通信3Java网络程序设计支持机制支持网络通信的类在java.n第10章网络与数据库编程基础-java语言基础自考教学课件第10章网络与数据库编程基础-java语言基础自考教学课件40利用URL访问网络资源(1)创建一个URL对象
URLurlBase
=
newURL(“/”);(2)获得URLConnection对象,它表示和URL之间的通信链接URLConnectiontc=urlBase.openConnection();(3)打开到此URL引用的资源的通信链接(如果尚未建立这样的连接)。
tc.connect();
(4)获得此链接的输入/输出流InputStreamin=tc.getInputStream();OutputStreamout=tc.getOutputStream();(5)从输入流中读取数据6利用URL访问网络资源(1)创建一个URL对象a程序b程序主机A:00主机B:03如何通信?网络a程序b程序主机A:00主机B:172预备知识-IPIP地址主机在Internet上的标识例如:00QQHTTPMSNftp主机A:00a程序只靠IP地址,能跟QQ通信吗?预备知识-IPIP地址QQHTTPMSNftp主机A:22预备知识-端口一台机器只通过一条链路连接到网络上,但一台机器中往往有很多应用程序需要进行网络通信,如何区分呢?这就要靠网络端口号(port)了。端口号是一个标记机器的逻辑通信信道的正整数,端口号不是物理实体。httpftpQQ21telnet端口23804000客户程序00:4000主机A:00预备知识-端口一台机器只通过一条链路连接到网络上,但一台机器预备知识-端口端口号是用一个整数来表达的,其范围为0~65535,其中0~1023为系统所保留,专门给那些通用的服务,如http服务的端口号为80,telnet服务的端口号为23,ftp服务的端口为21.当我们编写通信程序时,应选择一个大于1023的数作为端口号,以免发生冲突。预备知识-端口端口号是用一个整数来表达的,其范围为0~655客户/服务器模式监听发送连接请求接受请求客户端(主叫)服务器端(被叫)连接建立开始通话结束通话客户/服务器模式监听发送连接请求接受请求客户端(主叫)服务器46Socket和ServerSocket类套接字类(Socket)服务器套接字类(ServerSocket)12Socket和ServerSocket类套接字类(Soc47服务器端的连接步骤(1)创建ServerSocket对象,为服务器对象绑定端口号,服务器端在这个端口待客户端的连接,如果企图使用一个已经使用的端口,会引起BindException
ServerSocketserver=
newServerSocket(5555);(2)使用accept()方法监听连接:Socketsocket=server.accept();//此语句会一直等待,直到一个客户
//与该服务器端建立连接。(3)InputStreamin=socket.getInputStream();//获得此端口的输入流
OutputStreamout=socket.getOutputStream();//获得此端口的输出流(4)利用输入输出流和客户端通信(5)socket.close();//关闭13服务器端的连接步骤(1)创建ServerSocket对象客户端的连接步骤(1)呼叫服务器端,创建一个Socket对象,构造函数的两个参数分别为服务器端的IP地址以及端口号。客户端程序将会连接指定IP地址主机上的指定端口,连接成功之后,便能产生客户端的Socket对象,用于和服务器端进行通信SocketclientSocket=newSocket(“26",5555);(2)InputStreamin=clientSocket.getInputStream();//获得此端口的输入流
OutputStreamout=clientSocket.getOutputStream();//获得此端口的输出流(4)利用输入输出流和服务器端通信(5)socket.close();//关闭客户端的连接步骤(1)呼叫服务器端,创建一个Socket对通信双方Socket的产生过程服务器端程序:ServerSocketserver=newServerSocket(5555);SocketserverSocket=server.accept();客户端程序:SocketclientSocket=newSocket(“服务器端IP",5555);呼叫clientSocketserverSocket接受clientSocket.getInputStream()clientSocket.getOutputStream()serverSocket.getInputStream()serverSocket.getOutputStream()通信双方Socket的产生过程服务器端程序:客户端程序:呼叫JDBCJDBC,全称为JavaDataBaseConnectivity,它是一个面向对象的应用程序接口(API),通过它可访问各类关系数据库。JDBC也是java核心类库的一部分。JDBC能做三件事:和数据库建立连接向数据库发送SQL语句处理数据库的返回结果importjava.sql.*;JDBCJDBC,全称为JavaDataBaseConJava数据库编程---Java程序与数据库连接JDBC-ODBC桥接DriverManagerJdbcOdbcDriverJava数据库编程---Java程序与数据库连接JDBC-Otry{ Class.forName(“sun.jdbc.odbc.JdbcOdbcDriver”);//加载驱动 System.out.println("JDBC-ODBC的驱动程序注册成功");}catch(ClassNotFoundExceptione){ System.out.println("找不到JDBC驱动程序");}try{
Stringurl=“jdbc:odbc:mydb”;//mydb为odbc数据源名称
//连接数据库,第二个参数为用户名,第三个参数为密码
Connectioncon=DriverManager.getConnection(url, “”,“”);
System.out.println("数据库连接成功");}catch(SQLExceptione){
System.out.println("数据库连接不成功");}
try{用纯Java的JDBC驱动程序实现数据库连接
Java程序JDBC驱动数据库SQL命令结果DriverManager不同的数据库(sqlserver2000Sqlserver2005,Oracle,mysqlSybase等)驱动不同,由数据库厂商提供,DriverManager加载驱动的代码也有区别用纯Java的JDBC驱动程序实现数据库连接try{ Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver"); System.out.println("SQLServer2000的驱动程序注册成功");}catch(ClassNotFoundExceptione){ System.out.println("找不到JDBC驱动程序");}try{
Stringurl="jdbc:microsoft:sqlserver://:1433;databaseName=tempdb";
Connectioncon=DriverManager.getConnection(url, "sa","123");
System.out.println("数据库连接成功");}catch(SQLExceptione){
System.out.println("数据库连接不成功");}
try{JDBC连接数据库的步骤如下加载驱动程序Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");创建指定数据库的URLStringurl=
"jdbc:microsoft:sqlserver://localhost:1433;databaseName=tempdb";建立连接
Connectioncon=DriverManager.getConnection(url, "sa",
"123");JDBC连接数据库的步骤如下java.sql包中几个重要的类和接口DriverManager类处理驱动程序加载和建立新数据库连接Connectioncon=DriverManager.getConnection(url,"sa","123");Connection类表示数据库连接的对象Statementstmt=con.createStatement();Statement类在指定连接中处理SQL语句的类ResultSetrs=stmt.executeQuery(“select*fromstudent”);ResultSet类由查询结果构成的表java.sql包中几个重要的类和接口DriverManagResultSet Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); Stringurl="jdbc:odbc:mydb";//mydb为数据源名称Connectioncon=DriverManager.getConnection(url,"","");
Statementstmt=con.createStatement(); Stringsql="selectbook_id,book_name,pricefrombookwhereprice>20";
ResultSetrs=stmt.executeQuery(sql); System.out.println("书号"+"书名"+"价格"); while(rs.next()){//next()游标下移一行,最后一行再next一次,即返回false System.out.print(rs.getString(1)+“”);//第1列 System.out.print(rs.getString(2)+“”);//第2列 System.out.println(rs.getInt(“price”));//price列 } rs.close(); con.close();游标初始位置(第一行数据之前)用默认的Statement执行Select语句得到的ResultSet只能使用next()向下遍历ResultSet Class.forName("sun.j可滚动结果集 Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); Stringurl="jdbc:odbc:mydb";//mydb为数据源名称Connectioncon=DriverManager.getConnection(url,"","");
Statementstmt=con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,
ResultSet.CONCUR_READ_ONLY); Stringsql="selectbook_id,book_name,pricefrombookwhereprice>20"; ResultSetrs=stmt.executeQuery(sql); rs.first();//游标移到第一条记录
System.out.println(rs.getString(2)); rs.next();//游标向下移一行 System.out.print(rs.getString(2)+""); rs.previous();//游标上移一行 System.out.print(rs.getString(2)+"");
rs.last();
System.out.print(rs.getString(2)+"");游标可自由移动可滚动结果集 Class.forName("sun.jdbc数据库更新数据库更新包括数据表创建、删除、数据表记录的增加、删除、修改等操作。使用Statement对象使用ResultSet对象使用prepareStatement对象数据库更新数据库更新包括数据表创建、删除、数据表记录的增加、插入记录—使用Statement对象 Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); Stringurl="jdbc:odbc:mydb";//mydb为数据源名Connectioncon=DriverManager.getConnection(url,"","");
Statementstmt=con.createStatement();
Stringsql=“insertintobook(book_id,book_name)values(‘001’,‘计算机应用基础’)”;
inti=stmt.executeUpdate(sql);
con.close();插入记录—使用Statement对象 Class.forNa插入记录—使用ResultSet对象 Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); Stringurl="jdbc:odbc:mydb";//mydb为数据源名
con=DriverManager.getConnection(url,"","");Statementstmt=con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);Stringsql="select*frombook"; ResultSetrs=stmt.executeQuery(sql); rs.moveToInsertRow();//游标移到插入行 rs.updateString(1,“002”);//新行第一列的值设置为“002” rs.updateString(2,“XML教程”);//新行第二列的值设置为“XML” rs.updateInt(“price”,35);//将price字段的值设置为35 rs.insertRow();//插入新行
con.close();可更新结果集插入记录—使用ResultSet对象 Class.forNa插入记录--使用prepareStatement对象 Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); Stringurl="jdbc:odbc:mydb";//mydb为数据源名Connectioncon=DriverManager.getConnection(url,"","");Stringsql="insertintobook(book_id,book_name)values(?,?)";PreparedStatementpStmt=con.prepareStatement(sql);pStmt.setString(1,“003”);//第一个问号pStmt.setString(2,“数据库技术基础”);//第二个问号pStmt.executeUpdate();
con.close();插入记录--使用prepareStatement对象 Cla修改记录—使用Statement对象 Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); Stringurl="jdbc:odbc:mydb";//mydb为数据源名
con=DriverManager.getConnection(url,"","");
Statementstmt=con.createStatement();
Stringsql=
"updatebooksetbook_name='c语言程序设计'wherebook_id='dep04_b001_01'";
inti=stmt.executeUpdate(sql);
con.close();修改记录—使用Statement对象 Class.forNa修改记录—使用ResultSet对象 Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); Stringurl="jdbc:odbc:mydb";//mydb
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 承建猪舍大棚合同范例
- 增量采购合同范例
- 沙石购置股合同范例
- 拍摄基地租赁合同范例
- 网店工厂合作合同范例
- 供车货款合同范例
- 个人授权合同范例
- 代建融资服务合同范例
- 2025服装加盟销售合同范本
- 置换房子合同范例
- 机械基础考试题库及参考答案
- 高中词汇3500乱序版
- NY 5051-2001无公害食品淡水养殖用水水质
- GB/T 24176-2009金属材料疲劳试验数据统计方案与分析方法
- GB/T 13611-2018城镇燃气分类和基本特性
- 2023年初一学生综合素质自我陈述报告3篇(范文)
- 四年级数学期末考试质量分析
- 多发性骨髓瘤的疗效评估
- 题型二次函数压轴题课件
- 中建二局“大商务”管理实施方案20200713(终稿)
- 燃气安全继续教育考试题及答案
评论
0/150
提交评论