如何访问远程电脑上的MS SQL数据库并操作它
要求:使用ODBC的方式,例如我在服务器电脑上的代码如下
CDatabase db;
if(!db.Open(_T("FirstODBC"), // (系统源名)
FALSE, //bExclusive
FALSE, //bReadOnly
_T("ODBC; UID=sa; PWD=sys;"), //lpszConnect (与数据库的连接方式)
FALSE))
{ //bUseCursorLib
MessageBox("Could not open database","Could not open database",MB_OK);
return;
}
CUserConnect set(&db);//基类是CRecordset
try
{
set.Open();
}
catch (CDBException* pEx)
{
TCHAR szErrorMessage[1024];
if (pEx->GetErrorMessage(szErrorMessage, sizeof(szErrorMessage)))
{
MessageBox(szErrorMessage,szErrorMessage,MB_OK);
}
return;
}
try
{
set.AddNew();
}
catch (CDBException* pEx)
{
TCHAR szErrorMessage[1024];
if (pEx->GetErrorMessage(szErrorMessage, sizeof(szErrorMessage)))
{
MessageBox(szErrorMessage,szErrorMessage,MB_OK);
}
return;
}
LPCSTR IPAddress;
char szHostName[128]; //将本机的名称存入一维数组,数组名称为szHostName
struct hostent * pHost;
if(gethostname(szHostName,128)==0)
{
pHost = gethostbyname(szHostName);
for( int i = 0; pHost!= NULL && pHost->h_addr_list[i]!= NULL; i++ )
{
IPAddress=inet_ntoa (*(struct in_addr *)pHost->h_addr_list[i]);
}
}
set.m_id=0;
set.m_user_name=szHostName;
set.m_user_sex="wu";
set.m_address=IPAddress;
set.m_age=25;
set.m_zip="wu";
set.m_phone="13590363282";
try
{
set.Update();
}
catch (CDBException* pEx)
{
TCHAR szErrorMessage[1024];
if (pEx->GetErrorMessage(szErrorMessage, sizeof(szErrorMessage)))
{
MessageBox(szErrorMessage,szErrorMessage,MB_OK);
}
return;
}
set.Close();
db.Close();
这段代码在服务器端运行,可以将相关的数据存到数据库的表格中,我在客户端也想用这种方式修改服务器的数据库,请问该如何实现