...在private ResultSet rs=null; 的这个分号会出错

发布网友 发布时间:2024-10-23 22:27

我来回答

2个回答

热心网友 时间:2024-10-24 08:26

你的那些代码直接写类里面是不行的

那些代码是可执行代码。。

要写在方法或者初始化块里面

给你改了下

写在构造方法里面的。。

你参考下哈、、

import java.sql.*;

import javax.swing.*;
import java.lang.*;
public class ChaXun {
String ur1= "jdbc:mysql://locahost:3306/mysqlTest"; //sql的 url
String driver= "com.mysql.jdbc.Driver"; //sql的驱动程序
String userName= "root"; //数据库用户账户
String password= "xuye"; //用户密码
private Connection con =null; //创建数据库连接对象
private Statement state =null; //创建执行SQL对象(sql访问对象)
private ResultSet rs=null;
public ChaXun(){//这是这一句的这个分号会出错找了好久都没有找到什么原因
try {
Class.forName(driver); //加载数据库驱动程序
con=DriverManager.getConnection(ur1,userName,password); //数据库的连接
System.out.println("数据库连接成功");
} catch(ClassNotFoundException e1) {
System.err.print("ClassNotFountException" + e1.getMessage()); //打印异常信息
e1.printStackTrace(); //追踪异常事件发生时执行堆栈的内容
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try {
String sel="SELECT * " + "FORM mysqlTest";
state=con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_UPDATABLE); //执行数据库 滚动集 可以更新的并发模式
rs=state.executeQuery(sel);
while(rs.next()){
String ID=rs.getString(1);
String name=rs.getString(2);
String age=rs.getString(3);
String sex=rs.getString(4);
String birth=rs.getString(5);
String department=rs.getString(6);
String tdept=rs.getString(7);
String salary=rs.getString(8);
String profss=rs.getString(9);
System.out.println(ID +" " + name +" " + age + " "+ sex +" "+birth + " " + department + " " + tdept +" " + salary +" " + profss);
}
} catch(SQLException e2) {
System.out.println(e2.getMessage()); //打印异常信息
e2.printStackTrace(); //追踪异常事件发生时执行堆栈的内容
} finally{
try{
state.close(); //关闭StateMent对象
if(con != null){
con.close(); //关闭数据库连接
}
}catch(SQLException e){
System.out.println("SQLException"+e.getMessage()); //打印异常信息
e.printStackTrace(); //追踪异常事件发生时执行堆栈的内容
}
}
}
}

那里的错误是因为你没有捕捉异常。。

你就按我给你的是没有错误的

热心网友 时间:2024-10-24 08:26

那个是中文的分号或是全角的字符

热心网友 时间:2024-10-24 08:26

你的那些代码直接写类里面是不行的

那些代码是可执行代码。。

要写在方法或者初始化块里面

给你改了下

写在构造方法里面的。。

你参考下哈、、

import java.sql.*;

import javax.swing.*;
import java.lang.*;
public class ChaXun {
String ur1= "jdbc:mysql://locahost:3306/mysqlTest"; //sql的 url
String driver= "com.mysql.jdbc.Driver"; //sql的驱动程序
String userName= "root"; //数据库用户账户
String password= "xuye"; //用户密码
private Connection con =null; //创建数据库连接对象
private Statement state =null; //创建执行SQL对象(sql访问对象)
private ResultSet rs=null;
public ChaXun(){//这是这一句的这个分号会出错找了好久都没有找到什么原因
try {
Class.forName(driver); //加载数据库驱动程序
con=DriverManager.getConnection(ur1,userName,password); //数据库的连接
System.out.println("数据库连接成功");
} catch(ClassNotFoundException e1) {
System.err.print("ClassNotFountException" + e1.getMessage()); //打印异常信息
e1.printStackTrace(); //追踪异常事件发生时执行堆栈的内容
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try {
String sel="SELECT * " + "FORM mysqlTest";
state=con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_UPDATABLE); //执行数据库 滚动集 可以更新的并发模式
rs=state.executeQuery(sel);
while(rs.next()){
String ID=rs.getString(1);
String name=rs.getString(2);
String age=rs.getString(3);
String sex=rs.getString(4);
String birth=rs.getString(5);
String department=rs.getString(6);
String tdept=rs.getString(7);
String salary=rs.getString(8);
String profss=rs.getString(9);
System.out.println(ID +" " + name +" " + age + " "+ sex +" "+birth + " " + department + " " + tdept +" " + salary +" " + profss);
}
} catch(SQLException e2) {
System.out.println(e2.getMessage()); //打印异常信息
e2.printStackTrace(); //追踪异常事件发生时执行堆栈的内容
} finally{
try{
state.close(); //关闭StateMent对象
if(con != null){
con.close(); //关闭数据库连接
}
}catch(SQLException e){
System.out.println("SQLException"+e.getMessage()); //打印异常信息
e.printStackTrace(); //追踪异常事件发生时执行堆栈的内容
}
}
}
}

那里的错误是因为你没有捕捉异常。。

你就按我给你的是没有错误的

热心网友 时间:2024-10-24 08:27

那个是中文的分号或是全角的字符

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com