用Dev-CPP来测试MySQL的C API程序,执行到第三步,不行,请大虾指教!谢谢!

明月登楼 2005-08-31 10:23:14
/*
Name: MySQLClientTest
Author: Kip Warner (kip@zero47.com)
Date: 24/11/03 13:15
Description: Example to show usage of MySQL databases from client end.
I did not have much time. Sorry...
*/

// Includes...
#include <windows.h>
#include <MySQL/mysql.h>
#include <stdlib.h>
#include <stdio.h>
#include <conio.h>

// Database name...
char g_szHost[] = "localhost";
UINT g_unPort = MYSQL_PORT;
char g_szUserName[] = "root";
char g_szPassword[] = "caoxin";
char g_szDatabase[] = "mydata";
char g_szSQLStatement[] = "SELECT * FROM `yuangong` WHERE 1";

// Entry point...
int main(int nArguments, char *pszArguments[])
{
// Variables...
MYSQL *myDatabase = NULL;
MYSQL_RES *myResult = NULL;
MYSQL_FIELD *myField = NULL;
MYSQL_ROW myRow = NULL;
UINT unRecords = 0;
UINT unFields = 0;
UINT unIndex = 0;
UINT unFieldIndex = 0;

// Initialize MySQL...
myDatabase = mysql_init(NULL);
int temp=0;
// Failed...
if(!myDatabase)
{
// Alert user...
printf("] Error: Unable to initialize MySQL API...\n");

// Cleanup, abort, terminate...
mysql_close(myDatabase);
getch();
return 0;
}

// Connect to server and check for error...
if(mysql_real_connect(myDatabase, g_szHost, g_szUserName, g_szPassword,
NULL, g_unPort, NULL, 0) != 0)
{
// Alert user...
printf("] Error: Unable to connect to server...\n");

// Cleanup, abort, terminate...
mysql_close(myDatabase);
getch();
return 0;
}

// Select database in server and check for error...
if((temp=mysql_select_db(myDatabase, g_szDatabase)) != 0) //执行到此步就行了,就提出如下的错误,请大虾赐教!
{
// Alert user...
printf("] Error: Unable to select *%d* database...\n",temp);

// Cleanup, abort, terminate...
mysql_close(myDatabase);
getch();
return 0;
}

// Query database and check for error...
if(mysql_query(myDatabase, g_szSQLStatement) != 0)
{
// Alert user...
printf("] Error: Unable to execute query...\n");

// Cleanup, abort, terminate...
mysql_close(myDatabase);
getch();
return 0;
}

// Retrieve query result from server...
myResult = mysql_store_result(myDatabase);

// Failed...
if(!myResult)
{
// Alert user...
printf("] Error: Unable to retrieve result...\n");

// Cleanup, abort, terminate...
mysql_close(myDatabase);
getch();
return 0;
}

// How many records were returned in the result set?

// Calculate...
unRecords = mysql_num_rows(myResult);

// Alert user...
printf("] Query: %d records found...\n", unRecords);

// How many fields are present in a record?

// Calculate...
unFields = mysql_num_fields(myResult);

// Alert user...
printf("] Query: There are %d fields in each record...", unFields);

// Output records...
for(unIndex = 0; unIndex < unRecords; unIndex++)
{
// Fetch row from results...
myRow = mysql_fetch_row(myResult);

// Fetch fields from row...
myField = mysql_fetch_fields(myResult);

// Show record...
printf("] Record: %d / %d\n", unIndex, unRecords);

// Output all fields in this row...
for(unFieldIndex = 0; unFieldIndex < unFields; unFieldIndex++)
{
// Output...
printf("\t%s", myField[unFieldIndex].name);
}
}

// Free result...
mysql_free_result(myResult);

// Close server connection...
mysql_close(myDatabase);
myDatabase = NULL;

// Alert user, exit...
printf("] Done, press any key to exit...\n");
getch();
return 0;
}
...全文
198 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhujiujun 2005-11-27
  • 打赏
  • 举报
回复
楼主,能不能把正确的结果贴出来啊。我也准备做这方面的东西~~~
谢谢!
Jagen在路上 2005-09-25
  • 打赏
  • 举报
