1、分别采用基于JDBC-ODBC桥接器和数据库专用驱动程序建立数据库连接,请分别给出完整测试代码。数据库系统可选用Derby、Access、SQL Server、MySql等。 2.基于JDBC进行数据查询操作,分别实现顺序查询、条件查询、排序查询和模糊查询操作。数据库系统可选用Derby、Access、SQL Server、MySql等其中的一个建立数据库及其数据表。
时间: 2023-07-10 15:23:31 浏览: 58
好的,我将分两部分回答你的问题。
## 1. 数据库连接测试代码
### 基于JDBC-ODBC桥接器
```java
import java.sql.*;
public class JdbcOdbcExample {
public static void main(String[] args) {
try {
// 加载JDBC-ODBC桥接器
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
// 连接数据库
String url = "jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ=C:\\test.mdb";
String username = "";
String password = "";
Connection conn = DriverManager.getConnection(url, username, password);
// 执行SQL查询
Statement stmt = conn.createStatement();
String sql = "SELECT * FROM users";
ResultSet rs = stmt.executeQuery(sql);
// 处理查询结果
while (rs.next()) {
System.out.println("ID: " + rs.getInt("id") + ", Name: " + rs.getString("name"));
}
// 关闭连接
rs.close();
stmt.close();
conn.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
```
### 基于数据库专用驱动程序
```java
import java.sql.*;
public class JdbcDriverExample {
public static void main(String[] args) {
try {
// 加载数据库驱动程序
Class.forName("com.mysql.jdbc.Driver");
// 连接数据库
String url = "jdbc:mysql://localhost:3306/test";
String username = "root";
String password = "123456";
Connection conn = DriverManager.getConnection(url, username, password);
// 执行SQL查询
Statement stmt = conn.createStatement();
String sql = "SELECT * FROM users";
ResultSet rs = stmt.executeQuery(sql);
// 处理查询结果
while (rs.next()) {
System.out.println("ID: " + rs.getInt("id") + ", Name: " + rs.getString("name"));
}
// 关闭连接
rs.close();
stmt.close();
conn.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
```
## 2. 数据查询操作测试代码
### 顺序查询
```java
import java.sql.*;
public class SequentialQueryExample {
public static void main(String[] args) {
try {
// 加载数据库驱动程序
Class.forName("com.mysql.jdbc.Driver");
// 连接数据库
String url = "jdbc:mysql://localhost:3306/test";
String username = "root";
String password = "123456";
Connection conn = DriverManager.getConnection(url, username, password);
// 执行SQL查询
Statement stmt = conn.createStatement();
String sql = "SELECT * FROM users";
ResultSet rs = stmt.executeQuery(sql);
// 处理查询结果
while (rs.next()) {
System.out.println("ID: " + rs.getInt("id") + ", Name: " + rs.getString("name"));
}
// 关闭连接
rs.close();
stmt.close();
conn.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
```
### 条件查询
```java
import java.sql.*;
public class ConditionalQueryExample {
public static void main(String[] args) {
try {
// 加载数据库驱动程序
Class.forName("com.mysql.jdbc.Driver");
// 连接数据库
String url = "jdbc:mysql://localhost:3306/test";
String username = "root";
String password = "123456";
Connection conn = DriverManager.getConnection(url, username, password);
// 执行SQL查询
Statement stmt = conn.createStatement();
String sql = "SELECT * FROM users WHERE age > 18";
ResultSet rs = stmt.executeQuery(sql);
// 处理查询结果
while (rs.next()) {
System.out.println("ID: " + rs.getInt("id") + ", Name: " + rs.getString("name"));
}
// 关闭连接
rs.close();
stmt.close();
conn.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
```
### 排序查询
```java
import java.sql.*;
public class SortedQueryExample {
public static void main(String[] args) {
try {
// 加载数据库驱动程序
Class.forName("com.mysql.jdbc.Driver");
// 连接数据库
String url = "jdbc:mysql://localhost:3306/test";
String username = "root";
String password = "123456";
Connection conn = DriverManager.getConnection(url, username, password);
// 执行SQL查询
Statement stmt = conn.createStatement();
String sql = "SELECT * FROM users ORDER BY age DESC";
ResultSet rs = stmt.executeQuery(sql);
// 处理查询结果
while (rs.next()) {
System.out.println("ID: " + rs.getInt("id") + ", Name: " + rs.getString("name"));
}
// 关闭连接
rs.close();
stmt.close();
conn.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
```
### 模糊查询
```java
import java.sql.*;
public class FuzzyQueryExample {
public static void main(String[] args) {
try {
// 加载数据库驱动程序
Class.forName("com.mysql.jdbc.Driver");
// 连接数据库
String url = "jdbc:mysql://localhost:3306/test";
String username = "root";
String password = "123456";
Connection conn = DriverManager.getConnection(url, username, password);
// 执行SQL查询
Statement stmt = conn.createStatement();
String sql = "SELECT * FROM users WHERE name LIKE '%张%'";
ResultSet rs = stmt.executeQuery(sql);
// 处理查询结果
while (rs.next()) {
System.out.println("ID: " + rs.getInt("id") + ", Name: " + rs.getString("name"));
}
// 关闭连接
rs.close();
stmt.close();
conn.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
```
以上代码中的SQL语句和表名、列名等需要根据具体情况进行修改。
相关推荐
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![application/msword](https://img-home.csdnimg.cn/images/20210720083327.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)