2010-07-22 59 views

回答

6

发现设置在NetBeans 8.0.1这里自动递增的方式如下on StackoOverflow 截图:

see screenshot here

+0

这是不可能的发布时间问题的版本。现在它是如此接受的答案。谢谢。 – umpirsky 2015-11-17 16:00:43

+0

它为我工作,谢谢 – 2016-06-25 08:18:38

11

如果你看看这个网址:http://java.sun.com/developer/technicalArticles/J2SE/Desktop/javadb/

模式的这一部分可能是你在找什么。

ID   INTEGER NOT NULL 
       PRIMARY KEY GENERATED ALWAYS AS IDENTITY 
       (START WITH 1, INCREMENT BY 1), 
+1

谢谢。是的,但我不需要IDE就可以做到这一点。如果我使用IDE并且它是gui工具,我希望能够通过界面来实现。如果我最终从普通SQL创建表,那么为什么要使用netbeans?我还是初学者的德比语法:P – umpirsky 2010-07-26 13:12:53

+0

但是,我只是表明您可以为JavaDB创建自动生成的密钥,但正如您所提到的那样,您将自己在SQL中创建模式。 – 2010-07-26 13:34:51

+0

谢谢。但我知道,我只是无法从netbeans中找到方法。将尝试与改变表... – umpirsky 2010-07-27 08:59:02

60

这可能会帮助您:

CREATE TABLE "custinf" 

( 
    "CUST_ID" INT not null primary key 
     GENERATED ALWAYS AS IDENTITY 
     (START WITH 1, INCREMENT BY 1), 
    "FNAME" VARCHAR(50),  
    "LNAME" VARCHAR(50), 
    "ADDR" VARCHAR(100), 
    "SUBURB" VARCHAR(20), 
    "PCODE" INTEGER, 
    "PHONE" INTEGER, 
    "MOB" INTEGER,  
    "EMAIL" VARCHAR(100), 
    "COMM" VARCHAR(450)  
); 

这就是我得到了我的工作......以年龄去真正了解我的该死的事情,但是这就是代码的性质:d

BTW - !有一种方法可以做到这一点的IDE接口 后藤的服务窗口, 扩大您的连接, 扩大您的项目名称, 扩大表, 个右键单击索引并选择添加索引...其余的过程本身就说明了它的真实性......

+0

为我工作,谢谢!我不知道他们为什么决定用英文写出所有的东西。我正在尝试'IDENTITY(1,1)',这是在其他地方使用的,但并不认为周围会有所有额外的垃圾。 – Lemmings19 2012-04-27 01:02:56

+1

好东西。它只适用于我,当我保持列名**大写**。 – Yster 2015-12-16 16:09:08

+0

这是不是所选的答案? :C – 2017-10-12 21:48:25

1

现在在Netbeans 7.0.1上是不可能的。用于在表格上创建列的GUI工具非常有限,并且不存在提供该功能的插件。

+0

你真的确定吗?我做了3个月前,今天我忘了我是如何做到的lolz – 2013-04-05 13:53:26

+0

您是否使用7.0.1版本?如果您确实会很有用,请回答解释您是如何做到的问题。我想这可以用更新版本的Netbeans完成。 – 2013-04-09 13:04:46

+1

他在这里: https://stackoverflow.com/questions/14316187/alter-a-table-column-with-auto-increment-by-1-in-derby 我不知道它是否德比具体虽然。 – bulltorious 2014-09-19 14:18:45

2

我无法接受的答案使用NetBeans IDE“创建表”工作GUI ,我在Netbeans 8.2上。要使其运行,请使用以下选项创建ID列,例如

enter image description here

,然后使用“新实体类从数据库”选项来生成该表的实体(I创建了一个名为PERSON简单的表与创建精确地按照上述的ID柱和NAME列这是简单varchar(255)列)。这些生成的实体将其留给用户添加自动生成的id机制。

GENERATION.AUTO似乎尝试使用Derby似乎不喜欢的序列(错误说明未能生成序列/序列不存在),因此GENERATION.SEQUENCE也不起作用,GENERATION.IDENTITY doesn' t工作(得到错误说明ID为空),这样就离开了GENERATION.TABLE。

将您的持久性单元的“表生成策略”按钮设置为“创建”。当你的jar运行(加载?)时,这将创建数据库中不存在的表,即PU为了存储ID增量而需要创建的表。在你的实体取代上述的ID字段中生成的注释与下面...

enter image description here

我还创建了一个控制器使用“基于实体类的JPA控制器类”选项,我的实体类。然后我创建了一个简单的主类,以测试ID是自动生成的,即

enter image description here

的结果是PERSON_ID_TABLE正确生成,我的PERSON表中有两个人的项与正确的,自动生成的ID。

0
  1. 在表中添加新列使用接口
  2. 写列的名称,并填写其他信息,以及
  3. 在检查现场,在不取消选中它并写上“递增1”它。

瞧!