2012-03-29 40 views
0

我正在与MySQL数据库Java GUI的项目。Netbeans 7.0,输入值与复合主键

这是我的SQL脚本 CREATE TABLE takenservice( ResvID INT UNSIGNED NOT NULL, ServID INT UNSIGNED DEFAULT 0 NOT NULL, ServUsedDate DATETIME NOT NULL ,PayStat VARCHAR(6)DEFAULT未付NOT NULL, ServRecBy VARCHAR (7)NOT NULL, PayRecBy VARCHAR(7), Quantity SMALLINT DEFAULT 1 NOT NULL, PRIMARY KEY(ResvIDServIDServUsedDate)); 改变表格服务 添加约束外键(ResvId)引用保留(ResvID); 改变表格服务 添加约束外键(ResvId)引用保留(ResvID);


我创建的实体类使用Netbeans 7.0,创造了4类:

服务 预订 ServiceTaken ServiceTakenPK

,但我不能输入值表,它给了我一个错误,我试图在主键中输入空值。

我发现实际在Netbeans论坛的错误是http://netbeans.org/bugzilla/show_bug.cgi?id=105084

,因此我已经在插入表中的一个新条目添加下面的方法到类ServiceTaken

public int getResvID() { 
    return takenservicePK.resvID; 
} 

public int getServID() { 
    return takenservicePK.servID; 
} 

public Date getServUsedDate() { 
    return takenservicePK.servUsedDate; 

我得到这个错误:

错误代码:1048 电话:INSERT INTO takenservice (PayRecBy,ServRecBy,Quantity,PayStat,ServUsedDate,ResvID,ServID)VALUES(?,?,?,?,?,?,?) bind => [ddd,ddd,0,ddd,null,null,null]


我能做些什么来解决这个问题?请帮我这个我用完了时间=/

回答

0

请尝试使用 System.out.println(yourqueryexecution stmt); 然后检查语句是否可以在DB中执行; 查找是否将所有值发送到数据库; 希望这个工程..

+0

该语句可以在db中执行。关键是不发送主键的值。 – Sasha 2012-03-29 13:00:20