我的项目大概是这样的: 
  
有一个数据库在服务器上,其他电脑作为客户端连接到此 
  
数据库,并对其进行操作。 
  
我的问题是 
  
1。在服务器上如何设置此数据库才能使它被共享,需要什么软件一类的吗? 
  
   还是在控制面板的odbc中设置为文件dsn就可以了?(操作系统为win2000) 
  
2。在客户端的客户端软件如何连接到此数据库?在CDatabase的Open()的 
  
   connectstring如何设置?

解决方案 »

  1.   

    数据库是SQL Server吗?
    如果是和共享没有关系,须使用SQLConfigDataSource配置ODBC数据源即可.
    在用OpenEx(_T("DSN=CASEDB;UID=;PWD="),CDatabase::noOdbcDialog);
      

  2.   

    CString szConfig("DSN=CASEDB");
    szConfig += '\0';
    szConfig += "Server=";
    szConfig += 服务器名;//---
    szConfig += '\0';
    szConfig += "Database=";
    szConfig += 数据库名;//---
    szConfig += '\0';
    szConfig += "Driver=C:\WINNT\System32\SQLSRV32.dll";
    szConfig += '\0';
    szConfig += "LastUser=sa";
    szConfig += '\0';
    szConfig += "Description=Testing...";if (!SQLConfigDataSource(NULL,ODBC_ADD_DSN,"SQL Server\0",szConfig))
       return FALSE;
      

  3.   

    1.不是你想象的那么复杂,在程序中填写正确的连接字符串就能连接。
    一般填写ip就能连上。2.建议你用ado,其他的已经过时。
    http://www.csdn.net/Develop/Read_Article.asp?Id=15019
      

  4.   

    数据库不是sql server是access的.mdb如何设置和连接?sorry,刚才没说清楚
      

  5.   

    如果是Access数据库的话,须共享.mdb存放的文件夹。CString szConfig("DSN=temp");
            szConfig += '\0';
            szConfig += "DBQ=";
            szConfig += szPath + "\\CASE.mdb";  //此处是.mdb存放的路径
            szConfig += '\0';
            szConfig += "FIL=MS Access";
            szConfig += '\0';if (!SQLConfigDataSource(NULL,ODBC_ADD_DSN,"Microsoft Access Driver (*.mdb)\0",szConfig))
       return FALSE;return TRUE;
    CDatabase m_pDb;
    m_pDb.OpenEx(_T("DSN=temp;UID=;PWD="),CDatabase::noOdbcDialog);
    .......最好用Sql Server + ADO.
      

  6.   

    smallbutton(星星)所说的路径该怎么写?比如服务器地址是10.18.18.18 数据库在服务器上的路径为c:\database\db.mdb
      

  7.   

    CString szConfig("DSN=temp");
            szConfig += '\0';
            szConfig += "DBQ=";
            szConfig += "\\\\10.18.18.18\\database\\db.mdb";
            szConfig += '\0';
            szConfig += "FIL=MS Access";
            szConfig += '\0';共享database文件夹.