none
DataGridView RRS feed

  • 質問

  • 初めての質問になりますので説明不足もあるかとは思いますが
    何卒宜しくお願い致します。

    現在、VineLinuxにMySQLをいれ、クライアント側のPCから
    MYSQLのデータベースの情報を抽出、表示できるWindowsアプリケーションを
    開発しようとしています。
    MySQLのバージョンは5.0.26です。
    アプリについてはVisualStudio2005のVisualC#で開発しています。

    DataGridViewをフォームに配置しデータベースにある社員テーブルの情報を
    表示しようとしたのですが、スキーマ情報が取得できないと怒られてしまいました。
    以下、手順です。

    1.DataGridViewのスマートガイドからデータソースの選択でプロジェクトデータソースの
    追加を選択。
    2.データソース構成ウィザードで「データベース」を選択。
    あっ、ODBCについては下記URLからMySQL3.51のバージョンをシステムDSNにいれました。
    http://dev.mysql.com/downloads/connector/odbc/3.51.html
    3.新しい接続で接続の追加画面が出てきてデータソースにMicrosoft ODBC データ ソース (ODBC)を選択、データソースの指定でシステムDSNに登録したMySQL ODBC3.51を選択。
    ログイン情報でユーザー名とパスワードを正しく入れました。
    4.接続の確認を押すと「テスト接続に成功しました。」と出る。
    5.大丈夫そうなので「次へ」で進みデータベースの社員テーブルの部分にチェックをつけ
    データセット名をEDataSetとし完了ボタンを押したところ・・・
    6.「テーブルまたはビュー `ShinamonSQL`..`syain` のスキーマ情報を取得できませんでした。」
    と言われてしまいました。
    7.そのままOKボタンを押したところサーバーエクスプローラーではデータベースの
    テーブルがすべて見えていますしテーブルデータの表示を選択したところ社員テーブルの
    中身も表示されます。
    8.しかし、デバッグしてDataGridViewを配置したフォームを開くと
    [OdbcExceptionはハンドルできませんでした]
    「ERROR [23000] [MySQL][ODBC 3.51 Driver][mysqld-5.0.27-standard]You have an error
    in your SQL syntax; check the manual that corresponds to your MySQL server version
    for the right syntax to use near '.`Employee`' at line 1」
    と出てきます。

    そこでMySQLが5.0なのにODBCで3.51を入れたのが問題なのかと思い
    MySQLの3.51のODBCを削除し3.のURLで5.0のBeta版を入れてみました。
    すると、DataGridViewのデーターソース構成ウィザードでデータソースを選択後に
    「接続の確認」をクリックすると「ERROR[08001][MySQL][MyODBC 5.00.10]2003 Can't connect to
    MySQL server on 'localhost'(10061)
    とエラーメッセージが出てきました。
    とりあえず「次へ」で先へ進んでテーブルで社員テーブルにチェックをつけると
    6.と同じメッセージが出てきました。
    そこで「完了」ボタンを押してみたら再度MySQLのODBC設定画面がでてきて
    サーバー名等を再度入力。

    設定後OKボタンを押すとスキーマを取得できませんでした。と怒られ先に進めなくなってしまい
    戻るで戻っても駄目だったのでVisualStudioを強制終了しました(涙)

    すいません、なにが原因なのか困っています。
    どなたか回答お願い致します。

    2006年12月18日 1:10