用prepareStatement建这个表
时间: 2024-03-18 21:40:25 浏览: 6
使用`PreparedStatement`建表可以提高效率和安全性。以下是使用`PreparedStatement`建表的示例代码:
```java
import java.sql.*;
public class CreateTable {
public static void main(String[] args) {
try {
// 连接数据库
String url = "jdbc:mysql://localhost:3306/mydatabase";
String username = "root";
String password = "123456";
Connection conn = DriverManager.getConnection(url, username, password);
// 建表语句
String sql = "CREATE TABLE `home` (" +
"`id` int(11) NOT NULL AUTO_INCREMENT," +
"`name` varchar(255) DEFAULT NULL," +
"`money` decimal(11,2) DEFAULT NULL," +
"`date` timestamp NULL DEFAULT CURRENT_TIMESTAMP," +
"PRIMARY KEY (`id`)" +
") ENGINE=InnoDB AUTO_INCREMENT=86 DEFAULT CHARSET=utf8;";
// 创建PreparedStatement对象
PreparedStatement pstmt = conn.prepareStatement(sql);
// 执行建表语句
pstmt.executeUpdate();
// 关闭连接
pstmt.close();
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
```
这个代码片段建立了一个名为`home`的表,包含四个列:`id`、`name`、`money`和`date`,和你提供的SQL语句相同。这个表使用InnoDB引擎,自增长起始值为86,字符集为utf8。注意使用`PreparedStatement`对象时,建表语句中不需要手动拼接参数,因为`PreparedStatement`对象会自动处理参数。