[英]Connection error to localhost database c#
嗨,我正在嘗試使用 System.Data.SqlClient 連接到數據庫。 我想我的一切都是正確的,但出於某種原因,Visual Studio 給出了一個錯誤:
編輯:事實證明,當我的數據庫是 MySql 時,我很愚蠢並使用 System.Data.SqlClient,所以我將其更改為 MySql.Data.MySqlClient 並更改了所有變量方法和所有內容。 我還將它使用的端口更改為 3306,因為它是我在 xampp 中為 mysql 設置的端口。 雖然我仍然收到一條錯誤消息:
System.ArgumentException:“連接選項‘服務器’重復。”
現在要回答更多問題,我不知道實例的名稱是什么,但我從來沒有設置任何所以 Idk,如果有或沒有(對不起,我不是很先進)。 我沒有向連接字符串添加密碼,因為我擁有的唯一用戶是沒有任何密碼的 root。 我想我看到有些人使用了諸如 TrusedConnection=true 之類的東西,但我不知道在這里這樣做是否正確。 我的 MySql 版本是 15.1。 這是更新后的代碼:
using System;
using MySql.Data.MySqlClient;
namespace ConsoleApp2
{
class Program
{
private static void Main()
{
string conn = "Initial Catalog=world.sql;user=root;Server=127.0.0.1,3306";
MySqlConnection myConnection = new MySqlConnection(conn);
MySqlDataReader myReader = null;
string sql = "SELECT * FROM coutry";
MySqlCommand myCommand = new MySqlCommand(sql, myConnection);
myConnection.Open();
myReader = myCommand.ExecuteReader();
while (myReader.Read())
{
for (int i = 0; i < myReader.FieldCount; i++)
{
Console.WriteLine(myReader[i].ToString());
}
}
myConnection.Close();
}
}
}
使用這樣的連接字符串格式: Server=localhost;User=user_name;Database=db_name;Port=3306;Password=password;SSL Mode=None
,除此之外,永遠不要使用 root 帳戶。 只需創建一個有密碼的帳戶。 如果將這些內容應用到代碼中,錯誤應該會消失。
在 C# 中使用此連接
Data Source=yourIpAddress,yourPort;Initial Catalog=YourdatabaseName;User ID=sqlserverUsername;Password=sqlserverpassword;MultipleActiveResultSets=True;" providerName="System.Data.EntityClient";
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.