未能将我的网页连接到数据库
更新:我错过了我应该使用MySql.Data.MySqlClient引用和MySqlConnection,因为我一直在尝试连接一个mysql服务器。 Java误导我,我可以轻松地连接两条线。 抱歉花时间**
我试图将我的网页连接到数据库。 为了生成表格,我可以使用java轻松连接,但无法使用C#/ Asp连接。
输出屏幕上的错误是:
在System.Data.dll中发生类型'System.Data.SqlClient.SqlException'的第一次机会异常
码:
try {
con = new SqlConnection("Data Source = urlhere ;" +
"uid = u_yucel;" +
"pwd = *****; " +
"database = u_yucel; " +
"connection timeout = 2");
cmd.CommandText = "select * from person";
con.Open();
cmd.Connection = con;
DropDownList1.DataSource = cmd.ExecuteReader();
DropDownList1.DataTextField = "name";
DropDownList1.DataBind();
}
catch (Exception ex)
{
Response.Write(ex.Message);
Console.WriteLine("123");
Response.Write(ex.StackTrace);
}
错误信息:
建立到SQL Server的连接时发生网络相关或实例特定的错误。 服务器未找到或无法访问。 验证实例名称是否正确,并将SQL Server配置为允许远程连接。 (提供程序:命名管道提供程序,错误:40 - 无法打开连接到SQL Server)在System.Data.SqlClient.SqlInternalConnection.OnError(SqlException异常,布尔breakConnection)在System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning()at System.Data.SqlClient.TdsParser.Connect(ServerInfo serverInfo,SqlInternalConnectionTds connHandler,Boolean ignoreSniOpenTimeout,Int64 timerExpire,布尔加密,布尔trustServerCert,布尔integratedSecurity)在System.Data.SqlClient.SqlInternalConnectionTds.AttemptOneLogin(ServerInfo serverInfo,字符串newPassword,布尔ignoreSniOpenTimeout ,System.Data.SqlClient.SqlInternalConnectionTds.OpenLoginEnlist(SqlConnection拥有对象,System.Data.SqlClient.SqlInternalConnectionTds.LoginNoFailover(ServerInfo serverInfo,String newPassword,Boolean redirectedUserInstance,SqlConnection owningObject,SqlConnectionString connectionOptions,TimeoutTimer超时) TimeoutTim 在System.Data.SqlClient.SqlInternalConnectionTds..ctor(DbConnectionPoolIdentity身份,SqlConnectionString connectionOptions,对象providerInfo,字符串newPassword,SqlConnection拥有对象,布尔redirectedUserInstance)在System.Data.SqlClient.SqlConnectionFactory上的超时,超时,SqlConnectionString connectionOptions,字符串newPassword,布尔redirectedUserInstance) .CreateConnection(DbConnectionOptions options,Object poolGroupProviderInfo,DbConnectionPool pool,DbConnection owningConnection)at System.Data.ProviderBase.DbConnectionFactory.CreatePooledConnection(DbConnection owningConnection,DbConnectionPool pool,DbConnectionOptions options)at System.Data.ProviderBase.DbConnectionPool.CreateObject(DbConnection owningObject)at System.Data.ProviderBase.DbConnectionPool.UserCreateRequest(DbConnection owningObject)at System.Data.ProviderBase.DbConnectionPool.GetConnection(DbConnection owningObject)at System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection 在DataDneme1.carSelect.rebind()中的System.Data.SqlClient.SqlConnection.Open()中的System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection,DbConnectionFactory connectionFactory)中的E: VisualStudioProjects DataDeneme1 DataDeneme1 carSelect .aspx.cs:第38行
您的连接字符串无效。 使用标准的.net提供程序连接字符串。 或者指定提供者。 请看这里的例子
http://www.connectionstrings.com/sql-server-2008
http://www.connectionstrings.com/sql-server-2005
服务器未找到或无法访问。
这可能是由于许多不同的原因造成的,所有这些都不能从我们的最终诊断出来。
您需要启动Profiler(如果您没有完整版本的Sql Server,则可能需要抓取快速版本)并观察连接。
你会发现
a) 没有连接尝试可见
这意味着您的连接字符串无效(请参阅Vadim关于良好链接的连接字符串),或者sql服务器没有监视TCP / IP上的连接。
或者,这可能意味着
b) 出于安全原因,连接被拒绝
这意味着您必须在服务器上配置安全性。
您无法连接到您的数据库。 你需要看看你的连接字符串是如何定义的(或者如果你丢了就发布它)
另外,如果您使用多个Web.config文件,请确保所有连接字符串都正确,或者使用正确的连接字符串运行Web.config文件。
链接地址: http://www.djcxy.com/p/56727.html