0

JDBC、Java、および Oracle を使用してデータベース アプリケーションを開発しています。2 つのクエリでエラーが発生しています。

1) 行 1 のエラー: 無効な文字 ここで、最初の行でエラーが発生しています。パターン sid が B のようになっているかどうかを確認したい.....


create table students (sid char(4) primary key check (sid LIKE ‘B%’),
firstname varchar2(15) not null, lastname varchar2(15) not null, status varchar2(10) 
check (status in (‘freshman’, ‘sophomore’, ‘junior’, ‘senior’, ‘graduate’)), 
gpa number(3,2) check (gpa between 0 and 4.0), email varchar2(20) unique);

2) 行 2 のエラー: 列チェック制約は他の列を参照できません。私はlgradeをチェックしており、チェック後に同じことを書いています。(エラーでの参照が他のテーブルへの参照を意味する場合、lgrade 列は他のテーブルを参照していません)


create table enrollments (sid char(4) references students, classid char(5) references classes, 
lgrade char check (lgrade in (‘A’, ‘B’, ‘C’, ‘D’, ‘F’, ‘I’, null)), primary key (sid, classid));

私は正しい方法で考えていますか?、クエリで % が許可されていない可能性はありますか? (これは正しくないことがわかりました)?

4

1 に答える 1