• 大小: 15.42MB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-07-13
  • 语言: C/C++
  • 标签: C++、MySQL  

资源简介

C语言连接数据库,并对MySQL数据库中的数据进行增删改查 代码简洁,其中的display函数只是为了测试方便,可以删除

资源截图

代码片段和文件信息

#include 
#include 
#include 
#include 
#include 
#include 
using namespace std;

MYSQL mysql *sock;   //声明MySQL的句柄 
/*
目前该程序只能连接指定的数据库,
无法像MySQL自带客户端那样通过输入数据库名字进行连接
*/

//显示当前连接的数据库中的所有table
void display()
{
MYSQL_RES * result; 
MYSQL_ROW row;
char *query1=“SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA = ‘wlqing‘“;
//查询所有的表名  同时所有的表名已经在控制台上显示
if ( mysql_query(&mysql query1) != 0 )       

printf(“查询失败,原因是: \n“); 
fprintf(stderr “ %s\n“ mysql_error(&mysql));  

else 

if ( (result = mysql_store_result(&mysql)) == NULL ) //保存查询的结果 

printf(“保存结果集失败,原因是: \n“); 
fprintf(stderr “ %s\n“ mysql_error(&mysql));  


else 

while ( (row = mysql_fetch_row(result)) != NULL ) //读取结果集中的数据 

printf(“tableName is %s \n“ row[0]);       //打印当前表的名字 



}
}

void select()
{
display();//查询所有的表名  同时所有的表名已经在控制台上显示
MYSQL_RES * result; 
MYSQL_ROW row;
char column[100][100];
MYSQL_FIELD *fd;
char sql;
printf(“根据上面的表格列表进行数据查询,提示:select * from ‘表名‘:\n “);
getchar();
gets(&sql);
//scanf(“%[^;]“&sql);
//printf(“%s \n“&sql);
if (mysql_query(&mysql &sql) != 0 )
{
printf(“查询失败,原因是: \n“); 
fprintf(stderr “ %s\n“ mysql_error(&mysql)); 
}
else
{
if ( (result = mysql_store_result(&mysql)) == NULL ) //保存查询的结果 

printf(“保存结果集失败,原因是: \n“); 
fprintf(stderr “ %s\n“ mysql_error(&mysql));  


else 

int i  j ;
//printf(“结果集的数目:%s \n“(unsigned long) mysql_num_rows( result ));
for ( i = 0; fd = mysql_fetch_field( result ); i++ )    // 获取列名 
{
strcpy( column[i] fd->name );
}
j = mysql_num_fields( result );//得到列的个数
for ( i = 0; i < j; i++ )     //打印得到的列名
{
printf( “%s  “ column[i]);
}
printf( “\n“ );
while ( (row = mysql_fetch_row(result)) != NULL ) //读取结果集中的数据 

for ( i = 0; i < j; i++ )
{
printf( “%s     “ row[i] );//打印各个列对应的具体数据,存在的问题是无法像MySQL客户端那样对齐
}
printf( “\n“ );

mysql_free_result( result );//此时查询完成,释放结果集

}


//通过输入的内容在表中插入记录
void insert()
{
display();
char sql;
printf(“请输入插入操作的sql语句:\n“);
getchar();
gets(&sql);

if (mysql_query(&mysql &sql) != 0)
{
printf(“插入失败,原因是: \n“); 
fprintf(stderr “ %s\n“ mysql_error(&mysql));
}
else
{
printf(“插入成功“);
}
}

//通过输入的内容对相应的记录进行修改更新
void update()
{
display();
char sql;
printf(“请输入更新操作的sql语句:\n“);
getchar();
gets(&sql);

if (mysql_query(&mysql &sql) != 0)
{
printf(“修改失败,原因是: \n“); 
fprintf(stderr “ %s\n“ mysql_error(&mysql));
}
else
{
printf(“修改成功“);
}
}

//删除表中某条记录,或删除所有的记录
void Delete()
{
display();
char sql;
printf(“请输入删除操作的sql语句:\n“);
getchar();
gets(&sql);
if (mysql_query(&mysql &sql) != 0)
{
pr

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       5348  2016-12-21 11:28  TestMySQL\connectMysql.cpp

     文件        610  2016-12-19 17:58  TestMySQL\Debug\cl.command.1.tlog

     文件      16190  2016-12-19 17:58  TestMySQL\Debug\CL.read.1.tlog

     文件        268  2016-12-19 17:58  TestMySQL\Debug\CL.write.1.tlog

     文件      24738  2016-12-19 17:58  TestMySQL\Debug\connectMysql.obj

     文件          2  2016-12-19 17:58  TestMySQL\Debug\link.command.1.tlog

     文件          2  2016-12-19 17:58  TestMySQL\Debug\link.read.1.tlog

     文件          2  2016-12-19 17:58  TestMySQL\Debug\link.write.1.tlog

     文件        624  2016-12-19 15:15  TestMySQL\Debug\TestMySQL.Build.CppClean.log

     文件         66  2016-12-19 17:58  TestMySQL\Debug\TestMySQL.lastbuildstate

     文件       2548  2016-12-19 17:58  TestMySQL\Debug\TestMySQL.log

     文件      19456  2016-12-19 17:58  TestMySQL\Debug\TestMySQL.pdb

     文件          0  2016-12-19 17:58  TestMySQL\Debug\TestMySQL.unsuccessfulbuild

     文件        713  2016-12-19 17:58  TestMySQL\Debug\TestMySQL.vcxprojResolveAssemblyReference.cache

     文件          0  2016-12-19 17:58  TestMySQL\Debug\TestMySQL.write.1.tlog

     文件     175104  2016-12-19 17:58  TestMySQL\Debug\vc100.idb

     文件      77824  2016-12-19 17:58  TestMySQL\Debug\vc100.pdb

     文件   46530560  2016-12-21 13:27  TestMySQL\ipch\testmysql-e15f9ed8\testmysql-971c9480.ipch

     文件    5296128  2016-07-12 14:41  TestMySQL\libmysql.dll

     文件      26956  2016-07-12 14:41  TestMySQL\libmysql.lib

     文件   31543296  2016-12-21 13:32  TestMySQL\TestMySQL.sdf

     文件       1238  2016-12-19 15:15  TestMySQL\TestMySQL.sln

    ..A..H.     31744  2016-12-21 13:32  TestMySQL\TestMySQL.suo

     文件       7741  2016-12-20 15:35  TestMySQL\TestMySQL.vcxproj

     文件        950  2016-12-20 10:24  TestMySQL\TestMySQL.vcxproj.filters

     文件        143  2016-12-19 14:59  TestMySQL\TestMySQL.vcxproj.user

     文件       6566  2016-12-21 11:26  TestMySQL\x64\Debug\cl.command.1.tlog

     文件     135304  2016-12-21 11:26  TestMySQL\x64\Debug\CL.read.1.tlog

     文件       2668  2016-12-21 11:26  TestMySQL\x64\Debug\CL.write.1.tlog

     文件      75520  2016-12-21 11:26  TestMySQL\x64\Debug\connectMysql.obj

............此处省略49个文件信息

评论

共有 条评论

相关资源