見つかりませんでした。データベースファイルを相対指定にしていて、openfiledialogでローカルのファイルを選択後に、データベースのファイルの指定が絶対指定に変わってしまった。その結果、当然ながらデータベース接続エラーが発生するようになった。fileopendialogを使うと別の部分で相対指定しているファイルパスを変更してしまうのだろうか。データベースファイルのパスは絶対パスに変更することでエラーは出なくなった。見つかりませんでした。コメントテーブルのフィールドのデータ型を調べるプログラムで使っているテーブルのあるフィールドが設計ミスで使われていないことに気づき、せっかくだからそのフィールドのデータ型を変えて別の用途に使ってみようというトリッキーなことをやろうとしたけれど、やっぱりやめることにした。いうのは大抵上手くはいかず、別のもっと良い方法がある。途中まで調べたので記念に残しておく。やろうとしたことは、テーブル内にある使ってないフィールドのデータ型=char型をlongchar型に変えてみようとした。プログラムの処理としては、フィールドのデータ型がchar型ならlongchar型に変えるsqlを走らせる、というもの。これで対象のフィールドのデータ型が手に入る。実際に取得してみたらdbtype_wvarcharという値が取得できた。コントロールの設定で嵌ってしまったので備忘。reportviwerコントロールをフォーム上に配置したらレポートの設定をするためにrdlcという拡張子がついたレポート用のファイルを作成する。その作成が終わったらreportviewerのレポートとして設定しする。そのとき、データソースの設定で項目が複数あるとどうもデータのグラフへのバインドがうまくいかない。データソースには存在するデータのみを設定しなければグラフは描画されない。グラフへデータソースとして設定する場合に、そのデータソースのテーブルにnullが存在すると描画されない。null対策としてはIIF(isnull(field1),0,field1)というようなことで応急措置。テーブルのデータをグラフ表示する、ただそれだけの単純なことなのにreportviewerの扱いを覚えるのに随分と時間がかかってしまった。それにしても、あらかじめdatasetをプロジェクトに作成して、そのdataset内のデータをグラフのデータフィールドとして設定しないとコンパイルができないという仕様はどうにかならんものだろうか・・・。入力文字列の形式が正しくありません。格納できませんでした。入力文字列の形式が正しくありません。datagridviewにデータをバインドした時のこと。入力文字列の形式が正しくありません。格納できませんでした。入力文字列の形式が正しくありません。(省略)というエラーが出て挿入することができなかった。エラーの意味はわかるけれど、わからないのはいつの間にか列の型がdoubleという風に指定されていたということ。これは一体いつの間に決まってしまったのだろう。そもそもデータグリッドの列に型が存在することをこの時に始めて知った。文字列とか数値とか画像とかいろいろ入れることができるのでobject型のようなものが設定されているかと思ったらもっと厳密に文字列ならstring型、数値ならdouble型という風にできている模様。この今回のエラーのdouble型じゃないから数値を格納できないという、doubleという型が勝手に決められてしまったことが一番わからない。私はdouble型なんてどこにも使ってないのだから。データグリッドにバインドした時に列の値が数値ならdouble型と判定されてしまうのか、それともdatasetを作成した時にそれは判定されてしまうのか、それとも何か他の知らないルールがあるのか。その後こんなエラーが発生した。値を特定できませんでした。値を設定していなかった場合が考えられます。入力文字列の形式が正しくありません。格納できませんでした。入力文字列の形式が正しくありません。2005に標準でreportviwerというコンポーネントがあることに気づいた。reportというぐらいだから印刷用のコンポーネントと思いきや、グラフを表示することができるようになっている。vb6から.netへと変更した後でMSChartが無くなったらその代わりの物が無いとおかしいとは思っていたけれど、reportviewerという名前に変更になっていたとは今まで気づかなかった。このコンポーネントを使うことにしてみたんだけれど、色々と不便なところが多い。reportviewerのレポートソースにrdlcファイルを設定するのだけれど、そのrdlcファイルというものが堅物でデータソースをあらかじめ設定しておかないといけない仕様となっている。後でコードでデータセットを作成してイベントでセットするつもりであっても。reportviewerからrdlc内のグラフへアクセスすることができない(今のところ私の知る限りでは)。なんかありそうなのだけれど、グラフのプロパティにアクセスをすることができない。frameworkのコンポーネントに含まれては無い模様。利用するには別途reportviewerのdllが必要になる。なんというかこれっていうグラフコンポーネントはないものだろうか・・・。