易截截图软件、单文件、免安装、纯绿色、仅160KB

ODBC访问MYSQL内存泄露 - VC/MFC / 基础类

我通过ODBC访问MYSQL,但是每次执行都会增大100K左右,要1次两次也就无所谓了,但是关键是1秒执行2-3次,执行1天想想都感到心寒了,谁能帮忙看下哪儿泄露的,怎么改法



C/C++ code:

#define LOGIN_TIMEOUT 30
#define MAXBUFLEN 255
//global
SQLHENV henv = NULL;
SQLHDBC hdbc = NULL;
SQLHSTMT hstmt = NULL;
SQLRETURN result;




void DBConnect(HWND hwnd)
{
SQLCHAR ConnStrIn[MAXBUFLEN] = "DRIVER={MySQL ODBC 5.1 Driver};SERVER=127.0.0.1;UID=root;PWD=;DATABASE=test;CharSet=gbk;";
SQLCHAR ConnStrOut[MAXBUFLEN];
result = SQLAllocHandle(SQL_HANDLE_ENV, SQL_NULL_HANDLE, &henv);
result = SQLSetEnvAttr(henv, SQL_ATTR_ODBC_VERSION, (void*)SQL_OV_ODBC3, 0);
result = SQLAllocHandle(SQL_HANDLE_DBC, henv, &hdbc);
result = SQLSetConnectAttr(hdbc, SQL_LOGIN_TIMEOUT, (void*)LOGIN_TIMEOUT, 0);
result = SQLDriverConnect(hdbc,NULL,
ConnStrIn,SQL_NTS,
ConnStrOut,MAXBUFLEN,
(SQLSMALLINT *)0,SQL_DRIVER_NOPROMPT);
if(SQL_ERROR==result)
{
PostQuitMessage(0);
return;
}
}

void DBDisconnect(HWND hwnd)
{
SQLFreeStmt(hstmt,SQL_CLOSE);
SQLDisconnect(hdbc);
SQLFreeHandle(SQL_HANDLE_DBC,hdbc);
SQLFreeHandle(SQL_HANDLE_ENV,henv);
}

void DoNotSelectJob(HWND hwnd)
{
TCHAR buff[256];
ZeroMemory(buff,sizeof(buff)/sizeof(TCHAR));


相关问答:

c#控制Mysql 实现自动删除功能 - .NET技术 / C#

有个winform程序,使用c#+mysql,需要在一个窗体设置mysql自动删除功能,包括自动删除多少天之前的数据以及是否开启自动删除功能,我程序退出后,还怎么控制Mysql自己删除啊?是不是要用mysql的event来实现?c#可以调用mysq ......

怎么在eclipse下向mysql插入变量啊 - Java / Java相关

String SQL="insert into 学生信息表 values(StudentNumber,StudentName,StudentAge)";其中StudentNumber,StudentName,StudentAge都是变量。这样写不对……到底该咋写啊

万分感谢!

String SQL=&q ......

Mysql效率问题 - 其他数据库开发 / MySQL/Postgresql


CREATE TABLE `ch1` (
  `id` int(10) unsigned zerofill NOT NULL AUTO_INCREMENT,
  `no` int(10) unsigned DEFAULT NULL,
  `dtime` datetime DEFAULT NULL,
  PRIMARY KEY (`id ......

mysql问题! - Java / Java SE

String sqlCount="select count(*) from usertable where username='"+
userName+"'";这句话 什么意思啊!
这句话输出出来就是
select count(*) from usertable where username='你的变量 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号