回复
大小写问题吧,哈哈,我来接分的。
foochow 2005-09-24
  • 打赏
  • 举报
回复
JFJFJF,多给偶点啊,要升级了,嘿嘿
fiftymetre 2005-09-24
  • 打赏
  • 举报
回复
恭喜楼主,偶是来蹭分的~~~
明月登楼 2005-09-24
  • 打赏
  • 举报
回复
哈哈,昨天我已解决此难题!欢喜中。。。。。
明月登楼 2005-09-01
  • 打赏
  • 举报
回复
怎么没有人回答呀?
明月登楼 2005-08-31
  • 打赏
  • 举报
回复
既然,前面两个条件都过了,到最后选择数据库却出错了,我是确实不明白问题出哪里了?郁闷中...
代码下载链接: https://pan.quark.cn/s/feb6394ba113 放射性核素衰变查询软件“decay”是一款为核物理学领域设计的专用工具,其功能在于提供全面的放射性核素衰变信息,涵盖了衰变链、分支比等核心数据。该软件特别适合科研人员、工程师以及关注核能或放射性物质的用户群体。在深入探讨这款软件之前,有必要先掌握放射性核素的基础知识。放射性核素定义为不稳定的原子核,由于质子与中子数量失衡,会自发触发核反应,释放能量及/或产生新粒子,此现象即为核衰变。常见的核衰变形式包含α衰变、β衰变(涵盖β+衰变与β-衰变)、γ衰变和电子俘获等。每一种衰变类型都关联着特定的能量释放和新生成的核素。“decay”软件的主要作用是进行衰变链的查询。衰变链描述的是一个放射性核素通过一连串连续的衰变步骤,最终转变为非放射性核素的现象。比如,铀-238会经由多次α和β衰变,最终转化为铅-206。该软件能够呈现这些衰变链的详尽资料,助力用户追踪并解析这一过程。分支比反映了衰变过程中各个可能途径的概率,即一个放射性核素在发生衰变时选择特定路径的可能性。分支比对于解析衰变过程中的能量分布和产物生成具有决定性意义,特别是在核能开发、环境检测和医疗领域中不可或缺。这款软件的运行环境设定在Windows XP系统,这表明它可能依赖于较早期的API和库,而这些在现代操作系统上可能存在兼容性问题。对于那些仍在使用或研究老旧系统的人员而言,“decay”是一份极具价值的参考资料。放射性核素的应用遍及多个领域,包括医学上的放射性同位素疗法、地质学中的年代测定、能源产业中的核反应堆构建以及环境科学里的污染物追踪等。“decay”软件所提供的数据能够协助专业人士精确计算和预估放射性物质的特性...
内容概要:本文档提供了Windows环境下Nginx的详细配置指南,适用于企业内网部署场景。配置文件以Django + Waitress应用架构为基础,全面涵盖反向代理、HTTPS加密、静态文件托管、安全防护等功能。文档对每一项配置均进行了通俗易懂的解释,包括工作进程设置、日志管理、连接处理、SSL证书配置、HTTP/2支持以及多种安全加固措施,如恶意求拦截(SQL注入、XSS)、敏感文件访问限制、IP白名单机制和关键求头转发,确保Web服务的安全性与稳定性。; 适合人群:具备基本Web服务器概念,正在Windows平台部署Python Web应用(尤其是Django)的开发人员或运维人员,尤其适合缺乏Nginx实战经验的初级至中级技术人员。; 使用场景及目标:①搭建安全可靠的反向代理服务器,将Nginx作为Django应用的前端网关;②实现HTTPS访问、静态资源分离与安全策略强化;③防范常见Web攻击,保护敏感配置文件和接口不被非法访问;④解决因求头缺失导致的CSRF、登录失效等问题。; 阅读建议:建议结合实际项目逐步配置,并重点关注proxy_set_header各项参数的作用及其与Django的协同设置,务必在测试环境中验证所有安全规则和代理功能后再上线。

24,852

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 工具平台和程序库
社区管理员
  • 工具平台和程序库社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