VS2019をMySQLデータベースに接続するプロセスと一般的な問題の概要

VS2019をMySQLデータベースに接続するプロセスと一般的な問題の概要

今日の午後からVS2019をMySQLで使えるのではないかと思い、いろいろ環境構築を始めました。プロセス中に多くのエラーが発生し、以下に示すように午後 9 時頃に構成が成功しました。

次に、具体的な手順について説明します。

(1)まず、VS2019とMySQLソフトウェアを準備します。これらはそれぞれの公式サイトから入手できるので、ここでは繰り返しません。

(2)MySQLのインストールディレクトリを探し、図に示すようにこれらの2つのフォルダを見つけます。

(3)新規プロジェクトを作成したら、以下の構成環境を準備するためにmain.cppファイルを作成します。

(4) プロジェクトプロパティを開き、VC++ ディレクトリをクリックし、インクルードディレクトリで、次の図に示すように、MySQL インストールディレクトリのインクルードファイルパスを追加します。

(5)プロパティページでC/C++を開き、全般を選択し、上記と同じ手順に従い、MySQLファイル内のインクルードファイルパスを追加のインクルードディレクトリに追加します。

ここに画像の説明を挿入

(6)プロパティページで、「リンカーオプション」をクリックし、「全般」をクリックして、MySQLインストールディレクトリの下のlibパスを追加ライブラリディレクトリにコピーします。

ここに画像の説明を挿入

(7) プロパティページのリンカーで続行し、入力オプションをクリックして libmysql.lib ファイルを追加します。libmysql.lib という名前をコピーするだけで、パスを追加する必要がないことに注意してください。同様に、このファイルも mydql インストール フォルダーの lib ディレクトリにあります。

ここに画像の説明を挿入

(8)プロパティページの上部にあるプラットフォームを確認し、x64を選択します。x32ではエラーが発生する可能性があります。

ここに画像の説明を挿入

(9) MySQLインストールディレクトリのbin\libmysql.dllをc:\windows\system32にコピーします。

ここに画像の説明を挿入

ここに画像の説明を挿入

このインストールが完了したら、テスト コードを記述できます。テストコードは次のとおりです。

#include <stdio.h>
#include <iostream>
#include "my_global.h"
#include "mysql.h"
名前空間 std を使用します。
int メイン()
{
	cout << "hello world!" << endl;
	MYSQLmysql;
	MYSQL_RES* 解像度;
	MYSQL_ROW 行;
	mysql_init(&mysql);
	mysql_options(&mysql, MYSQL_SET_CHARSET_NAME, "gbk");
	//注: パラメータは正確である必要があります。
	// 2 番目のパラメータはホスト アドレス localhost、3 番目のパラメータはユーザー名です // 4 番目のパラメータはユーザー パスワード、5 番目のパラメータは接続されたデータベースです // 6 番目のパラメータは MySQL ポート番号 3306 です
	if (mysql_real_connect(&mysql, "localhost", "root", "123456",
		"myemployees", 3306, NULL, 0) == NULL) 
	{
		cout << (mysql_error(&mysql));
	}
	mysql_query(&mysql, "myemployees.employees から * を選択");
	res = mysql_store_result(&mysql);
	// データを表示します // ROW に値を割り当て、ROW が空かどうかを判断し、空でない場合はデータを出力します。
	(行 = mysql_fetch_row(res)) の間
	{
		printf("%s ", row[0]); //IDを印刷
		printf("%s ", row[1]); //IDを印刷
		cout << 終了;
	}
	//結果セットを解放します。mysql_free_result(res);
	//データベースを閉じます mysql_close(&mysql);
	//停止してgetchar()を待機します。
	システム("一時停止");
	0を返します。
}

操作中に、次の図のようなエラーが発生した場合は、構成環境変数を確認する必要があります。

1. プロジェクトを右クリックし、VC++ ディレクトリ構成を確認します。

