VS2019 が mysql8.0 データベースに接続する方法 (画像とテキスト付き)

VS2019 が mysql8.0 データベースに接続する方法 (画像とテキスト付き)

1. まず、VS2019とMySQLデータベースを準備します。どちらも公式サイトからダウンロードできます。接続プロセスを直接説明します。

2. 接続:

ステップ 1: MySQL インストール ディレクトリを開きます。ローカル インストール ディレクトリは次のとおりです (include および lib フォルダーがあるかどうかに注意してください)。

ここに画像の説明を挿入

ステップ 2: VS2019 を開き、新しい空のプロジェクトを作成します。

ステップ 3: プロジェクト名を右クリックしてプロパティ ページを開きます。

ここに画像の説明を挿入

ステップ4: 開くVC++ ディレクトリの include ディレクトリで、mysql インストール ファイルの include ファイルのパスをここに追加します。

ここに画像の説明を挿入

ステップ 5: プロパティ ページで、C/C++ を開き、[全般] を選択して、前のステップと同様に、追加の include ディレクトリの mysql ファイルに include ファイル パスを追加します。

ここに画像の説明を挿入

ステップ 6: プロパティ ページで、リンカー オプションをクリックし、[全般] をクリックして、mysql インストール フォルダー内の lib ファイル パスを追加のライブラリ ディレクトリに追加します。

ここに画像の説明を挿入

ステップ7: プロパティページのリンカーで、2番目の入力をクリックして変更します。 libmysql.libファイルを追加します。パスを追加せずに依存関係名 libmysql.lib を追加します。このファイルは、MySQL インストール フォルダーの lib ディレクトリにもあります。

ここに画像の説明を挿入
ここに画像の説明を挿入

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

ここに画像の説明を挿入

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

ここに画像の説明を挿入
ここに画像の説明を挿入

この手順を実行しないと、プログラムの実行時にエラーが発生する可能性があります。 libmysql.dll が見つからないというエラー。

3. テストコードを記述します。

まず、MySQL データベースを開きます。テストにはローカル データベース テーブルを使用します。

ここに画像の説明を挿入

テストコード:

#include <stdio.h>
#include "mysql.h"
#include<iostream>
名前空間 std を使用します。
void main()
{
	MYSQL mysql; //データベース構造 MYSQL_RES* res; //結果セット構造 MYSQL_ROW row; //char** 2次元配列、レコードを1つずつ格納 //データベースを初期化 mysql_init(&mysql);
	//エンコーディングを設定する mysql_options(&mysql, MYSQL_SET_CHARSET_NAME, "gbk");
	// データベースに接続します // 接続に失敗した場合は、接続失敗に関する情報が表示されるので、それに応じて変更を加えることができます。
	// mysql_real_connect パラメータ: 2. ローカル アドレス 3. mysql ユーザー名 4. mysql パスワード 5. データベース名 6. ポート番号 if (mysql_real_connect(&mysql, "localhost", "root", "root", "luckysheep", 3306, NULL, 0) == NULL) {
		cout << (mysql_error(&mysql));
	}
	// データをクエリする mysql_query(&mysql, "SELECT * from department");
	//結果セットを取得します。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()を待機します。
}

必ずmysqlのユーザー名とパスワードを変更してください。
出力:

ここに画像の説明を挿入

記録: 実は、プロジェクトは vs2010 で実行されており、データ テストなどのためにデータベースに接続したかったので、今日は vs2010 を mysql に接続したいと考えていました。しかし、丸一日かけてインストールし、エラーを一つずつ解決しても、結局は失敗し、#include <stdbool.h> でエラーが表示されました。調べてみると、C 言語はブール型の組み込みをサポートしていないことがわかりました。stdbool.h ヘッダー ファイルを参照することで、ブール型をサポートすることができます。 しかし、VS2010 は C99 を完全にサポートしていません...stdbool.h は C99 です...時間がないので、後で時間があるときに確認します。 。 。 。 。

ここに画像の説明を挿入

要約する

VS2019 を MySQL 8.0 データベースに接続する方法については、これで終わりです。VS2019 を MySQL 8.0 データベースに接続する方法についての関連コンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後も 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • VS2019をMySQLデータベースに接続するプロセスと一般的な問題の概要

<<:  vue+element で動的スキニングを実装するためのサンプルコード

>>:  VMware マルチノード環境を構成する方法

推薦する

JavaScript データ型の詳細な説明

目次1. リテラル1.1 数値リテラル1.2 浮動小数点リテラル1.3 特別な値1.4 文字列リテラ...

MySQL の従来のソート、カスタム ソート、中国語のピンイン文字によるソート

MySQL の通常のソート、カスタム ソート、中国語のピンイン文字によるソート。実際の SQL を記...

nginx で gzip 圧縮を実装してウェブサイトの速度を向上させる方法

目次gzip 圧縮を使用する理由は何ですか? nginxはgzipを実装するgzip処理nginx ...

入力[type=file]の起動が遅くて動かなくなる問題を素早く解決します

入力タグタイプがファイルで、タグ内にaccpet="image/*"属性が設定さ...

MySQL のデッドロックとデータベースおよびテーブル シャーディングの問題の詳細な説明

MySQL 運用上の問題点を記録します。ビジネスシナリオと問題の説明外部インターフェースをリクエスト...

MySQLデータベースのロック機構の分析

同時アクセスの場合、非反復読み取りやその他の読み取り現象が発生する可能性があります。高い同時実行性に...

MySQLの認証コマンドgrantの使い方

この記事の例は MySQL 5.0 以降で実行されます。ユーザー権限を付与するための MySQL コ...

Dockerコンテナの原理の分析

目次01 コンテナの本質とは何か? 02 Cgroupテクノロジーと名前空間テクノロジーの概要03 ...

HTML ウェブページ作成のための 8 つの強力なテクニック

<br />作業を簡単に完了できる Web ページ作成ツールは数多くありますが、HTML...

src 属性と href 属性の違い

src と href には違いがあり、混同される可能性があります。 src は現在の要素を置き換える...

Linux (Centos7) での redis5 クラスターの構築と使用方法の詳細な説明

目次1. 簡単な説明2. クラスターを作成する手順2.1. ディレクトリを作成する2.2. ソースコ...

JavaScript 事前分析、オブジェクトの詳細

目次1. 事前分析1. 変数の事前解析と関数の事前解析1. 変数の事前解析2. 機能事前分析2. 事...

WeChatアプレットはシンプルなサイコロゲームを実装します

この記事では、サイコロゲームを実装するためのWeChatアプレットの具体的なコードを参考までに共有し...

JavaScript 関数はランダムな色の検証コードをカプセル化します (完全なコード)

数字、文字、またはランダムな色の数字と文字の混合で構成される n 桁の確認コード。以下に完全なコード...

React における ref の一般的な使用法の概要

目次Refsとは何か1. 文字列型参照2. コールバック参照React.createRef() 4....