テーブルを作成し、トリガーを設定し[1]、データを挿入するSQLスクリプトがあります。sql は、アプリケーションのビルド中にデータベースを作成するために sqlite コマンド ライン経由で使用されます。基本的に、3つのフィールドに基づいて行が一意でなければならないテーブルがあります。主キーとして使用する 3 つのフィールドに基づいて、ハッシュまたは何らかの形式の一意の ID を自動的に生成したいと考えています。私の理解では、sqliteにはハッシュ関数が組み込まれていません。before insert トリガーの 3 つのフィールドの内容に基づいて一意のキーを生成する他の方法はありますか?
[1] This isn't happening yet as I don't know how to generate a unique key
テーブルはこんな感じ。3 つのフィールド (firstName、lastName、birthYear) の主キーを使用できますが、外部キーが必要な各テーブルで 3 つすべてを使用する必要があります。3 つのフィールドが文字列であるため、次のようになると思います。より多くのスペースがあり、物事が遅くなります。
create table (
firstName VARCHAR,
lastName VARCHAR,
birthYear CHAR(4)
... more fields ...
);