当我创建这样的表时:
private int eyeIdx = 0;
public void actionPerformed(ActionEvent e) {
if (checkBox.Eyes.isSelected()) {
label.setIcon(eyesImages[eyeIdx]);
eyeIdx++;
if (eyeIdx >= eyesImages.length) {
eyeIdx = 0;
}
}
...
}
生成错误报告 -
CREATE TABLE "Movie_list" (
"Movie_id" NUMBER(8) NOT NULL,
"Company" VARCHAR2(30) NOT NULL,
"Rating" DECIMAL(5,1) NOT NULL,
"Storyline" VARCHAR2(255) NOT NULL,
"Award_id" VARCHAR2(255) NOT NULL,
"Cast_and_Crew_id" VARCHAR2(255) NOT NULL,
CONSTRAINT Movie_pk PRIMARY KEY (Movie_id),
);
我没有看到任何问题,请帮忙。
答案 0 :(得分:1)
主要问题在于您的主键规范,即
CONSTRAINT Movie_pk PRIMARY KEY (Movie_id),
但是,在表格定义中,您引用了该字段的名称,即
"Movie_id" NUMBER(8) NOT NULL,
由于引用了该字段的名称(实际上是表中的每个字段以及表本身的名称),因此数据库将名称存储为指定的大小写混合的名称,并且因为Oracle会转换所有< UPPER_CASE的强>未加引号标识符表示您每次都要参考此表及其字段,您必须引用它们。所以你的约束应该是
CONSTRAINT Movie_pk PRIMARY KEY ("Movie_id")
我的建议是你免除引用的&#34; Mixed_case&#34;名。删除引号,Oracle将在内部将名称存储在UPPER_CASE中。如果你愿意,你仍然可以使用Mixed_Case 来引用它们,但是你不会得到##; Quote_Them_Every_Time_You_Use_Them&#34 ;,它会变得非常旧并且读取非常糟糕。我建议你将表格定义改为
CREATE TABLE Movie_list (
Movie_id NUMBER(8) NOT NULL,
Company VARCHAR2(30) NOT NULL,
Rating DECIMAL(5,1) NOT NULL,
Storyline VARCHAR2(255) NOT NULL,
Award_id VARCHAR2(255) NOT NULL,
Cast_and_Crew_id VARCHAR2(255) NOT NULL,
CONSTRAINT Movie_pk PRIMARY KEY (Movie_id)
);
祝你好运。
答案 1 :(得分:0)
错误: