2 つの非常に単純なテーブルがあり、一方が他方を参照しています。
tblBook:
_id integer primary key AUTOINCREMENT
name text
publisher text
tblReader:
_id integer primary key AUTOINCREMENT
name text
grade integer
bookID integer references _id(tblBook)
データベースを実装しましたが、正常に動作します。ただし、私のバージョンの SQLite は外部キー制約を完全にはサポートしておらず、1 人以上のリーダー (同じ本を持っている多くのリーダーが存在する可能性があります) を持つブックを削除できます。私がやりたいのは、ユーザーが本を削除したいときに、すべての読者も削除されるか、本が割り当てられずにそのままになることをユーザーに促すことだけです。ただし、その参照を取得するためにクエリを作成する方法がわかりません。すべての読者にクエリを実行し、その bookID を配列に入れ、すべての本をクエリし、それらの ID を読者と比較することは効率的ではないように思われます。それを回避する方法はありますか?