Java中获取自动产生类型的字段的集合
2013-08-10 21:54
204 查看
我们向数据库中插入数据的时候,如果有一个字段的类型是auto_increment(Mysql中的数据类型,其他数据库类似),我们插入的时候value应该为null,这个大家都知道,但是如果这张表中还有另外一个字段,它的类型不是auto_increment,但他的值必须要等于这条记录的auto_increment字段的值怎么办?具体有如下示例:
Table_Name:Test
Table_Column:id(auto_increment)title(varchar(255))cont(text)rootid(int)
在这张表中,我们插入数据的时候Statement可能是这样的:
insertintoTestvalues(null,'testTitle','testCont',?);
?代表rootid的值,如果我们现在要求rootid必须等于id,那请问rootid的值该怎么确定呢?
SolutionInJava:
先为rootid插入一个常量值:
Stringsql="insertintoTestvalues(null,'testTitle','testCont',-1)";
pstmt=conn.prepareStatement(sql,Statement.RETURN_GENERATED_KEYS);
pstmt.executeUpdate();
然后获取
ResultSetrsKey=pstmt.getGeneratedKeys();
rsKey.next();
intkey=rsKey.getInt(1);
sql="updateTestsetrootid="+key+"whereid="+key;
pstmt=conn.prepareStatement(sql);
pstmt.executeUpdate();
reKey.close();
pstmt.close();
conn.close();
本文出自 “江湖” 博客,请务必保留此出处http://gogofun.blog.51cto.com/1912941/1269504
Table_Name:Test
Table_Column:id(auto_increment)title(varchar(255))cont(text)rootid(int)
在这张表中,我们插入数据的时候Statement可能是这样的:
insertintoTestvalues(null,'testTitle','testCont',?);
?代表rootid的值,如果我们现在要求rootid必须等于id,那请问rootid的值该怎么确定呢?
SolutionInJava:
先为rootid插入一个常量值:
Stringsql="insertintoTestvalues(null,'testTitle','testCont',-1)";
pstmt=conn.prepareStatement(sql,Statement.RETURN_GENERATED_KEYS);
pstmt.executeUpdate();
然后获取
ResultSetrsKey=pstmt.getGeneratedKeys();
rsKey.next();
intkey=rsKey.getInt(1);
sql="updateTestsetrootid="+key+"whereid="+key;
pstmt=conn.prepareStatement(sql);
pstmt.executeUpdate();
reKey.close();
pstmt.close();
conn.close();
本文出自 “江湖” 博客,请务必保留此出处http://gogofun.blog.51cto.com/1912941/1269504
相关文章推荐
- Mybatis Generate自动生成Xml文件,针对字段类型为text等会默认产生XXXXWithBlobs.java
- java获取mysql数据库表、字段、字段类型、字段注释
- jdbc操作数据库并自动获取字段类型
- 在JAVA开发中,当获取到密码字段后,为什么将其优先赋值于char[]类型的实例而不是String 类型的?
- Mybatis自动生成Xml文件,针对字段类型为text等会默认产生XXXXWithBlobs的方法问题
- Java获取集合泛型的类型上的注解
- Mybatis自动生成Xml文件,针对字段类型为text等会默认产生XXXXWithBlobs的方法问题
- Java反射获取基本类型、包装类型、String对象类型的字段值
- JAVA连接MYSQL通过查询返回的结果集获取表结构字段类型
- Sql Server 2008获取表的注释,字段名,字段类型,字段描述等,代码自动生成必备
- java通过反射获取字段的类型
- Java 获取Enumeration类型的集合方法
- java获取sql,oracle的字段详细信息(字段类型,长度,精度)
- java android 泛型类型 获取 json 自动转对象
- 获取表结构信息(字段名,类型,长度,精度,小数位数,主键,自动增长)
- java mysql 表中字段是tinyint(1)类型,hibernate自动生成bean对应属性为boolean类型,如何传值
- java怎么获取从oracle数据库拿到的数据的某个字段的字段详情(字段类型如date、varchar2等,长度,精度)?
- Java反应类型获取并转换集合
- 关于java获取Oracle中date类型字段问题
- java获取MySQL自动的int类型的Id