请教一下,没有id的连接表怎么update_attributes啊

问题描述

有人说无法update,但无法update的话,我强行加进数据去就重复了呢……给它加属性让它变成中间表?先遍历一遍,有就不管,没有就加上?感觉都不太靠谱的样子啊 问题补充:langshao 写道

解决方案

引用您说的这是……ROR吗?我怎么看不太懂的样子……不好意思,没留意分类。这是用jdbc来做的。如果要用ROR,估计没办法,因为ROR是基于约定的,一般又都有ID。
解决方案二:
如果您只是想要针对查询到的资料进行一些简单的新增、更新或删除资料,您可以藉由ResultSet的一些方法来执行,而不一定要撰写SQL并执行。 想要使用ResultSet直接进行新增、更新或删除资料,在建立Statement时必须在createStatement()上指定ResultSet.TYPE_SCROLL_SENSITIVE(或ResultSet.TYPE_SCROLL_INSENSITIVE,如果不想取得更新后的资料的话)与ResultSet.CONCUR_UPDATABLE,例如: Statement stmt = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE); 假如我们想要针对查询到的资料进行更新的动作,我们先移动游标至想要更新的资料位置,然后使用updateXXX()等对应的方法即可,最后记得使用updateRow()让更新生效,例如: ResultSet result = stmt.executeQuery( "SELECT * FROM message WHERE name='caterpillar'"); result.last(); result.updateString("name", "justin"); result.updateString("email", "justin@mail.com"); result.updateRow(); 使用updateXXX()等方法之后,并不会马上对资料库生效,而必须执行完updateRow()方法才会对资料库进行操作,如果在updateRow()前想要取消之前的updateXXX()方法,则可以使用cancelRowUpdates()方法取消。 如果想要新增资料,则先使用moveToInsertRow()移至新增资料处,执行相对的updateXXX()方法,然后再执行insertRow ()即可新增资料,例如: ResultSet result = stmt.executeQuery( "SELECT * FROM message WHERE name='caterpillar'"); result.moveToInsertRow(); result.updateString("name", "caterpillar"); result.updateString("email", "caterpillar@mail.com"); result.updateString("subject", "test"); result.updateString("memo", "This is a test!"); result.insertRow(); 如果想要删除查询到的某笔资料,则可以将游标移至该笔资料,然后执行deleteRow()方法即可: ResultSet result = stmt.executeQuery( "SELECT * FROM message WHERE name='caterpillar'"); result.last(); result.deleteRow();

时间: 2024-09-17 22:48:30

请教一下,没有id的连接表怎么update_attributes啊的相关文章

数据库-小白请教数据关系图?连接问题

问题描述 小白请教数据关系图?连接问题 哪位大神能告诉我下图红圈里ID字段的数据关系是怎么连的?一对多表? 解决方案 你确定这是正真的设计好的关系,而不是工具自动按照同名字段产生的关系?单纯从关系讲,这就是外键,其它表的 ID 指向 tb_stuffbusic.ID. 解决方案二: 你确定这是正真的设计好的关系,而不是工具自动按照同名字段产生的关系?单纯从关系讲,这就是外键,其它表的 ID 指向 tb_stuffbusic.ID. 解决方案三: 这样设计,所有表关系只能一对一,并且只有一张表的主

请教sql server2008如何远程连接informix数据库?

问题描述 请教sql server2008如何远程连接informix数据库? 刚自学的小白,求大神解答: 如题 远程主机:192.168.1.110 端口:8691 实例名:ppsvr 数据库:ppdb 用户名:query 密码:query 其中一个表是ppmain 这样写对吗? exec sp_addlinkedserver @server='192.168.1.110', @srvproduct='', @provider='SQLOLEDB', @datasrc='192.168.1.1

hibernate表记录更新引发连接表数据被删问题

问题描述 我的项目中有两个表document.level,它们之间通过连接表实现关联,映射文件如下:表document<hibernate-mapping> <class name="com.unionmon.knowledge.model.KleDocument" table="KLE_DOCUMENT" schema="UFLOW"> <id name="kleDocumentId" type

mysql-公司遇到一个需求,数据库账户分表之后,是用long id来寻找表的

问题描述 公司遇到一个需求,数据库账户分表之后,是用long id来寻找表的 请教下各位同学们:公司遇到一个需求,数据库账户分表之后,是用long id来寻找表的,现在需要用手机号码查询需要怎么做才能寻找到表呢? 解决方案 数据库接触不多,有个疑问: 手机号码查询,找到表的意思是:需要给号码和表做个matching吗? 解决方案二: 分表有做映射吗?手机号码会不会重复?

Hibernate单向1-1含连接表映射实例详解

Hibernate单向1-1映射范例 其实 Many-to-one 和 one-to-one 非常相似,只需要在 <many-to-one> 的尖括号中添加 unique="true"即可 1.hibernate.cfg.xml  代码如下 复制代码 <!DOCTYPE hibernate-configuration PUBLIC         "-//Hibernate/Hibernate Configuration DTD 3.0//EN"

删除-SSH继集成开发中,hibernate基于连接表多对多关系问题

问题描述 SSH继集成开发中,hibernate基于连接表多对多关系问题 在连续插入2组数据时,第二组数据会将的第一组数据删除在插入第二组数据,这导致第一组数据丢失,我觉的应该是缓存的问题,怎么解决? 解决方案 插第二组数据时,要将Admin_User类去持久化

select-两表有外键关系,但没有外键约束,根据A 表ID 查找B 表

问题描述 两表有外键关系,但没有外键约束,根据A 表ID 查找B 表 Select s.ID as SID,s.NAME as SNAME,d.ID as DID,d.NAME as DNAME,d.SEQ as DSEQ,d.SYSDATE as DSYSDATE,d.ISACTIVES as DISACTIVES From TSPC as s,TSPCDETAIL as d where s.ID=d.SPECID and SID=#{SID},根据id 查找 TSPCDETAIL 可以这样写

hibernate 如何进行连接表(中间表)查询与更新

问题描述 小弟不才,特来请教!现有三张表,userroleuser_role(中间表)+---------+-------------+----------+--------+----------+|user_id|description|password|status|username|+---------+-------------+----------+--------+----------+|1||admin|1|admin||2||user|1|user||3||user|1|lml|

关于‘连接表’无法保存的问题

问题描述 <classname="User"table="user"><idname="userID"column="user_id"><generatorclass="native"/></id><propertyname="userName"column="user_name"type="string