number型jdbc数据类型
时间: 2023-06-18 12:08:56 浏览: 61
在 JDBC 中,Number 数据类型是指在数据库中存储数字的数据类型,它包括如下几种类型:
1. TINYINT:一个字节大小的整数,取值范围为 -128 到 127。
2. SMALLINT:两个字节大小的整数,取值范围为 -32768 到 32767。
3. INTEGER:四个字节大小的整数,取值范围为 -2147483648 到 2147483647。
4. BIGINT:八个字节大小的整数,取值范围为 -9223372036854775808 到 9223372036854775807。
5. FLOAT:单精度浮点数,占用四个字节,取值范围为 -3.4E38 到 3.4E38。
6. DOUBLE:双精度浮点数,占用八个字节,取值范围为 -1.7E308 到 1.7E308。
7. DECIMAL:定点数,用于存储精度较高的数字,支持指定小数位数。
相关问题
Jdbc 使用 Oracle 写入 blob类型数据
以下是使用 JDBC 向 Oracle 数据库写入 BLOB 类型数据的示例代码:
```java
import java.io.File;
import java.io.FileInputStream;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;
public class WriteBlobToOracle {
public static void main(String[] args) {
// Oracle JDBC 驱动
String driver = "oracle.jdbc.driver.OracleDriver";
// 数据库连接信息
String url = "jdbc:oracle:thin:@localhost:1521:ORCL";
String user = "username";
String password = "password";
Connection conn = null;
PreparedStatement pstmt = null;
try {
// 加载驱动程序
Class.forName(driver);
// 获取数据库连接
conn = DriverManager.getConnection(url, user, password);
// SQL 插入语句,参数使用 ? 占位符
String sql = "INSERT INTO blob_table (id, file_name, file_content) VALUES (?, ?, ?)";
// 创建 PreparedStatement 对象
pstmt = conn.prepareStatement(sql);
// 设置参数
pstmt.setInt(1, 1);
pstmt.setString(2, "test.txt");
// 读取文件内容到 InputStream 对象
File file = new File("test.txt");
InputStream is = new FileInputStream(file);
// 设置 BLOB 类型参数
pstmt.setBinaryStream(3, is, (int) file.length());
// 执行 SQL 语句
int rowsAffected = pstmt.executeUpdate();
System.out.println(rowsAffected + " rows affected.");
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
} finally {
// 关闭 PreparedStatement 和数据库连接
try {
if (pstmt != null) pstmt.close();
if (conn != null) conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
```
在上面的示例中,我们使用 `setBinaryStream()` 方法将文件内容写入 BLOB 字段。该方法需要三个参数:
- 参数索引:指定 BLOB 参数的位置,从 1 开始计数。
- InputStream 对象:包含要写入 BLOB 字段的数据。
- BLOB 字段的长度:指定数据长度,使用文件的长度。
在插入数据之前,我们需要创建一个表来存储 BLOB 类型数据:
```sql
CREATE TABLE blob_table (
id NUMBER(10) PRIMARY KEY,
file_name VARCHAR2(50),
file_content BLOB
);
```
这个表包含三个字段:
- `id`:表示唯一标识符。
- `file_name`:表示文件名。
- `file_content`:表示 BLOB 类型字段,用于存储文件内容。
最后,需要将文件 `test.txt` 放在项目根目录下,这个文件将被写入 BLOB 字段。如果需要写入其他文件,只需将文件名和路径更改为相应的值即可。
Java中常用的数据类型,与JDBC,MySQL,以及Oracle之间类型的对应关系?
Java中常用的数据类型有:
1. byte: 1字节,范围为-128到127
2. short: 2字节,范围为-32768到32767
3. int: 4字节,范围为-2147483648到2147483647
4. long: 8字节,范围为-9223372036854775808到9223372036854775807
5. float: 4字节,范围为3.40282347 x 10^38到1.40239846 x 10^-45
6. double: 8字节,范围为1.79769313486231570 x 10^308到4.94065645841246544 x 10^-324
7. boolean: 1位,值为true或false
8. char: 2字节,范围为0到65535
JDBC、MySQL、Oracle与Java中数据类型的对应关系如下:
Java数据类型 | JDBC数据类型 | MySQL数据类型 | Oracle数据类型
----------------|----------------|------------------|------------------
byte | TINYINT | TINYINT | NUMBER(3)
short | SMALLINT | SMALLINT | NUMBER(5)
int | INTEGER | INT | NUMBER(10)
long | BIGINT | BIGINT | NUMBER(19)
float | FLOAT | FLOAT | FLOAT(24)
double | DOUBLE | DOUBLE | FLOAT(53)
boolean | BIT | BIT | NUMBER(1)
char | CHAR | CHAR | CHAR(1)
String | VARCHAR | VARCHAR | VARCHAR2(4000)
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.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)