Выброшено исключение: 'system.data.oledb.oledbexception' in system.data.dll system.data.oledb.oledbexception (0x80040e14): синтаксическая ошибка (отсутствует оператор) в выражении запроса
Я практикую свой собственный проект, но у меня есть синтаксическая ошибка, которую я не могу понять.
Это класс курса, который имеет свойства courseID, courseName, description и creditHour. Метод DBSetup() подключается к базе данных. Метод InsertDB () - это вставка 4 значений в базу данных.
Идентификатор_курса, CourseName, описание несколько строк. CreditHour - это int.
public string cmd; public void InsertDB() { DBSetup(); cmd = "INSERT into Patient values(" + getCourseID() + "," + "'" + getCourseName() + "'," + "'" + getDescription() + "'," + getCreditHour() + ")"; OleDbDataAdapter2.InsertCommand.CommandText = cmd; OleDbDataAdapter2.InsertCommand.Connection = OleDbConnection2; Console.WriteLine(cmd); try { OleDbConnection2.Open(); int n = OleDbDataAdapter2.InsertCommand.ExecuteNonQuery(); if (n == 1) Console.WriteLine("Data Inserted..."); else Console.WriteLine("ERROR: Inserting Data"); } catch (Exception ex) { Console.WriteLine(ex); } finally { OleDbConnection2.Close(); } } // end InsertDB()
Что я уже пробовал:
Я думаю, что синтаксис строки cmd неверен. Я могу неправильно ставить кавычки и двойные коуты. Я пытался понять это в течение многих часов. Я не могу этого понять.