- java数组入门教程
- java数组的遍历
- 基于debian(ubuntu)的JDK安装与卸载-vps环境搭建实录(一)
- java环境变量配置(windows7系统)
- java开发环境配置
- 第一个java程序 helloword
- 使用eclipse快速开发java程序
- Java基础语法
- Java对象和类
- Java基本数据类型
- Java变量类型
- Java修饰符
- Java运算符
- Java循环结构 – for, while 及 do…while
- Java分支结构 – if…else/switch
- Java Number类
- Java Character类
- Java String类
- Java日期时间
- java异常处理分类
- java Exception异常处理实例
- java.util.UUID 工具类详解
- java数字格式化类DecimalFormat详解
- JDBC系列教程之一:jdbc简单介绍
- JDBC系列教程之二:jdbc连接数据的步骤
- JDBC系列教程之三:JDBC基本的CRUD(创建、读取、更新、删除)
- JDBC系列教程之四:SQL注入PreparedStatement和Statement
- JDBC系列教程之五:数据类型
- JDBC系列教程之六:一个简单用户相关的数据访问层
- JDBC系列教程之七:用配置文件(properties)和反射实现与具体类的耦合
- JDBC系列教程之八:事务-ACID
- JDBC系列教程之九:事务-SavePoint与JTA
- JDBC系列教程之十:隔离级别
- JDBC系列教程之十一:其他的几个API
- JDBC系列教程之十二:DatabaseMetaData(数据库的元数据信息)和ParameterMetaData(参数的元数据信息)
- JDBC系列教程之十三:ResultSetMetaData
- JDBC系列教程之十四:用反射ResultSetMetaData将查询结果读入对象中
- JDBC系列教程之十五:数据源和连接池
- Java 继承
- Java 重写(Override)与重载(Overload)
- Java 多态
- Java 抽象类
- java 封装
- Java 接口
- Java 包(package)
- Java 数据结构
- Java 集合框架
- Java 泛型
- Java序列化
- Java 网络编程
- Java 发送邮件
- Java 多线程编程
- Java Applet基础
- Java 文档注释
知识点
相关文章
更多最近更新
更多JDBC系列教程之五:数据类型
2019-03-28 00:42|来源: 领悟书生
数据类型
l 详细信息见java.sql.Types
l 几种特殊且比较常用的类型
1.DATA,TIME,TIMESTAMPà date,time,datetime
存:ps.setDate(i,d); ps.setTime(i,t); ps.setTimestamp(i, ts);
取:rs.getDate(i); rs.getTime(i); rs.getTimestamp(i);
R |
// 5.处理结果 while (rs.next()) { //birthday = new Date(rs.getDate("birthday").getTime()); birthday = rs.getDate("birthday"); } |
C |
String sql = "insert into user(name,birthday, money) values (?, ?, ?) "; ps = conn.prepareStatement(sql); ps.setString(1, name); ps.setDate(2, new java.sql.Date(birthday.getTime())); ps.setFloat(3, money); |
2.CLOBà text(大文本)
存:ps.setCharacterStream(index, reader, length);
ps.setString(i, s);
取:reader = rs. getCharacterStream(i);
reader =rs.getClob(i).getCharacterStream();
string = rs.getString(i);
R |
// 4.执行语句 rs = st.executeQuery("select big_text from clob_test"); // 5.处理结果 while (rs.next()) { Clob clob = rs.getClob(1); Reader reader = clob.getCharacterStream(); // reader = rs.getCharacterStream(1); // String s = rs.getString(1);
File file = new File("JdbUtils_bak.java"); Writer writer = new BufferedWriter(new FileWriter(file)); char[] buff = new char[1024]; for (int i = 0; (i = reader.read(buff)) > 0;) { writer.write(buff, 0, i); } writer.close(); reader.close(); } |
C |
// 3.创建语句 String sql = "insert into clob_test(big_text) values (?) "; ps = conn.prepareStatement(sql); File file = new File("src/com/hyneng/jdbc/JdbcUtils.java"); Reader reader = new BufferedReader(new FileReader(file)); //字符流 ps.setCharacterStream(1, reader, (int) file.length()); // ps.setString(1, x); // 4.执行语句 int i = ps.executeUpdate(); reader.close();
|
3.BLOBà blob(二进制类型)
存:ps.setBinaryStream(i, inputStream, length);
取:rs.getBinaryStream(i);
rs.getBlob(i).getBinaryStream();
R |
// 4.执行语句 rs = st.executeQuery("select big_bit from blob_test"); // 5.处理结果 while (rs.next()) { // Blob blob = rs.getBlob(1); // InputStream in = blob.getBinaryStream(); InputStream in = rs.getBinaryStream("big_bit");
File file = new File("IMG_0002_bak.jpg"); OutputStream out = new BufferedOutputStream( new FileOutputStream(file)); byte[] buff = new byte[1024]; for (int i = 0; (i = in.read(buff)) > 0;) { out.write(buff, 0, i); } out.close(); in.close(); } |
C |
// 3.创建语句 String sql = "insert into blob_test(big_bit) values (?) "; ps = conn.prepareStatement(sql); File file = new File("IMG_0002.jpg"); InputStream in = new BufferedInputStream(new FileInputStream(file)); ps.setBinaryStream(1, in, (int) file.length()); // 4.执行语句 int i = ps.executeUpdate(); in.close(); |
本文链接:JDBC系列教程之五:数据类型,转自请注明:http://www.656463.com/article/799
相关问答
更多-
Python数据类型[2022-10-18]
python里变量类型是根据初始化的值的类型来自动识别的 dig_T1=1 那么dig_T1就是整型变量,python没有无符号类型,且整型字节数统一只有一种,有的机器上整型是12字节,有的是24字节 如果怎么写:dig_T1=1.0 那么dig_T1就是浮点型变量 -
java语言的所有基本数据类型指的什么 ?引用数据类型指的什么?[2022-11-15]
java语言的基本数据类型指的是字节类型byte,短整型short,整型int,长整型long,布尔型boolean,字符类型char,单精度浮点类型float,双精度浮点类型double共八大基本数据类型;引用数据类型指的是类,枚举,接口和数组类型。 二者之间的区别在于,基本数据类型的变量,存储的就是数据本身的值,而引用类型的变量,存储的则是数据的地址,这个地址指向了数据的值。 -
简述java的8种基本数据类型[2023-11-02]
java基本数据类型就8种,记住就好了。除了这些都是引用型的了。 java四类八种基本数据类型 第一类:整型 byte short int long 第二类:浮点型 float double 第三类:逻辑型 boolean(它只有两个值可取true false) 第四类:字符型 char 在栈中可以直接分配内存的数据是基本数据类型。 引用数据类型:是数据的引用在栈中,但是他的对象在堆中。 要想学好Java必须知道各种数据的在内存中存储位置。 对内存有了很好的了解,可以有助你分析程序。 字节: boolean ... -
mysql数据类型[2022-03-28]
这种数据给你两个建议 第一,用varchar类型,因为那个“L”是字符,无法保存成任何一种数字类型 第二,你可以分别建立两个字段,一个字段是体积,存“0.8”这样的数,另一个字段单位存"L" 不过第一种要是参与计算的情况下,会有些麻烦,所以建议你用第二种 -
MySql无法知道如何存储您的GEO对象,或者他的大小是多少。 您不应该按照您尝试的方式存储对象。 PreparedStatement#setObject()文档说: JDBC规范指定了从Java对象类型到SQL类型的标准映射。 在发送到数据库之前,给定的参数将转换为相应的SQL类型。 [...]如果存在歧义,此方法会抛出异常,例如,如果对象是实现上述多个接口的类的类。 MySql can't know how to store your GEO object, or what is his size. Y ...
-
POINT几何图形不需要特殊类型。 只需使用double精度等原始数据类型作为坐标。 例如,要通过lon和lat参数插入新的geography类型,请使用几何构造函数 : INSERT INTO my_table (geog) VALUES (ST_SetSRID(ST_MakePoint(:lon, :lat), 4326)::geography); 或者将它们作为浮点数返回,使用几何访问器函数 : SELECT ST_Y(geog::geometry) AS lat, ST_X(geog::geome ...
-
AFAIK该点是十进制值的标准表示法。 使用逗号可能会触发SQL解析错误,或者如果语法上下文允许逗号出现,可能会被忽略。 你是如何定义DECIMAL列的精度的? 如果是DECIMAL(10, 2) 10.215 DECIMAL(10, 2) ,它将总共有10个数字,其中2是十进制数值(小数点后10.215表示10.215保存为10.214变为10.21 )。 如果它是DECIMAL(10) ,它将不会有任何十进制值并被四舍五入为整数。 如果您使用FLOAT或DOUBLE PRECISION ,则不必指定小数 ...
-
JDBC,Elasticsearch和Postgresql Json数据类型(JDBC, Elasticsearch and Postgresql Json data type)[2023-09-18]
感谢Craig Ringer向我指出了真正的问题,我重写了我的河流,用“\ u0027”替换postgresql json查询中的简单引号,现在它工作得很好 Thanks to Craig Ringer who pointed me to the real problem, I rewrited my river, replacing the simple quotes in the postgresql json query with "\u0027", and now it works just fin ... -
您可以使用“BytesType”。 您可以使用AbstractSerializer.toByteBuffer()和AbstractSerializer.fromByteBuffer()轻松地将“BytesType”转换为您想要的数据类型。 You can use "BytesType". You can easily convert "BytesType" to/from your desired data type using AbstractSerializer.toByteBuffer() and A ...
-
你的returnDataType方法总是返回表的第一列的类型。 你需要解决这个问题。 您应该使用预准备语句的参数元数据,或者使用DatabaseMetaData的列元数据。 或者至少访问右列索引。 你也改变了你的if分支。 类型4是java.sql.Types.INTEGER ,但您尝试将其设置为字符串,而类型12为java.sql.Types.VARCHAR ,但您尝试将其设置为整数(转换可能会失败) 。 旁注:您不应该使用整数值,如4,12,92和93,而应使用java.sql.Types常量INTEG ...