JDBC查询就错了 新手
时间: 2016-08-08来源:开源中国
前景提要
HDC调试需求开发(15万预算),能者速来!>>> com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown column 'id' in 'field list'at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at ······


Tets类
package ConsultSet;


import java.sql.ResultSet;
import java.util.Date;
import org.junit.Test;


import com.mysql.jdbc.Connection;


public class JdbcTest {
/**
*
* ResultSet: 结果集。封装了使用JDBC进行查询的结果
* 1.调用Statement 对象的executequery(SQL) 可以得到结果集
* 2.Result 返回的实际上就是一张数据表,有一个指针指向数据表的第一行的前面
* 可以调用next()方法检测下一行是否有效,若有效该方法返回true,且指针下移
* 相当于Iterator 对象的hasNext() 和next()方法的结合体
* 3. 当指针对位到一行时,可以调用getXxx(index)或getXxx(columnName)
* 获取每一列的值,例如: getInt(1), getString("name")
*4. ResultSet 当然也需要进行关闭
*
*/
@Test
public void testResultSet() {
//获取 id = 4 的 customers 数据包的记录,并打印
Connection conn = null;
java.sql.Statement statement = null;
ResultSet rs = null;
try {
//1. Connection
conn = JdbcTools.testDriver();
//2. 获取Statement
statement = conn.createStatement();

//3.准备SQL
String sql = "SELECT id, name, email, birth" +
"FROM customers";
//4. 执行查询得到ResultSet
rs = statement.executeQuery(sql);
//5 出来ResultSet
while(rs.next()) {
int id = rs.getInt(1);
String name = rs.getString("name");
String email = rs.getString(3);
Date birth = rs.getDate(4);

System.out.println(id);
System.out.println(name);
System.out.println(email);
System.out.println(birth);
}

//6. 关闭数据库资源

} catch (Exception e) {
e.printStackTrace();
} finally {
JdbcTools.release(rs, statement, conn);
}


}


工具类
package ConsultSet;


import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.Properties;


import com.mysql.jdbc.Connection;
import com.mysql.jdbc.Driver;


public class JdbcTools {

public static void release(ResultSet rs,java.sql.Statement statement, Connection conn) {
if(rs != null) {
try {
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if(statement != null){
try {
statement.cancel();
} catch (Exception e) {
e.printStackTrace();
}
}
if(conn != null) {
try {
conn.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}

public static Connection testDriver() throws SQLException {
//1.创建一个Driver实现类的对象
Driver driver = new com.mysql.jdbc.Driver();

//2.准备连接数据库的基本信息:url,user,password
String url = "jdbc:mysql://localhost:3306/jiancheng1";
Properties info = new Properties();
info.put("user", "root");
info.put("password", "1234");

//3.调用Driver接口的connect(url, info) 获取数据库连接
Connection connection = (Connection) driver.connect(url, info);
return connection;


}



}



科技资讯:

科技学院:

科技百科:

科技书籍:

网站大全:

软件大全:

热门排行