TableNames
са идентификатори, така че не трябва да се цитират с единични кавички. Тъй като името на таблицата, което сте използвали, не е запазена ключова дума, можете просто да премахнете тези обвиващи кавички,
INSERT INTO student (FirstName, LastName....
Когато обвиете нещо с единични кавички, това принуждава този обект да се превърне в низов литерал. Така че, когато идентификаторите са обвити с единични кавички, това означава, че те вече не са идентификатори.
Сървърът хвърля изключение, защото INSERT INTO
очаква идентификатор, а не низов литерал.
Когато случайно сте използвали име на таблица, което е MySQL Reserved Ключова дума
, не използвайте единични кавички, за да разделите идентификатора, но с backticks
.
Като странична бележка, заявката е уязвима с SQL Injection
ако стойността (s ) на променливите идват отвън. Моля, разгледайте статията по-долу, за да научите как да предотвратите това. С помощта на PreparedStatements
можете да се отървете от използването на единични кавички около стойностите.