エラー「制約を有効にできませんでした.....」について
- 題名: エラー「制約を有効にできませんでした.....」について
- 著者: Hiro
- 日時: 2011/10/04 16:06:22
- ID: 29138
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[1]: エラー「制約を有効にできませんでした.....」について
- 著者: 魔界の仮面弁士
- 日時: 2011/10/04 16:19:59
- ID: 29139
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[2]: エラー「制約を有効にできませんでした.....」について
- 著者: Hiro
- 日時: 2011/10/04 16:31:43
- ID: 29140
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[3]: エラー「制約を有効にできませんでした.....」について
- 著者: Hiro
- 日時: 2011/10/04 16:46:06
- ID: 29141
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[4]: エラー「制約を有効にできませんでした.....」について
- 著者: 魔界の仮面弁士
- 日時: 2011/10/04 17:59:24
- ID: 29142
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[5]: エラー「制約を有効にできませんでした.....」について
- 著者: Hiro
- 日時: 2011/10/04 21:57:45
- ID: 29144
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[6]: エラー「制約を有効にできませんでした.....」について
- 著者: Hiro
- 日時: 2011/10/05 10:18:37
- ID: 29150
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[7]: エラー「制約を有効にできませんでした.....」について
- 著者: 魔界の仮面弁士
- 日時: 2011/10/05 11:38:23
- ID: 29151
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[8]: エラー「制約を有効にできませんでした.....」について
- 著者: Hiro
- 日時: 2011/10/05 12:37:20
- ID: 29152
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[9]: エラー「制約を有効にできませんでした.....」について
- 著者: Hiro
- 日時: 2011/10/05 12:38:27
- ID: 29153
- この記事の返信元:
- この記事への返信:
- ツリーを表示
分類:[.NET]
お世話になります。
下記のエラーが出て解決策がわからないので教えてください。
「制約を有効にできませんでした。行に入力できるのは、Null 以外の値、一意な値、あるいは外部キーですが、この制約の違反が 1 つ以上の行で発生しています。」
エラーの出るコード(下記の、FillBy....でおきます)
DateTime ThisYear = new DateTime(DateTime.Now.Year, 1, 1);
DateTime EndThisYear = new DateTime(DateTime.Now.Year, 12, 31);
byoriDataDataSet1.EnforceConstraints = false;
this.bmlTableTableAdapter.FillByOrderDateStartToEnd(this.byoriDataDataSet1.BmlTable, ThisYear.ToShortDateString(), EndThisYear.ToShortDateString());
byoriDataDataSet1.EnforceConstraints = true;
上記コードは、Form_load()内のため起動時に表示されます。
実際、dataGridView には、赤マークがありポイントすると
「Column 'Bui'が MaxLength の制限を超えています」と表示されます。
で、ググってみたとこ
http://bbs.wankuma.com/index.cgi?mode=al2&namber=46580&KLOG=79
に同じような記述があり、その中の真ん中辺の「 魔界の仮面弁士 」サンの
内容を元にさらに調べました。
「イミディエイトウインドウ」で
? this.byoriDataDataSet1.BmlTable.GetErrors().Length
2
? this.byoriDataDataSet1.BmlTable.GetErrors()[2].RowError
配列インデックスの境界外です
と出ました。
さらにこの中で別のところで言っている、テーブルの変更など行ったか?
について、このテーブルも同様に変更してます。
この'Bui'については、varchar(10)からvarchar(50)に変更しました。
実際のデータは、数字文字を34文字書いてます。