当前位置:网站首页>MySQL and C language connection (vs2019 version)

MySQL and C language connection (vs2019 version)

2022-07-06 11:25:00 %xiao Q

1. Choose the appropriate Relase X64 Run the program

 Insert picture description here

2. hold MySQL Of lib Under folder libmysql.dll and libmysql.lib Copy to the project folder

route :C:\Download\Mysql\mysql-8.0.26-winx64\lib

 Insert picture description here
Copy to the changed path :D:\ Class folder \MYSQL Curriculum \ Job introduction information management system \ Job introduction information management system
 Insert picture description here

3. add to libmysql.lib To attach dependencies : attribute -> The linker -> Input -> Additional dependency

 Insert picture description here

4. add to include Attach to include directory : attribute -> c/c++ -> routine -> Attach include directory

 Insert picture description here
include route :C:\Download\Mysql\mysql-8.0.26-winx64\include

MySQL Initialization and definition of variables

	//  Included header file 
	#include <stdio.h>
	#include <WinSock.h>
	#include <mysql.h>
	
	MYSQL m; // mysql Connect 
	MYSQL_RES* res; //  Query result set 
	MYSQL_ROW row; // Two dimensional array , Storing data 

	// initialization 
	mysql_init(&m);
	
	//  Set the encoding mode 
	mysql_options(&m, MYSQL_SET_CHARSET_NAME, "gbk");

Database connection

// “ host ”,“ user name ”,“ password ”,“ Database name ”,“ port ”
	if (mysql_real_connect(&m, "localhost", "root", "0915", "test", 3306, NULL, 0))
		printf(" Database connection successful \n");
	else
		printf(" Database connection failed  %s\n", mysql_error(&m)); //  Output error message 

Insert data into the database

//  Define a sql sentence 
const char* sql = "insert into stu values('1001', ' Xiao Ming ', 100)";
// mysql_query(&m, sql)  To perform a sql sentence , Successfully returns 0, Failure returns to non 0
	if (mysql_query(&m, sql))
		printf(" Insert data failed  %s\n", mysql_error(&m));
	else
		printf(" Insert data succeeded \n");

//  Insert multiple pieces of data into the database 
const char* sql = "insert into stu values('1002',' Xiaohong ', 98), ('1005', 'baby', 89), ('1004', 'asd', 95)";
	if (mysql_query(&m, sql))
		printf(" Insert data failed :%s", mysql_error);
	else printf(" Insert the success ");

Delete data

const char* sql = "delete from stu where id = '1005'";
	if (mysql_query(&m, sql))
		printf(" Delete failed :%s", mysql_errno);
	else
		printf(" Delete successful \n");

Update data

	const char* sql = "update stu set id = '1003' where name = 'asd'";
	if (mysql_query(&m, sql))
		printf(" Update failed :%s", mysql_error);
	else
		printf(" The update is successful \n");

Query data

//  Query data 
	const char* sql = "select * from stu";
	if (mysql_query(&m, sql))
		printf(" Not found :%s", mysql_error);
	else
		printf(" Find success \n");

	//  Get the query result set 
	res = mysql_store_result(&m);
	if (res)
		printf(" Get data \n");
	else
		printf(" No data obtained :%s", mysql_error);


	//  Print data 
	while (row = mysql_fetch_row(res))
	{
    
		printf("%s\t%s\t%s\t\n", row[0], row[1], row[2]);
	}
	
	// Release result set 
	mysql_free_result(res); //  Release result set 
	mysql_close(&m); // Close the database 

A source code is attached below

#include <stdio.h>
#include <WinSock.h>
#include <mysql.h>

void test()
{
    
	MYSQL m; // mysql Connect 
	MYSQL_RES* res; //  Query result set 
	MYSQL_ROW row; // Two dimensional array , Storing data 

	// initialization 
	mysql_init(&m);

	//  Set the encoding mode 
	mysql_options(&m, MYSQL_SET_CHARSET_NAME, "gbk");

	// Connect to database 
	// “ host ”,“ user name ”,“ password ”,“ Database name ”,“ port ”
	if (mysql_real_connect(&m, "localhost", "root", "0915", "test", 3306, NULL, 0))
		printf(" Database connection successful \n");
	else
		printf(" Database connection failed  %s\n", mysql_error(&m)); //  Output error message 

	//  Insert data into the database 
	
	const char* sql = "insert into stu values('1001', ' Xiao Ming ', 100)";
	if (mysql_query(&m, sql))
		printf(" Insert data failed  %s\n", mysql_error(&m));
	else
		printf(" Insert data succeeded \n");
	

	//  Insert multiple pieces of data into the database 
	
	const char* sql = "insert into stu values('1002',' Xiaohong ', 98), ('1005', 'baby', 89), ('1004', 'asd', 95)";
	if (mysql_query(&m, sql))
		printf(" Insert data failed :%s", mysql_error);
	else printf(" Insert the success ");
	

	// Delete data 
	
	const char* sql = "delete from stu where id = '1005'";
	if (mysql_query(&m, sql))
		printf(" Delete failed :%s", mysql_errno);
	else
		printf(" Delete successful \n");
	

	// Update data 
	const char* sql = "update stu set id = '1003' where name = 'asd'";
	if (mysql_query(&m, sql))
		printf(" Update failed :%s", mysql_error);
	else
		printf(" The update is successful \n");

	//  Query data 
	//string s = "select * from stu";
	//const *sql = s;
	char sql[] = "select * from stu";
	if (mysql_query(&m, sql))
		printf(" Not found :%s", mysql_error);
	else
		printf(" Find success \n");

	//  Get the query result set 
	res = mysql_store_result(&m);
	if (res)
		printf(" Get data \n");
	else
		printf(" No data obtained :%s", mysql_error);


	//  Print data 
	while (row = mysql_fetch_row(res))
	{
    

		printf("%s\t%s\t%s\t\n", row[0], row[1], row[2]);
	}

	// Release result set 
	mysql_free_result(res); //  Release result set 
	mysql_close(&m); // Close the database 

}

int main()
{
    

	//cout << "main" << endl;
	test();
	getchar();


	return 0;
}
原网站

版权声明
本文为[%xiao Q]所创,转载请带上原文链接,感谢
https://yzsam.com/2022/187/202207060912470201.html