2017-04-16 3 views
0

Ich möchte eine Tabelle erstellen und dieser Fehler tritt auf. Was muss ich reparieren?Fehler 1064 (42000): Sie haben einen Fehler in Ihrer SQL-Syntax; Überprüfen Sie das Handbuch, das Ihrer MySQL-Server-Version für die richtige Syntax entspricht?

mysql> create database mytest; 
Query OK, 1 row affected (0.00 sec) 
mysql> show databases; 

+--------------------+ 
| Database   | 
+--------------------+ 
| information_schema | 
| mysql    | 
| mytest    | 
| performance_schema | 
| phpmyadmin   | 
+--------------------+ 

5 rows in set (0.00 sec) 
mysql> use mytest; 
Database changed 
mysql> create table price(NAME varchar2(60), PRICE number(10)); 
ERROR 1064 (42000): 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 'varchar2(60), PRICE number(10))' at line 1 

Antwort

0

gibt es mehr Fehler in der Aussage:

1) Sie müssen Backticks verwenden, wenn Sie Schlüsselwörter als Feldnamen verwenden, wie name

2) gibt es keinen Datentyp VARCHAR2 verwenden VARCHAR statt

3 dort) nicht Datentyp NUMBER Verwendung INT statt:

CREATE TABLE price (
    `NAME` VARCHAR(60), 
    `PRICE` INT(10) 
); 

Probe

mysql> CREATE TABLE price (
    ->  `NAME` VARCHAR(60), 
    ->  `PRICE` INT(10) 
    ->); 
Query OK, 0 rows affected (0,03 sec) 

mysql> 
-1

ersetzen number(10) durch INTEGER(10). Es gibt keinen Datentyp number in mysql.

+0

auch VARCHAR2 ist unbekannt ein NAME muss in Backticks sein –

Verwandte Themen