vc win32控制台程序如何操作sqlserver2000 求源码.谢谢CSDN的朋友 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 #include "stdafx.h"#include<conio.h> #import "c:\program files\common files\system\ado\msado15.dll" no_namespace rename ("EOF", "adoEOF")int _tmain(int argc, _TCHAR* argv[]){ _ConnectionPtr conn; _RecordsetPtr data; wchar_t temp[512]; CComQIPtr <Excel::_Worksheet> sheet(worksheet); Excel::RangePtr range; try { conn.CreateInstance(__uuidof(Connection)); swprintf(temp, connectionString, accId, year); conn->Open(temp, L"", L"", adModeUnknown); swprintf(temp, sql, expense, item_class, item_id, month); data = conn->Execute(temp, NULL, adCmdText); int row , day; range = sheet->GetCells(); for(row = 4, day = 1; row < 35; row++, day++) { swprintf(temp, L"%02d日", day); range->PutItem(row, 1, temp); range->PutItem(row, 3); range->PutItem(row, 4); range->PutItem(row, 12); } for(row = 4; !data->adoEOF; data->MoveNext(), row++) { day = data->GetCollect(L"field1"); day += 4; while(row < day) { row++; } range->PutItem(row, 3, data->GetCollect(L"field3")); range->PutItem(row, 4, data->GetCollect(L"field2")); range->PutItem(row, 12, data->GetCollect(L"field4")); } } catch (_com_error e) { conn->Close(); throw e; } CoUninitialize(); return 0;} 1楼使用ADO连接数据库。楼主不明白直接google“ADO” // ado.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#import "c:\program files\common files\system\ado\msado15.dll" no_namespace rename ("EOF", "adoEOF")wchar_t *sql = L"select field1, ... from tableName where id=%d";wchar_t *connectionString = L"Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=DBName;Data Source=.";int _tmain(int argc, _TCHAR* argv[]){ _ConnectionPtr conn; _RecordsetPtr data; wchar_t temp[512]; try { conn.CreateInstance(__uuidof(Connection)); conn->Open(connectionString, L"", L"", adModeUnknown); //建立连接 int id = 3; swprintf(temp, sql, id); // data = conn->Execute(temp, NULL, adCmdText); int row , day; for(; !data->adoEOF; data->MoveNext()) //遍例所有记录 { day = data->GetCollect(L"field1"); //读取字段 } } catch (_com_error e) { conn->Close(); } CoUninitialize(); return 0;}整理了一下。 Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=icard;Data Source=(Local)\GSQL;User ID=sa;Password=admin; Provider=SQLOLEDB.1;Password=xxxx;Persist Security Info=True;User ID=sa;Initial Catalog=carddb;Data Source=127.0.0.1-----------这样就可以了。 怎样在dialog上显示个动画? 多视图如何获得视图指针 关于Vector的问题 请教一个关于在标签窗口中使用CTreeView时,显示Tree的问题 如何判断本机是WORKGROUP还是AD用户? 几个问题 用vc+ado怎么知道一个表有几个字段啊(就是几列)? [求助]如何利用CRecordSet类删除、修改excel里面的记录? 关于<<深入浅出mfc>>..... Cstring::GetLength(); 这个函数的返回值是多大? Installshield 支持多国语言安装包 串口程序
#include "stdafx.h"
#include<conio.h> #import "c:\program files\common files\system\ado\msado15.dll" no_namespace rename ("EOF", "adoEOF")int _tmain(int argc, _TCHAR* argv[])
{
_ConnectionPtr conn;
_RecordsetPtr data;
wchar_t temp[512];
CComQIPtr <Excel::_Worksheet> sheet(worksheet);
Excel::RangePtr range; try
{
conn.CreateInstance(__uuidof(Connection)); swprintf(temp, connectionString, accId, year);
conn->Open(temp, L"", L"", adModeUnknown); swprintf(temp, sql, expense, item_class, item_id, month);
data = conn->Execute(temp, NULL, adCmdText); int row , day; range = sheet->GetCells();
for(row = 4, day = 1; row < 35; row++, day++)
{
swprintf(temp, L"%02d日", day);
range->PutItem(row, 1, temp);
range->PutItem(row, 3);
range->PutItem(row, 4);
range->PutItem(row, 12);
} for(row = 4; !data->adoEOF; data->MoveNext(), row++)
{
day = data->GetCollect(L"field1");
day += 4;
while(row < day)
{
row++;
} range->PutItem(row, 3, data->GetCollect(L"field3"));
range->PutItem(row, 4, data->GetCollect(L"field2"));
range->PutItem(row, 12, data->GetCollect(L"field4")); } }
catch (_com_error e)
{
conn->Close();
throw e;
}
CoUninitialize(); return 0;
}
楼主不明白直接google“ADO”
// ado.cpp : 定义控制台应用程序的入口点。
//#include "stdafx.h"#import "c:\program files\common files\system\ado\msado15.dll" no_namespace rename ("EOF", "adoEOF")wchar_t *sql = L"select field1, ... from tableName where id=%d";
wchar_t *connectionString = L"Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=DBName;Data Source=.";int _tmain(int argc, _TCHAR* argv[])
{
_ConnectionPtr conn;
_RecordsetPtr data;
wchar_t temp[512];
try
{
conn.CreateInstance(__uuidof(Connection));
conn->Open(connectionString, L"", L"", adModeUnknown); //建立连接 int id = 3;
swprintf(temp, sql, id); //
data = conn->Execute(temp, NULL, adCmdText); int row , day; for(; !data->adoEOF; data->MoveNext()) //遍例所有记录
{
day = data->GetCollect(L"field1"); //读取字段
} }
catch (_com_error e)
{
conn->Close();
}
CoUninitialize(); return 0;
}整理了一下。
-----------
这样就可以了。