import java.io.*;
import java.sql.*;
import java.net.URL;
public class java2oracle{
public static boolean checkForWarning(SQLWarning warn) throws SQLException{
boolean rc=false;
if(warn!=null){
System.out.println("\n***Warning***\n");
rc=true;
while(warn!=null){
System.out.println("SQLState:"+warn.getSQLState());
System.out.println("Message:"+warn.getMessage());
System.out.println("Vendor:"+warn.getErrorCode());
warn=warn.getNextWarning();
}
}
return rc;
}
public static void dispResultSet(ResultSet rs) throws SQLException{
int i;
ResultSetMetaData rsmd=rs.getMetaData();
int numCols=rsmd.getColumnCount();
for(i=1;i<=numCols;i++){
if(i>1) System.out.print(", ");
System.out.print(rsmd.getColumnLabel(i));
}
System.out.println("");
boolean more=rs.next();
while(more){
for(i=1;i<=numCols;i++ ){
if(i>1) System.out.print(", ");
System.out.print(rs.getString(i));
}
System.out.println("");
more=rs.next();
}
}
/**
* @param args
*/
public static void main(String args[]) throws IOException{
// TODO 自动生成方法存根
String sUsr="system";
String sPwd="asdfgh";
while(true){
try{
System.out.print("SQL > ");
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
String str=br.readLine();
if(str.equalsIgnoreCase("end")) break;
if(str.equalsIgnoreCase("exit")) break;
if(str.equalsIgnoreCase("quit")) break;
if(str.endsWith(";")) str=str.substring(0,str.length()-1);
Class.forName("oracle.jdbc.driver.OracleDriver");
Connection con=DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:orcl","system","asdfgh");
checkForWarning(con.getWarnings());
Statement stmt=con.createStatement();
if(str.toLowerCase().startsWith("select")){
ResultSet rs=stmt.executeQuery(str);
dispResultSet(rs);
rs.close();
}
else stmt.executeUpdate(str);
stmt.close();
con.close();
}
catch(SQLException ex){
System.out.println("\n***SQLException caught***\n");
while(ex!=null){
System.out.println("SQLState:"+ex.getSQLState());
System.out.println("Message:"+ex.getMessage());
System.out.println("Vendor:"+ex.getErrorCode());
ex=ex.getNextException();
System.out.println("");
}
}
catch(java.lang.Exception ex){
ex.printStackTrace();
}
}
}
}
![avatar](https://profile-avatar.csdnimg.cn/271c0f59ce4e427783f4849fb0aeba2e_weixin_42662171.jpg!1)
林当时
- 粉丝: 114
- 资源: 1万+
最新资源
- Proteus 7.8超再生模块接收发送仿真源程序实现:433MHz单片机通信实战演练,单片机433MHz超再生模块:Proteus仿真收发功能实现与原理说明,单片机433MHz超再生模块发送接收Pr
- 基于TypeScript和Html的跨语言Awaken设计源码分享与优化
- 基于MATLAB Simulink建模的双侧独立电驱动履带车转向控制研究:涵盖PI与SMC算法比较,适应大、中半径及原地转向工况,基于MATLAB Simulink建模的双侧独立电驱动履带车转向控制研
- 基于VSG预同步控制与自适应转动惯量的离并网无缝切换技术,基于VSG预同步控制的自适应转动惯量无缝并网切换技术,VSG预同步控制与自适应转动惯量 离并网无缝切 ,VSG预同步控制; 自适应转动惯量
- COMSOL光学计算:BICs合并技术,带能、品质因子及远场偏振可视化解析,详细视频教程,COMSOL光学模拟:BICs合并、能带与品质因子计算及远场偏振箭头绘制教程,详解视频教学,comsol计算光
- 基于SpringBoot与Vue的校友社交管理系统源码设计
- 基于Python的剪切板监听图片识别进入白板设计源码
- 基于Comsol软件的超声换能器相控阵聚焦仿真研究,基于Comsol仿真平台:超声换能器聚焦及相控阵仿真技术研究,Comsol超声能器聚焦 仿真 超声能器相控阵聚焦仿真 ,Comsol; 超声换能器
- 基于Java和Kotlin的SASS电影票管理系统父类设计源码
- 基于Java开发的演唱会在线购票系统设计源码
- 欧姆龙CP1H与台达VFD-M变频器:MODBUS RTU简易主站通讯的PLC程序设计与应用,欧姆龙CP1H与台达VFD-M变频器:基于MODBUS RTU简易主站的轮询通讯保护策略与PLC程序解析
- 基于COMSOL接口的Matlab编程:快速构建三维随机裂隙网络模型,《COMSOL中高效导入的三维随机裂隙网络模型编程生成》,矩形三维随机裂隙网络 使用COMSOL with Matlab接口编程
- 基于Java语言的实时公交系统设计源码
- Simulink仿真模型:基于自适应虚拟阻抗下垂控制改进的双机并联孤岛模式,解决线路阻抗差异导致的无功功率不均分问题(模型版本2018b及以上),Simulink仿真模型下的双机并联下垂控制改进:自适
- 基于Vue框架的人脸考勤系统设计源码
- 电动汽车Simulink仿真模型:整车动力性能与能耗测试模拟平台(支持NEDC工况),电动汽车Simulink仿真模型:整车动力性测试与能耗仿真分析,电动汽车 simulink仿真模型, 可进行整车动
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
![feedback](https://img-home.csdnimg.cn/images/20220527035711.png)
![feedback](https://img-home.csdnimg.cn/images/20220527035711.png)
![feedback-tip](https://img-home.csdnimg.cn/images/20220527035111.png)