.Net C#如何连接外部SQL Server数据库?OleDb还是其他?

Vil*_*ius 5 .net c# sql database oledb

嗨,我想知道如何连接到C#,.NET中的外部SQL Server数据库?

例如,如果我有参数:

SQL信息

  • Url到数据库(也在整个浏览器中):Sqlweb.companyname.com
  • 数据库用户名:username
  • 服务器:Dcms-xxx
  • Databasename:databaseName
  • Databasepassword:密码

我知道如何连接到内部: Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + System.AppDomain.CurrentDomain.BaseDirectory + "..\\Files\\MapPlaces\\Database.mdb;";

但外部怎么样?

我试过了 :

 string nowConString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Sqlweb.companyname.com;Initial Catalog = databaseName; User Id = Username; Password = Password;";

System.Data.OleDb.OleDbConnection dbcon = new System.Data.OleDb.OleDbConnection(nowConString);

string sql = "SELECT * FROM XXXTable";

dbcon.Open();

System.Data.OleDb.OleDbCommand cmd = new System.Data.OleDb.OleDbCommand(sql, dbcon);

System.Data.OleDb.OleDbDataReader reader;

reader = cmd.ExecuteReader();

ScriptStuff.Append("Reader created!<br/>");

while (reader.Read())
{
    string companyName = reader.GetValue(1).ToString();

    ScriptStuff.Append(companyName+"<br/>");

}
Run Code Online (Sandbox Code Playgroud)

不工作 !谢谢您的帮助 !

编辑评论:

是的,这是我的错误,谢谢.由于第一个是访问,而第二个是SQL Server.它是SQL Server 2005.但我是.net的新手以及所有......我已经找到了第一个和第二个connectionstring.com但我无法找到或理解如何使用它...

你可以帮忙,只是发布孔连接?谢谢 - Vilius 7分钟前

我的意思是我还需要使用OleDB吗?应该有"Provider = Microsoft.Jet.OLEDB.4.0;" 在那个连接字符串?我在哪里发布什么(服务器(即Dcms-xxx),或者sql server(sqlweb.companyname.com)的url)?谢谢你的帮助 ! -

tsk*_*bru 1

我会在我的app/web.config 中添加一个connectionString。

<connectionStrings>
    <add name="AspnetdbConnectionString"
        connectionString="Data Source=<databaseadress>;Initial Catalog=<database>;User Id=<user>;Password=password>"
        providerName="System.Data.SqlClient"
    />
</connectionStrings>
Run Code Online (Sandbox Code Playgroud)

上面的示例是如何为 MSSQL 连接指定连接字符串,下面是使用该连接字符串的方法。

 using (SqlConnection cn = new SqlConnection(ConfigurationManager.ConnectionStrings["AspnetdbconnectionString"].ConnectionString))
        {
            cn.Open();
            using (SqlCommand cm = cn.CreateCommand())
            {
                cm.CommandType = CommandType.Text;
                cm.CommandText = "SELECT * FROM ...";
                using (SafeDataReader dr = new SafeDataReader(cm.ExecuteReader()))
                {
                    while (dr.Read())
                    {
                        // do stuff
                    }
                }
            }
        }
Run Code Online (Sandbox Code Playgroud)