私は自分の会社で作業しているデバイスで発生するトランザクションを追跡するリレーショナルデータベースの開発に取り組んでいます。デバイスで発生する可能性のあるトランザクションにはさまざまなタイプがあるため、メインレコードテーブルの1つに「trans_type」フィールドがあります。私のグループは、このフィールドの型を整数にし、列挙型として扱うことにしました。私の直感では、このフィールドを文字列にしてデータベースのデータをより読みやすく使いやすくすることをお勧めします。私の同僚は、これが価値以上のトラブルを引き起こすのではないかと心配しているようです。文字列の比較はコストがかかりすぎるため、タイプミスの可能性はあまりにも大きな障壁です。
したがって、あなたの意見では、本質的に列挙値であるリレーショナルデータベースのフィールドを扱うとき、このフィールドを整数または文字列にする方が設計上の判断が優れていますか?または、私が見落とした他の選択肢はありますか?
注:明示的な列挙型は、使用しているデータベースではサポートされていません。そして、このデータベースとのインターフェースとなる開発中のソフトウェアはC ++で書かれています。