簡體   English   中英

與本地主機數據庫的連接錯誤 c#

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM