ASP.NET中WEB.config连接网络服务器SQL 2005数据库,代码怎么写?

<add name="电影ConnectionString" connectionString="Data Source=hongdingjin-PC\SQLEXPRESS;Initial Catalog=电影;Integrated Security=True" providerName="System.Data.SqlClient" />
以上是原来在本地的服务器连接代码。
现在要连接网络服务器上的,数据库有以下信息,怎么写啊?
服务器IP:
数据库名:
数据库用户名:
数据库密码:

  ASP.NET程序中的web.config中的连接字符串为: <add name="Conn" connectionString="server=.;uid=sa;pwd=seeyon;database=Dsystem;" />,name是指的在程序写好的链接数据库的方法名,connectionString中就是我们与数据库连接配置参数:server表示数据库服务器的名字和IP地址,uid是指数据库的用户名,pwd是数据库登录密码,database是指数据库的名字。

  ASP.NET程序与sql server 2005数据库连接不单是需要在配置文件中配置好数据库名、用户名、密码、IP地址。还需要在程序中也要写好与数据库的连接方法,然后在web.config中来调用才能正常连接,这样程序在使用过程中才不会报与数据库连接错误。

  1、ASP.NET程序与sql server 2005数据库连接方法代码:(注:与数据库连接的方法有很多,但是都是大同小异)

using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using System.Configuration;
using System.Data.SqlClient;
using System.Data.OleDb;
using System.Data.Sql;
  namespace DLL
{
    public class DBHelper
    {
        public static string conn = ConfigurationManager.ConnectionStrings["Conn"].ToString();
        //public static string conn =ConfigurationManager.AppSettings["SqlConnString"].ToString();
        static SqlConnection con = null;
        /// <summary>
        /// 判断数据库连接状态
        /// </summary>
        /// <returns></returns>
        public static SqlConnection getConnection()
        {
            try
            {
                if (con == null)
                {
                    con = new SqlConnection(conn);
                }
                if (con.State == ConnectionState.Broken)
                {
                    con.Close();
                    con.Open();
                }
                if (con.State == ConnectionState.Closed)
                {
                    con.Open();
                }
                
            }
            catch (Exception ex)
            {
                
                throw ex;
            }
            return con;
          }
          public static SqlCommand NewMethod(string sql, SqlParameter[] par)
        {
            SqlCommand com = new SqlCommand(sql, getConnection());
            if (par != null)
            {
                foreach (SqlParameter parameter in par)
                {
                    if (parameter.Value == null)
                    {
                        parameter.Value = DBNull.Value;
                    }
                    com.Parameters.Add(parameter);
                    
                }
                
            }
            return com;
        }
        public static DataSet Dataset(string sql, SqlParameter[] par, string tableName)
        {
            DataSet set = new DataSet();
            SqlCommand comm = NewMethod(sql,par);
            if(tableName==null || tableName=="")
            {
                tableName = "tableName";
            }
            SqlDataAdapter dapter = new SqlDataAdapter(sql, getConnection());
            dapter.Fill(set,tableName);
            return set;
        }
        public static DataTable Table(string sql, SqlParameter[] par, string tableName)
        {
            DataTable table = new DataTable();
            try
            {
                table = Dataset(sql, par, tableName).Tables[0];
                return table;
            }
            catch (Exception ex)
            {
                
                throw ex;
            }
            
        }
        public static SqlDataReader Reader(string sql,SqlParameter[] par)
        {
            SqlDataReader red = null;
            SqlCommand comm = NewMethod(sql,par);
            try
            {
                red = comm.ExecuteReader();
            }
            catch (Exception ex)
            {
                red.Close();
                con.Close();
                throw ex;
            }
            return red;
        }
        public static int Execut(string sql, SqlParameter[] par)
        {
            int num = 0;
            SqlCommand com = NewMethod(sql, par);
            try
            {
                num = com.ExecuteNonQuery();
            }
            catch (Exception ex)
            {
                  num = 0;
            }
            con.Close();
            return num;
        }
        
    }
    
}

  2、web.config配置文件的连接代码为:

<?xml version="1.0" encoding="UTF-8"?>
<!-- 
    注意: 除了手动编辑此文件外,您还可以使用 
    Web 管理工具来配置应用程序的设置。可以使用 Visual Studio 中的
    “网站”->“Asp.Net 配置”选项。
    设置和注释的完整列表可以在
    machine.config.comments 中找到,该文件通常位于
      \Windows\Microsoft.Net\Framework\vx.x\Config 中 
-->
<configuration>
 <appSettings>
  </appSettings>
  <!-- 数据库连接字符串-->
  <connectionStrings>
    <add name="Conn" connectionString="server=.;uid=sa;pwd=seeyon;database=Dsystem;" />
  </connectionStrings>
 <system.web>
  <!--
            设置 compilation debug="true" 可将调试符号
            插入已编译的页面中。
            但由于这会影响性能,因此请仅在开发过程中将此值
            设置为 true。
        -->
  <compilation debug="true">
  </compilation>
  <!--
          通过 <authentication> 节可以配置
          安全身份验证模式,ASP.NET 
          使用该模式来识别来访用户身份。 
        -->
  <authentication mode="Windows" />
  <!--
           如果在执行请求的过程中出现未处理的错误,
           则通过 <customErrors> 节
           可以配置相应的处理步骤。具体而言,
           开发人员通过该节可配置要显示的 html 错误页,
           以代替错误堆栈跟踪。
             <customErrors mode="RemoteOnly" defaultRedirect="GenericErrorPage.htm">
             <error statusCode="403" redirect="NoAccess.htm" />
             <error statusCode="404" redirect="FileNotFound.htm" />
           </customErrors>
        -->
 </system.web>
    <system.webServer>
        <defaultDocument>
            <files>
                <add value="Login.aspx" />
            </files>
        </defaultDocument>
    </system.webServer>
</configuration>
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-10-10
连接是一样的,首先你要知道IP 和网上数据库的名 用户名及密码,重要的是网络上的都有动态端口,或实例名,你需要管空间商要,连接方法是IP处写例:192.106.13.10,333(333是端口号)
第2个回答  推荐于2017-11-25
Data Source=服务器IP地址,端口号;Database=数据库名;user id=用户名;password=密码
例如:Data Source=192.168.1.2,1423;Database=test;user id=sa;password=123456
其中端口号(1423)是可选的,看服务器的设置。
无需端口号则为:Data Source=192.168.1.2;Database=test;user id=sa;password=123456追问

按你的方法连接也不行啊,出现错误 :
在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误。未找到或无法访问服务器。请验证实例名称是否正确并且 SQL Server 已配置为允许远程连接。 (provider: TCP 提供程序, error: 0 - 由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败。)

追答

是局域网内的机子?确定服务器主机数据库配置允许远程连接?

追问

我的电脑是局域网内的,校园网,但是数据库服务器是外网的,182.18.22.140的

追答

在命令行下输入telnet 182.18.22.140 1433试试看能不能连通先
你的操作系统是XP的吗?
打开SQL Server 配置管理器看下TCP/IP协议开启了没有,默认端口1433,是否已启用
打开SQL Server 外围应用配置器->服务和连接的外围应用配置器,SQLEXPRESS的远程连接勾选本地连接和远程连接->勾选同时使用TCP/IP和named pipes
还不行你把防火墙关了再试试吧!再不行好好去研究。。。呵呵

本回答被提问者和网友采纳
相似回答