Форум программистов, компьютерный форум, киберфорум
Наши страницы
C# .NET
Войти
Регистрация
Восстановить пароль
 
vovanchik520
0 / 0 / 0
Регистрация: 23.05.2014
Сообщений: 12
1

Ошибка синтаксиса MySQL в C#

03.06.2014, 17:04. Просмотров 246. Ответов 9
Метки нет (Все метки)

Всем привет! Уже на многих форумах посмотрел и знаю что многие сталкивались с данной ошибкой: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'п/п, Фамилия и инициалы, Работа №1) values('1','1', at line 1. В этой ошибке п/п, фамилия и инициалы, Работа № 1 - названия моих колонок в MySQL. В качестве программы для работы использую MySQL Workbench. Подскажите пожалуйста где можно исправить эту ошибку? Либо в самой программе, либо в коде? Вот код C#:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
  private void button2_Click(object sender, EventArgs e)
        {
                string constring= "datasource=localhost;port=3306;username=root;password=root";
                string Query = "insert into databasestudent.ish409 (№ п/п, Фамилия и инициалы, Работа № 1) values('" + this.nomer_txt.Text + "', '" + this.fic_txt.Text + "', '" + this.naimenovanie_txt.Text + "') ;";
            MySqlConnection conDataBase = new MySqlConnection(constring);
            MySqlCommand cmdDataBase = new MySqlCommand(Query, conDataBase);
            MySqlDataReader myReader;
            try{
                conDataBase.Open();
                myReader = cmdDataBase.ExecuteReader();
                    MessageBox.Show("Оценка поставлена");
                while(myReader.Read()){
 
 
                    }
 
                }catch(Exception ex){
 
                    MessageBox.Show(ex.Message);
                }
        }
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.06.2014, 17:04
Ответы с готовыми решениями:

Ошибка в запросе на Редактирование: ошибка синтаксиса (пропущен оператор)
string strSQL1 = "UPDATE SET .='" + dataGridView1.CurrentRow.Cells.Value.ToString() + "',.='" +...

Ошибка в запросе на вставку: ошибка синтаксиса
private void button2_Click(object sender, EventArgs e) { goods = null; ...

Ошибка синтаксиса
Выводит ошибку в строке OleDbCommand comm = new...

Ошибка синтаксиса в предложении FROM
Я написал простенький код на C#: string CommandText = "SELECT , x, y FROM all"; ...

Ошибка синтаксиса в выражении
Здравствуйте! В общем такая проблема: делаю запрос к базе, чтобы в зависимости от значения,...

9
kolorotur
Эксперт .NET
10495 / 8682 / 2160
Регистрация: 17.09.2011
Сообщений: 14,901
Завершенные тесты: 1
03.06.2014, 17:26 2
Цитата Сообщение от vovanchik520 Посмотреть сообщение
№ п/п, Фамилия и инициалы, Работа № 1
Это такие именя колонок? Сурово.

Их тоже одинарными кавычками обложить надо.
0
vovanchik520
0 / 0 / 0
Регистрация: 23.05.2014
Сообщений: 12
03.06.2014, 17:33  [ТС] 3
kolorotur, обложил одинарными кавычками, все равно та же ошибка
0
kolorotur
Эксперт .NET
10495 / 8682 / 2160
Регистрация: 17.09.2011
Сообщений: 14,901
Завершенные тесты: 1
03.06.2014, 17:35 4
Цитата Сообщение от vovanchik520 Посмотреть сообщение
обложил
Кого?
0
vovanchik520
0 / 0 / 0
Регистрация: 23.05.2014
Сообщений: 12
03.06.2014, 17:37  [ТС] 5
kolorotur, название колонок
0
kolorotur
Эксперт .NET
10495 / 8682 / 2160
Регистрация: 17.09.2011
Сообщений: 14,901
Завершенные тесты: 1
03.06.2014, 17:45 6
vovanchik520, вы первый раз написали запрос неправильно.
Откуда мне знать, что второй раз вы тоже не ошиблись — я же мысли читать не умею.

Если говорите, что исправили, то показывайте как именно исправили.
0
vovanchik520
0 / 0 / 0
Регистрация: 23.05.2014
Сообщений: 12
03.06.2014, 17:49  [ТС] 7
kolorotur, ладно, вот код
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
   private void button2_Click(object sender, EventArgs e)
        {
                string constring= "datasource=localhost;port=3306;username=root;password=root";
                string Query = "insert into databasestudent.ish409 ('№ п/п', 'Фамилия и инициалы', 'Работа № 1') values('" + this.nomer_txt.Text + "', '" + this.fic_txt.Text + "', '" + this.naimenovanie_txt.Text + "') ;";
            MySqlConnection conDataBase = new MySqlConnection(constring);
            MySqlCommand cmdDataBase = new MySqlCommand(Query, conDataBase);
            MySqlDataReader myReader;
            try{
                conDataBase.Open();
                myReader = cmdDataBase.ExecuteReader();
                    MessageBox.Show("Оценка поставлена");
                while(myReader.Read()){
 
 
                    }
 
                }catch(Exception ex){
 
                    MessageBox.Show(ex.Message);
                }
        }
0
kolorotur
Эксперт .NET
10495 / 8682 / 2160
Регистрация: 17.09.2011
Сообщений: 14,901
Завершенные тесты: 1
03.06.2014, 17:52 8
Цитата Сообщение от vovanchik520 Посмотреть сообщение
C#
1
"insert into databasestudent.ish409 ('№ п/п', 'Фамилия и инициалы', 'Работа № 1') values('" + this.nomer_txt.Text + "', '" + this.fic_txt.Text + "', '" + this.naimenovanie_txt.Text + "')
Все колонки в базе имеют тип текст?
0
vovanchik520
0 / 0 / 0
Регистрация: 23.05.2014
Сообщений: 12
03.06.2014, 17:59  [ТС] 9
kolorotur, нет, не все, колонки № п/п и Работа № 1 имеют тип INT (число)
0
kolorotur
Эксперт .NET
10495 / 8682 / 2160
Регистрация: 17.09.2011
Сообщений: 14,901
Завершенные тесты: 1
03.06.2014, 18:23 10
vovanchik520, тогда для значений уберите там кавычки — они нужны только для строк или дат.
C#
1
"insert into databasestudent.ish409 ('№ п/п', 'Фамилия и инициалы', 'Работа № 1') values(" + this.nomer_txt.Text + ", '" + this.fic_txt.Text + "', " + this.naimenovanie_txt.Text + ")"
0
03.06.2014, 18:23
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.06.2014, 18:23

Ошибка при записи в бд из текст боксов "Ошибка синтаксиса в инструкции INSERT INTO"
Пытаюсь добавить в базу информацию из разных Текст боксов... Но почему то получаю...

Ошибка синтаксиса в SQL-запросе
Добрый вечер у меня в программе выводит ошибку: You have an error in your SQL syntax; check the...

Ошибка синтаксиса в инструкции INSERT INTO
OleDbDataAdapter thisAdapter = new OleDbDataAdapter("select * from Заказ", myCon); ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru