C语言訪问MySQL数据库的方法

1、加入头文件路径(MySQL安装路径中的include路径)

2、加入库文件(直接从MySQL安装路径中copy libmysql.lib就可以)

3、编程操作数据库

代码

// AccessToMySQL.cpp : 定义控制台应用程序的入口点。
//

#include "stdafx.h"
#include <Windows.h>
#include <mysql.h>
#pragma comment(lib,"libmysql.lib")

MYSQL mysql;
MYSQL_RES* result;
MYSQL_ROW row;

int main(void)
{
	//init the mysql parameter
	mysql_init(&mysql);
	//connect the database
	if(!mysql_real_connect(&mysql,"127.0.0.1","root","111","mytest",3306,NULL,0))
	{
		printf(mysql_error(&mysql));
		printf("\nCannot access to the database!!!\n");
		system("pause");
		exit(-1);
	}

	//construct the query SQL statements
	char* sql="select * from student where name=‘";
	char dest[100]={""};
	strcat(dest,sql);
	printf("Please enter the student name:");
	char name[10]={""};
	gets(name);
	strcat(dest,name);
	strcat(dest,"‘");

	//excute the SQL statements
	if(mysql_query(&mysql,dest))
	{
		printf("Cannot access the database with excuting \"%s\".",dest);
		system("pause");
		exit(-1);
	}

	//deal with the result
	result=mysql_store_result(&mysql);
	if(mysql_num_rows(result))
	{
		while((row=mysql_fetch_row(result)))
		{
			printf("%s\t%s\t%s\n",row[0],row[1],row[2]);
		}
	}
	//release the resource
	mysql_free_result(result);
	mysql_close(&mysql);

	system("pause");
	return 0;
}

时间: 2024-12-27 07:53:42

C语言訪问MySQL数据库的方法的相关文章

mysql的安装、C++訪问mysql数据库、编码设置问题

一.mysql的安装.这个相对简单,直接去官网下载mysql安装程序.就能够完毕安装过程,网上有非常多安装教程,这个没什么注意事项. 二.C++訪问mysql.主要是用到mysql定义的头文件,内部定义了各种数据结构和函数,比方MYSQL,MYSQL_RES,MYSQL_ROW,mysql_real_connect等等一系列的结构和函数.这里要注意的就是将头文件及lib文件以及dll文件配置到当前开发环境来进行訪问mysql数据库. 以最新的vs2013作为演示样例说一下配置过程. 为了写的清晰

大数据量高并发訪问的数据库优化方法

????假设不能设计一个合理的数据库模型.不仅会添加client和server段程序的编程和维护的难度,并且将会影响系统实际运行的性能.所以,在一个系统開始实施之前,完备的数据库模型的设计是必须的. ????在一个系统分析.设计阶段.由于数据量较小.负荷较低.我们往往仅仅注意到功能的实现.而非常难注意到性能的薄弱之处,等到系统投入实际运行一段时间后,才发现系统的性能在降低.这时再来考虑提高系统性能则要花费很多其它的人力物力,而整个系统也不可避免的形成了一个打补丁project. ????所以在考

HDFS简单介绍及用C语言訪问HDFS接口操作实践

一.概述 近年来,大数据技术如火如荼,怎样存储海量数据也成了当今的热点和难点问题,而HDFS分布式文件系统作为Hadoop项目的分布式存储基础,也为HBASE提供数据持久化功能,它在大数据项目中有很广泛的应用. Hadoop分布式文件系统(Hadoop Distributed File System.HDFS)被设计成适合运行在通用硬件(commodity hardware)上的分布式文件系统.HDFS是Hadoop项目的核心子项目,是一种具有高容错性.高可靠性.高可扩展性.高吞吐量等特征的分布

查看mysql数据库版本方法总结

当你接手某个mysql数据库管理时,首先你需要查看维护的mysql数据库版本:当开发人员问你mysql数据库版本时,而恰好你又遗忘了,那么此时也需要去查看mysql数据库的版本...............下文总结一下Linux平台下查看mysql数据库的方法.个人觉得总结的比较全面了. 方法1:登录数据库时,你可以看到对应mysql数据库的版本信息,如下所示: [[email protected] ~]# mysql -u root -p Enter password: Welcome to

Go语言中使用MySql数据库

Go语言中使用MySql数据库 1.MySQL驱动 Go中支持MySQL的驱动目前比较多,有如下几种,有些是支持database/sql标准,而有些是采用了自己的实现接口,常用的有如下几种: https://github.com/Go-SQL-Driver/MySQL 支持database/sql,全部采用go写. https://github.com/ziutek/mymysql 支持database/sql,也支持自定义的接口,全部采用go写. https://github.com/Phil

优化MYSQL数据库的方法

1.选取最适用的字段属性 尽可能减少定义字段长度,尽量把字段设置NOT NULL,例如'省份,性别',最好设置为ENUM 2.使用连接(JOIN)来代替子查询:  a.删除没有任何订单客户 ELETE FROM customerinfo WHERE customerid NOT in(SELECT customerid FROM orderinfo) b.提取所有没有订单客户 SELECT FROM customerinfo WHERE customerid NOT in(SELECT cust

使用c#訪问Access数据库时,提示找不到可安装的 ISAM

使用c#訪问Access数据库时,提示找不到可安装的 ISAM.例如以下图: 代码例如以下: connectionString = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=db.mdb;Pwd=abcd;"; conn = new OleDbConnection(connectionString); conn.Open(); DataTable dt = conn.GetSchema("Tables"); if

mysql的MyISAM 和 InnoDB 的区别?优化MYSQL数据库的方法?

MyISAM 和 InnoDB 的基本区别 1.InnoDB不支持FULLTEXT类型的索引. 2.InnoDB 中不保存表的具体行数,也就是说,执行select count(*) from table时,InnoDB要扫描一遍整个表来计算有多少行,但是MyISAM只要简单的读出保存好的行数即可.注意的是,当count(*)语句包含 where条件时,两种表的操作是一样的. 3.对于AUTO_INCREMENT类型的字段,InnoDB中必须包含只有该字段的索引,但是在MyISAM表中,可以和其他

Linux 每天自动备份mysql数据库的方法

Linux 每天自动备份mysql数据库的方法 作者: 字体:[增加 减小] 类型:转载 linux下为了安全有时候需要自动备份mysql数据库,下面是具体的实现步骤. /usr/bin为mysql安装目录 建备份文件夹: mkdir mysql_data_bak 建脚本文件: touch autobackupmysql.sh 打开文件 vi autobackupmysql.sh 在脚本中加入如下内容: filename=`date +%Y%m%d` /usr/bin/mysqldump -op