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