SQL Server データベースで数千人のブール値 (「可用性」を表す) を効率的に格納してアクセスしようとしています。彼らは私に彼らが利用できないときの日付を教えてくれるので、私は彼らを代表し、スケジュールに対してプログラムで処理する必要があります.
言い換えれば、私は各人の 1 年の空き状況を毎日追跡できる必要があります (単純な Yes/No または True/False で十分です)。
私は Bitvector32 構造に出会い、それをうまく機能させました (背景についてはリンクを参照してください: How do I convert a SQL Server 'Int' field to 'BitVector32' within my C# program? )。それを作成し、int として DB に書き込み、C# プログラムに復元することができます。
問題は、この構造内に含まれるブール値に SQL 経由でアクセスできるようにしたいのですが、アクセスできないことです。
私の次のオプションは、その時点で必要な指定された日付に対してのみブール値の配列を作成し (24 回のオカレンスが機能します)、これを SQL サーバー テーブルに格納して、各人の Y/N を含めることです。ただし、これは初めてなので、SQL Server は配列を処理しないと聞いています。唯一のオプションは、SQL Server で 24 の一意の名前の「ビット」フィールドを定義し、それらを C# ブール配列からロードすることです。これは醜いようです。
誰かがより良い解決策を見ていますか、それとも私は近いですか?