ishuishika Ответов: 3

Ошибка C# (ключевое слово не поддерживается: 'username')


Привет,

Я хочу создать резервный источник данных. когда я ввожу источник данных, имя пользователя и пароль для подключения, он показывает ошибку, так как ключевое слово не поддерживается: "имя пользователя". Пожалуйста, помогите мне в этом...

Заранее спасибо.

Что я уже пробовал:

public partial class Backup_or_Restore_Data : Form
    {
        private SqlConnection con;
        private SqlCommand command;
        private SqlDataReader reader;
        string sql = "";
        string connectionString = "";

 private void button1_Click(object sender, EventArgs e)
        {
            try
            {
                connectionString = "Data Source = " + textBox1.Text + "; UserName = " + textBox2.Text + "; Password = " + textBox2.Text + "";
                con = new SqlConnection(connectionString);
                con.Open();
                sql = "EXEC sp_databases";
                command = new SqlCommand(sql, con);
                reader = command.ExecuteReader();
                comboBox1.Items.Clear();
                while (reader.Read());
                {
                    comboBox1.Items.Add(reader[0].ToString());

                }

            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }

        }

3 Ответов

Рейтинг:
6

phil.o

Вы используете тот же самый элемент управления (textBox2) для идентификатора пользователя и пароля.
Возможно ли, что вы не смогли использовать правильное текстовое поле для пароля?

В качестве дополнительного замечания, вы должны взять привычку переименовывать свои элементы управления и давать им значимые имена. Это позволит вам очень быстро обнаружить такие ошибки. Сравнивать:

connectionString = $"Data Source = {tbDataSource.Text}; UserId = {tbUserId.Text}; Password = {tbPassword.Text}"


Рейтинг:
27

CPallini

Проверьте строку подключения, требуемую вашим ядром базы данных (например SqlServer требует 'User Id' вместо 'UserName'.


ishuishika

Привет Сэр,

Большое вам спасибо за ваш ответ, сэр..
Я изменил его как идентификатор пользователя. Но теперь я получаю ошибку "вход не удался для пользователя "admin""

здесь admin-это идентификатор пользователя, который я использую.

CPallini

Попробуйте подключиться к компоненту database engine из его стандартного интерфейса командной строки. Затем точно сравните переданные учетные данные с теми, которые указаны в вашем коде.

Рейтинг:
12

MadMyche

Предпочтительным термином является User ID, нет имя пользователя

Ссылка:
Синтаксис строки подключения - ADO.NET | Microsoft Docs[^]


Существует также SqlConnectionStringBuilder Класс, который вы можете использовать для построения и управления соединительными жалами
Класс SqlConnectionStringBuilder (System.Data.SqlClient) | Microsoft Docs[^]


ishuishika

Привет,

Но все равно я получаю сообщение об ошибке "вход в систему не удался для пользователя"admin"".. Пожалуйста, помогите мне

Afzaal Ahmad Zeeshan

Это означает, что пароль неверен. Вы используете одинарные кавычки вокруг пароля? Попробовать это.