package demo; import java.sql.*; public class Demo{ public static void main(String args[]) { Connection con=null; Statement sql; ResultSet rs; try{ Class.forName("com.mysql.cj.jdbc.Driver"); //加载JDBC_MySQL驱动 } catch(Exception e){} String uri = "jdbc:mysql://localhost:3306/diyi"+"useSSL = ture&serverTimezone=CST"; String user ="root"; String password ="8888"; try{ con = DriverManager.getConnection(uri,user,password); //连接代码 } catch(SQLException e){} try { sql=con.createStatement(); rs=sql.executeQuery("SELECT * FROM aba"); //查询mess表 while(rs.next()) { String a=rs.getString(1); int id=rs.getInt(2); String b=rs.getString(3); System.out.printf("%s\t",a); System.out.printf("%d\t",id); System.out.printf("%s\t",b); } con.close(); } catch(SQLException e){ System.out.println(e); } } }
时间: 2024-02-14 13:14:40 浏览: 40
这是一个Java程序,用于连接MySQL数据库,并查询aba表中的数据。程序的具体流程如下:
1. 导入需要的Java类库:java.sql.*;
2. 声明变量:Connection con用于存储连接对象,Statement sql用于执行SQL语句,ResultSet rs用于存储查询结果;
3. 加载JDBC_MySQL驱动,使用Class.forName()方法加载com.mysql.cj.jdbc.Driver类;
4. 指定数据库地址、用户名和密码,使用DriverManager.getConnection()方法建立数据库连接;
5. 创建Statement对象,使用executeQuery()方法执行SQL查询语句,将查询结果存储在ResultSet对象中;
6. 使用while循环遍历ResultSet对象,将查询结果输出到控制台;
7. 关闭数据库连接,释放资源。
需要注意的是,在实际使用中,应该对SQLException进行正确的异常处理,并且在最终关闭数据库连接前,应该保证所有数据库操作都已经完成,否则可能会出现资源泄露的情况。
相关问题
完善这段代码import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.SQLException; public class Update { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub Connection conn = DB.getC
onnection(); //获取数据库连接对象 PreparedStatement pstmt = null; String sql = "UPDATE student SET name=?, age=? WHERE id=?"; try { pstmt = conn.prepareStatement(sql); //设置参数 pstmt.setString(1, "张三"); pstmt.setInt(2, 20); pstmt.setInt(3, 1); int count = pstmt.executeUpdate(); if(count > 0){ System.out.println("更新成功!"); }else{ System.out.println("更新失败!"); } } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); }finally{ DB.close(pstmt); //关闭 PreparedStatement 对象 DB.close(conn); //关闭连接对象 } } }
这是一个 Java 程序,用来更新数据库中的一条记录。在这个程序中,首先获取了一个数据库连接对象,然后使用 PreparedStatement 对象来执行 SQL 语句。在 SQL 语句中,使用了占位符来表示要更新的字段值,这些值会在后面的代码中动态设置。最后根据执行结果,输出更新成功或更新失败的信息。需要注意的是,在程序结束时,需要关闭 PreparedStatement 对象和连接对象,以释放资源。
package DiLiuZhang; import java.sql.Date; import java.util.Date; public class Circle { public static void main(String[] args) { java.sql.Date date=new java.sql.Date(); java.util.Date date1=new java.util.Date(); } }
这段代码存在一个错误,编译会报错。
原因是在该代码中同时导入了 `java.sql.Date` 和 `java.util.Date`,两者名称相同,会发生冲突。需要对其中一个进行重命名,或者使用全限定名来避免冲突。
以下是修改后的代码:
```java
package DiLiuZhang;
import java.sql.Date;
import java.util.Date as UtilDate;
public class Circle {
public static void main(String[] args) {
Date sqlDate = new Date(System.currentTimeMillis());
UtilDate utilDate = new UtilDate();
}
}
```
通过为 `java.util.Date` 起一个别名 `UtilDate`,可以避免与 `java.sql.Date` 发生冲突。同时,为了区分使用的是哪个类,还需要使用全限定名来创建对象。