2. リンカーの入力オプションを確認する

(3)プロジェクトの.cppフォルダに「libmysql.dllとlibmysql.lib」ファイルを配置します。

これら 3 つの手順で、ほとんどの特定の問題をチェックできます。

MySQL パラメータに注意してください。間違えると、次のメッセージが表示される場合があります: ユーザー 'ODBC'@'localhost' のアクセスが拒否されました (パスワード使用: NO)。mysql bin ディレクトリに移動して、次のコマンドを入力します:

mysql -u root -p で、データベースのユーザー名とパスワードが正しいかどうかを確認します。正しい入力は以下のとおりです。

VS2019 を MySQL データベースに接続する際によくある問題をまとめたこの記事はこれで終わりです。VS2019 を MySQL データベースに接続することに関するより関連性の高いコンテンツについては、123WORDPRESS.COM で以前の記事を検索するか、以下の関連記事を引き続き参照してください。皆様が今後も 123WORDPRESS.COM を応援してくれることを願っています。

以下もご興味があるかもしれません:
  • VS2019 が mysql8.0 データベースに接続する方法 (画像とテキスト付き)

<<:  HTMLページの読み込み速度を上げる方法

>>:  レスポンシブ Web をデザインするにはどうすればいいですか?レスポンシブウェブデザインのメリットとデメリット

推薦する

Flexレイアウトを使用してヘッドの固定コンテンツ領域のスクロールを実現する方法

ページ ヘッダーの固定レイアウトは、以前は position:fixed を使用して実装されていまし...

MySQL の指定文字によるマージと分割の例のチュートリアル

序文指定した文字による結合または分割は一般的なシナリオです。MySQL では結合の記述は比較的簡単で...

MySQL と Golan 間の従来の分散トランザクションのための 7 つのソリューション

目次1. 基本理論1.1 取引1.2 分散トランザクション2. 分散トランザクションソリューション2...

CSS クロスフェード() を使用して半透明の背景画像効果を実現するサンプルコード

1. 要件の説明特定の要素については、背景background-imageを半透明にしたいが、テキス...

横スクロールウェブサイトデザインの概要

水平スクロールはあらゆる状況に適しているわけではありませんが、適切に行えば、Web サイトを他のサイ...

JavaScript ツールチェーンの不完全なガイド

目次概要静的型チェックコードスタイルチェック(Linter)パッケージマネージャーモジュールローダー...

VueとElementUIを組み合わせたスキン変更ソリューション

目次前面に書かれた解決策 1: グローバル スタイル オーバーライドを使用する (フロントエンドに共...

Struts2 ジャンプ後に CSS と JS が無効になる問題の解決策のアイデアと実装手順

struts2 アクションの実行後にジャンプした jsp が表示されると、css が機能しません。問...

vue-element-admin プロジェクトのインポートとエクスポートの実装

vue-element-admin インポートコンポーネントのカプセル化テンプレートとスタイルまず、...

Docker で onlyoffice をインストールして展開する詳細なプロセス

0. システム要件CPU I5-10400F以上メモリ 16 GB、32 GBのメモリが最適ハードド...

ウェブフロントエンド開発の細部

1 選択タグは閉じられている必要があります <select></select>...

mysqlは複数の主キーを設定する操作を実装します

ユーザーテーブル、ID番号は一意である必要があります、携帯電話番号、電子メールアドレスは一意である必...

MySQL での外部キーの作成、制約、削除

序文MySQL バージョン 3.23.44 以降では、InnoDB エンジン タイプのテーブルは外部...

Linux (Ubuntu) での MySQL 5.6.28 のインストールと設定のチュートリアル

mysql5.6.28のインストールと設定方法1. 基本的なシステム情報を確認し、yumでインストー...

MySQL マスター/スレーブ ステータスを監視するシェル スクリプト

Linuxでシェルスクリプトを共有して、MySQLのマスタースレーブ状態を監視し、エンタープライズW...