· 用C语言操作MySQL数据库,进行连接、插入、修改、删除等操作
· 关于设置xtreme toolkit的h文件和lib文件的路径
· 非模式对话框的销毁(calling DestroyWindow in CDialog::~CDialog)
2012-1-17 16:35:09 阅读11 评论0 172012/01 Jan17
#include <winsock.h>
#include <mysql.h>
#include <windows.h>
#pragma comment(lib,"libmySQL.lib")
#pragma comment(lib,"wsock32.lib")
#include <stdio.h>
#define MAX_COLUMN_LEN 32
void main(){
MYSQL my_connection; //定义数据库连接的句柄,它被用于几乎所有的MySQL函数
MYSQL_RES *result; //查询结果集,结构类型
2012-1-17 16:10:11 阅读7 评论0 172012/01 Jan17
2011-12-14 9:40:38 阅读29 评论0 142011/12 Dec14
虽然CPtrList没有排序算法,但是我们可以通过简单的语句进行排序
void CServerList::Sort()
{
EnterCriticalSection(&criticalSection);
CPtrList sortList;
CServer* prev = NULL;
CServer* p = NULL;
POSITION Pos,prevPos,sPos = NULL;
while(List.GetCount())
{
Pos = List.GetHeadPosition();
if(Pos)
{
2011-11-26 11:45:46 阅读35 评论0 262011/11 Nov26
class __declspec(dllexport) exp
从而说明以后从dll要被导出的类是哪一个。这样编译完就会产生exp.dll和exp.lib两个文件。
2011-11-3 10:19:37 阅读50 评论0 32011/11 Nov3
由于主程序启动的时候要从服务器端获取一些数据,在等待数据的过程中,时常由于网络速度问题,让客户等待的时间长短不一。为了解决客户反映的卡死情况,我特定在程序启动的时候添加了进度条显示。下面就是我的例子。
具体实现的代码:
#pragma once
/////////////////////////////////////////////////////////////////////////////
// CShowProgressDlg dialog
class CShowProgressDlg : public CDialog
{
// Construction
public:
CShowProgressDlg(CWnd* pParent
2011-11-3 9:52:14 阅读29 评论0 32011/11 Nov3
首先它的头文件都在一个source文件夹里,所以配置h文件的时候要包含这个路径。以VC6和VS2008为例。
VC6:
VS2008:
其次它的库文件都在一个Lib文件夹里,所以配置Lib文件的时候要包含这个路径。以VC6和VS2008为例。
VC6:
2011-11-1 11:14:32 阅读27 评论0 12011/11 Nov1
一般,我们用非模态对话框都是全局的,也就是通过new来创建,是在heap上的,而不是在stack上的。
这样我们当然还要通过delete 来销毁对象,不然可是有内存泄漏的。那么我们什么时候delete这个对象呢?
在msdn上面我们可以看到微软提供的方法是,
我们要重载PostNcDestroy(),即我们要实现CMyDialog::PostNcDestroy(),内容如下
CMyDialog::PostNcDestroy() { CDialog::PostNcDestroy(); delete this; }2011-10-26 11:33:56 阅读47 评论0 262011/10 Oct26
安装 BCGControlBar 库到你的计算机:
解压缩 BCGControlBar.zip (比如,到 c:\bcg 目录中)
把 c:\bcg\bin 增加到你的 path 环境变量中,
运行 Visual C++ 并且打开 Tools | Options 对话框,切换到Directories 页并且把
c:\bcg\bcgcontrolbar 加入到 include 目录 中,把 c:\bcg\bin 加入 library 和 executable 目
2011-10-20 17:00:41 阅读66 评论0 202011/10 Oct20
BULK INSERT
以用户指定的格式复制一个数据文件至数据库表或视图中。
语法
BULK INSERT [ [ 'database_name'.][ 'owner' ].]{ 'table_name' FROM 'data_file' }
[ WITH
(
[ BATCHSIZE [ = batch_size ] ]
[ [ , ] CHECK_CONSTRAINTS ]
2011-10-20 16:51:26 阅读49 评论0 202011/10 Oct20
想必每个DBA都喜欢挑战数据导入时间,用时越短工作效率越高,也充分的能够证明自己的实力。实际工作中有时候需要把大量数据导入数据库,然后用于各种程序计算,本文将向大家推荐一个挑战4秒极限让百万级数据瞬间导入SQL Server实验案例。
本实验将使用5中方法完成这个过程,并详细记录各种方法所耗费的时间。所用到工具为Visual Studio 2008和SQL Server 2000、SQL Server 2008,分别使用5中方法将100万条数据导入SQL Server 2000与SQL Server 2008中,实验环境是DELL 2850双2.0GCPU,2G内存的服务器。感兴趣的朋友可以下载源代码自己验证一下所用时间。
好了,下面我们分别使用基本的Insert 语句、使用BULK INSERT语句、在多线程中使用BULK INSERT、使用
2011-10-20 16:32:30 阅读92 评论0 202011/10 Oct20
SQLSERVER 大数据量插入命令:
BULK INSERT是SQLSERVER中提供的一条大数据量导入的命令,它运用DTS(SSIS)导入原理,可以从本地或远程服务器上批量导入数据库或文件数据。批量插入是一个独立的操作,优点是效率非常高。缺点是出现问题后不可以回滚。
BULK INSERT是用来将外部文件以一种特定的格式加载到数据库表的T-SQL命令。该命令使开发人员能够直接将数据加载到数据库表中,而不需要使用类似于Integration Services这样的外部程序。虽然BULK INSERT不允许包含任何复杂的逻辑或转换,但
2011-10-20 10:17:48 阅读40 评论0 202011/10 Oct20
2011-6-8 16:08:46 阅读259 评论0 82011/06 June8
SQLite 包括以下五个时间函数:
date(日期时间字符串, 修正符, 修正符, ……)
time(日期时间字符串, 修正符, 修正符, ……)
datetime(日期时间字符串, 修正符, 修正符, ……)
julianday(日期时间字符串, 修正符, 修正符, ……)
strftime(日期时间格式, 日期时间字符串, 修正符, 修正符, ……)
上述五个函数需要一个日期时间字符串做参数,后面可以跟零到多个修正符参数。而 strftime() 函数还需要一个日期时间格式字符串做第一个参数。
2011-5-11 15:50:28 阅读67 评论0 112011/05 May11
消息名为:
WM_COMMAND
消息的参数:
wParam: LOWORD(wParam)存放的是控件的ID,HIWORD(wParam)放的是STN_CLICKED(这是静态控件被 点击的标志)
lParam: 该控件的句柄。
代码为:
case WM_COMMAND:
{
if(HIWORD(wParam) == STN_CLICKED)
{
if(wParam == IDC_BTN_PIC)
{
MessageBox("112");
2011-3-16 17:12:15 阅读485 评论0 162011/03 Mar16
1. http://www.arstdesign.com/articles/picloader.html
2. http://www.cppblog.com/zhangyq/archive/2008/04/11/46816.aspx
3. http://hi.baidu.com/nosoft008/blog/item/cd6d3131ded576ac5fdf0e66.html
头文件
#include <initguid.h>
#include <imaging.h>
正文
一、 实现代码
void DrawImage(HDC