[英]C# - "Login failed for user 'Username'(SQL Server 2014)
我正在嘗試使用C#代碼連接到SQL Server 2014
<connectionStrings>
<add name="ConnectionString"
connectionString="Data Source=IP\\SQLNameSERVER,1433;Network Library=DBMSSOCN; Initial Catalog=MyDB; User ID=Username; Password=password;"/>
</connectionStrings>
string ConnectionString = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;
using (SqlConnection cn = new SqlConnection(ConnectionString))
{
query = "SELECT * FROM [MyTable]";
using (SqlCommand commandUserPortal = new SqlCommand(query, cn))
{
cn.Open();
}
}
但我收到一條錯誤消息:
用戶“用戶名”的登錄失敗。
當我使用相同的憑據通過SQL Server Management Studio連接到DB時,它工作正常,沒有任何問題。
用戶具有db_datareader
權限。
我也試過
<connectionStrings>
<add name="ConnectionString"
connectionString="Data Source=IP\\SQLNameSERVER,1433;Network Library=DBMSSOCN; Initial Catalog=MyDB; User ID=Username; Password=password;
providerName="System.Data.SqlClient"/>
</connectionStrings>
嘗試為您的數據庫更改sql server中的設置。 允許sql和Windows身份驗證。 有關圖像的步驟,請在此處檢查。 我希望您不使用Windows身份驗證,並且您的網絡也可以訪問數據庫服務器。 其他一切對我來說都很好。
嘗試更改您的連接字符串:
<add name="ConnectionString" connectionString="Data source=IP\SQLNameSERVER;Initial Catalog=DBname;User=Username;Password=Password; connection timeout=6000;" />
同時嘗試更改您的代碼:
從:
using (SqlConnection cn = new SqlConnection(ConnectionString))
{
query = "SELECT * FROM [MyTable]";
using (SqlCommand commandUserPortal = new SqlCommand(query, cn))
{
cn.Open();
}
}
至:
using (SqlConnection cn = new SqlConnection(ConnectionString))
{
query = "SELECT * FROM [MyTable]";
cn.Open();
using (SqlCommand commandUserPortal = new SqlCommand(query, cn))
{
}
}
使用以下內容作為連接字符串
<add name="DefaultConnection" connectionString="data source=192.168.0.1; initial catalog=DBNAME;persist security info=True;user id=UserId;password=Password;MultipleActiveResultSets=True ; Connect Timeout=10000" providerName="System.Data.SqlClient" />
在目錄中替換您的數據庫名稱,在用戶ID中替換用戶ID,並在密碼中替換passeord
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.