请问:我在CS模式下要进行数据库的远程连接该如何写代码,开发语言C#.目的:像QQ一样在本地计算机上可以对远程服务器上的数据库进行连接访问。

解决方案 »

  1.   

    SqlConnection con = new SqlConnection("server=192.168.1.33;database=BookShop;Uid=Sa;Pwd=Sa");
            con.Open();
            SqlCommand com = new SqlCommand();
            com.Connection = con;
            com.CommandType = CommandType.StoredProcedure;
            com.CommandText = type;
            foreach (SqlParameter p in par)
            { com.Parameters.Add(p); }
            SqlDataAdapter da = new SqlDataAdapter(com);
            DataTable dt = new DataTable();
            da.Fill(dt);
            int i = dt.Rows.Count;
            con.Close();
            return i;
      

  2.   

    如果是局域网内,一般是直接连接
    如果是外网的话,一般是用webservice
      

  3.   

    SqlConnection con = new SqlConnection("Data Source=192.168.1.33;Initial CataLog=BookShop;Uid=Sa;Pwd=Sa"); 
      

  4.   

    // "uid=sa":连接数据库的用户名为sa.
                // "password=":连接数据库的验证密码为空.他的别名为"pwd",所以我们可以写为"pwd=".
                // "initial catalog=Northwind":使用的数据源为"Northwind"这个数据库.他的别名为"Database",本句可以写成"Database=Northwind".
                // "Server=YourSQLServer":使用名为"YourSQLServer"的服务器.他的别名为"Data Source","Address","Addr".
                // " Connect Timeout=30":连接超时时间为30秒.(根据情况添加)
                // PS:
                //  1.你的SQL Server必须已经设置了需要用户名和密码来登录,否则不能用这样的方式来登录.如果你的SQL Server设置为Windows登录,那么在这里就不需要使用"uid"和"password"这样的方式来登录,而需要使用"Trusted_Connection=SSPI"来进行登录.
                //  2. 如果使用的是本地数据库且定义了实例名,则可以写为"Server=(local)\实例名";如果是远程服务器,则将"(local)"替换为远程服务器的名称或IP地址.
                string strConnection = "Trusted_Connection=SSPI;";
                strConnection += "database=NTF_Navision_enlistment60;Server=CAIXIATA-6BE823;";
                strConnection += "Connect Timeout=30";
    本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/LCL_data/archive/2009/04/30/4139145.aspx
      

  5.   

    用 webservice 的代码有怎样啊?
    我很弱哈
    还有4楼的返回行数,到底有啥用呀?
      

  6.   

    4楼的代码
    foreach (SqlParameter p in par) 
            { com.Parameters.Add(p); } 
    这句什么作用啊
    不会是逐行加载数据吧?
      

  7.   

     存储过程  
     --创建链接服务器   
      exec   sp_addlinkedserver     'srv_lnk','','SQLOLEDB','远程服务器名或ip地址'   
      exec   sp_addlinkedsrvlogin   'srv_lnk','false',null,'用户名','密码'   
      go   
        
      --查询示例   
      select   *   from   srv_lnk.数据库名.dbo.表名   
        
      --导入示例   
      select   *   into   表   from   srv_lnk.数据库名.dbo.表名   
        
      go   
      --以后不再使用时删除链接服务器   
      exec   sp_dropserver   'srv_lnk','droplogins'