質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

Visual Studio

Microsoft Visual StudioはMicrosoftによる統合開発環境(IDE)です。多種多様なプログラミング言語に対応しています。

Q&A

1回答

3792閲覧

C#でデータベースアプリケーションの開発を行っています。

mh5hide

総合スコア6

C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

Visual Studio

Microsoft Visual StudioはMicrosoftによる統合開発環境(IDE)です。多種多様なプログラミング言語に対応しています。

0グッド

0クリップ

投稿2017/12/16 11:37

MySQLの接続は終わりました。
あらかじめテーブル作成は済ませています。
テーブルにあるカラムIDに格納されているデータを取得して、
フォームアプリケーション内でIDのテキストボックスに入力された文字と比較して、
合っていれば別フォームに移れるというモノを作りたいです。

イメージ説明

色々なサイトを参考にしているとDataTableを使ってデータベースのデータを取得できる事が分かりました。
それを参考にしてloginボタンが押されると以下の処理を行うようにしました。

// コネクション作成
MySqlConnection cn = new MySqlConnection(
"Data Source=localhost;Database=nyutaisitsu_login;User ID=root;password=takagi");
MySqlDataAdapter da = new MySqlDataAdapter(
"SELECT ID FROM idpass", cn);
DataTable dt = new DataTable();
// 検索
da.Fill(dt);
string str = dt;

//TextBox1のデータをidに格納 string id = textBox1.Text; //textBoxの値とデータベースのカラムIDを比較 if (id == dt) { }

入力されたtextBoxの値とデータベースのデータを比較するというもです。

ここで
「'System.Data.DataTable'を'string'に暗黙的に変換できません」とれらー表示が出ました。

そこで質問です。
データベースからデータを取得する方法はこれで正しいでしょうか?
また取得したデータを変数に格納する方法はないでしょうか?

宜しくお願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2017/12/16 12:38

なんで string str = dt; なことができると思うんですか?
guest

回答1

0

まぁイヂワルしても仕方ないので答えてあげましょう。
string型strDataTable型dtを代入しようとしてるから**「'System.Data.DataTable'を'string'に暗黙的に変換できません」**と出るのです。
ネットの海を参考にしてコピペする前にまずC#の本を一冊読破することをおすすめします。
それから今後のためにアドバイスですがMarkdown記法というのを覚えましょう。
添付コードを「```」で囲むことで整形されたソースコードとなり、回答者フレンドリーになります。

最後に、やりたいことを実現するなら以下の通りかな。動作確認してないけど。

C#

1string str = dt.Rows[0][0]; 2string id = textBox1.Text; 3if (id == str) { 4}

投稿2017/12/18 01:46

ShikaTech

総合スコア468

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問