我有一张这样的表,
创建表格ruff(id varchar(25)主键,名称varchar(30));
我需要从jdbc帮助中自动插入ID的主键吗?
答案 0 :(得分:0)
在Oracle中定义一个序列,在yur insert语句中,在values子句下用sequence.nextval填充你的ID 例如- 插入ruff(id,name) 值(your_sequence.nextval, '姓名')
答案 1 :(得分:0)
JDBC不会自动生成ID。它通常是执行此操作的数据库,但即使数据库也不会在不使用触发器的情况下为VARCHAR(25)
生成一个数据库。
要检索数据库生成的密钥,您可以使用con.prepareStatement(sql, Statement.RETURN_GENERATED_KEYS);
,尽管这可能不适用于触发器生成的值。
答案 2 :(得分:0)
您可以在Oracle数据库中定义Sequence,也可以为Sequences指定自定义生成方法。当您将值插入表中时,您可以使用先前生成的Sequence来插入主键,而不是提供用户的值。