私は3つのテーブルを持っています
結果: TestIDTestCode値
テスト: TestID TestType SysCodeID
SystemCodesSysCodeIDParentSysCodeID 説明
私が持っている質問は、ユーザーが結果テーブルにデータを入力しているときです。
testCodeのタイプがSystemListの場合、行がフォーカスを取得したときのフォーマットコードは、値フィールドをドロップダウンコンボボックスに変更します。ドロップダウンには、test.SysCodeIDのparentsyscodeIDを持つすべてのシステムコードのリストがあります。ユーザーがリストで値を選択すると、値フィールドに入力される数値に変換されます。
Results.Valueフィールドのデータ型は整数です。報告するときに計算や並べ替えが数値の方が簡単なので、文字列ではなく整数にしました。文字列フィールドに整数/小数の値を入力する場合は問題があります。同様に、システムが設計されていたとき、彼らはそこに数字だけが欲しかったのです。
ユーザーは、リストの数値/値だけでなく、値フィールドにも文字列を入力したいと考えています。そのための最善の方法は何でしょうか。
フィールドを文字列に変換してから、文字列と整数の両方を同じフィールドに格納するのは悪い習慣ですか?これに関連するさまざまな問題がありますが、本当に大きな問題があるかどうかはわかりません。
文字列データ型のテーブルに別の列を追加する必要があります。テストが文字列型の場合は、ユーザーが入力したデータを別のフィールドに入力します。
別のオプションは、別のテーブルと1-1の関係を作成し、ユーザーが値フィールドに文字列を入力すると、数値のキーを使用して新しいテーブルに追加することです。
面白いアイデアはありますか?