Ошибка мастера настройки источника данных. Нужна помощь
При попытке вставить объекты базы данных из моего access(2016) в мой C#(2015) я получаю непрерывную ошибку, когда нажимаю кнопку finish of ...
при обработке объектов базы данных произошла одна или несколько ошибок
<новый пользователь>
Не удалось получить информацию о схеме для таблицы или просмотра NewUser.'
Это мой текущий код...
Кто-нибудь может мне в этом помочь?
OleDbConnection connection = new OleDbConnection(@"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\DatabaseEmployees.accdb;Persist Security Info=True"); OleDbCommand command = new OleDbCommand(); int i = 0; if (IDtbx.Text == string.Empty) { MessageBox.Show("Please log in"); } command = new OleDbCommand("select count(*)from NewUser where Username= '" + IDtbx.Text + "' AND Password= '" + PSWtbx.Text + "'", connection); if (connection.State == ConnectionState.Closed) { connection.Open(); i = (int)command.ExecuteScalar(); } connection.Close(); if (i > 0) { MainSystem mainForm = new MainSystem(); mainForm.FormClosed += new FormClosedEventHandler(Login_FormClosed); mainForm.Show(); this.Hide(); LoginError.Visible = false; } else { LoginError.Visible = true; } }
Что я уже пробовал:
Я попробовал использовать все три другие мои базы данных, связанные с C#, удалив базу данных и начав все сначала
Suvendu Shekhar Giri
Вы уверены, что ваша таблица называется "NewUser"?
Обычно люди называют его "пользователи"/"UserLogins"/другие, и именно поэтому спрашивают.
Member 13512434
Да я дважды проверил и это правильное имя которое я использую
Sinisa Hajnal
Прежде всего, вы никогда не должны вставлять пользовательский ввод в запрос базы данных. Google SQL Injection для получения более подробной информации.
Ошибка может быть вызвана отсутствием интервала между count(*)от...кроме этого, есть ли схема в Access? Наконец, я бы использовал SQL Express, а не Access :)
Member 13512434
Извините, что вы подразумеваете под схемой в Access, пожалуйста? Я очень новичок в этом деле