Diskuze: maria db syntax error

Ostatní jazyky SQL SQL a databáze maria db syntax error

Aktivity (1)
Avatar
watershield
Člen
Avatar
watershield:1. července 16:53

mám xampp server na windows 10 s maria db sql. přihlašuji se -u root localhost.
po zadání CREATE DATABASE publications; hlásí syntax error. může někdo pomoci? děkuji moc předem

 
Odpovědět 1. července 16:53
Avatar
Jindřich Máca
Tým ITnetwork
Avatar
Odpovídá na watershield
Jindřich Máca:1. července 17:04

Ahoj, to je docela divné. Můžeš sem prosím hodit celý výpis toho procesu včetně té chyby? Dost by to pomohlo. :-)

 
Nahoru Odpovědět 1. července 17:04
Avatar
watershield
Člen
Avatar
Odpovídá na Jindřich Máca
watershield:1. července 17:16

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '-u root localhost
ahoj Jindřichu, moc děkuju za pomoc!!!

 
Nahoru Odpovědět 1. července 17:16
Avatar
Jindřich Máca
Tým ITnetwork
Avatar
Odpovídá na watershield
Jindřich Máca:1. července 22:47

Dobře, nejdřív jestli to opravdu chápu správně, tak se tedy připojuješ/přih­lašuješ přes konzoli a to pomocí příkazu:

mysql -u root -p -h localhost

A potom se pokoušíš vytvořit novou databázi pomocí příkazu:

CREATE DATABASE publications;

A ono to napíše tuhle chybu?

 
Nahoru Odpovědět 1. července 22:47
Avatar
watershield
Člen
Avatar
Odpovídá na Jindřich Máca
watershield:2. července 18:00

Ahoj,
přesně tak. Bez přihlášení jako root funguje show databases, jakmile se přihlásím ohlásí chybu. Díval jsem se přímo na web mariadb a tam nic víc není ani v diskuzi o problémech. Připojuji kopii z cmd ovládání mariadb.
C:\xampp\mysql\bin>mys­ql.exe
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 2
Server version: 10.1.26-MariaDB mariadb.org binary distribution

Copyright (c) 2000, 2017, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]> mysql -u root -p -h localhost
-> SHOW DATABASES;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'mysql -u root -p -h localhost
SHOW DATABASES' at line 1
MariaDB [(none)]> SHOW DATABASES;
+--------------------+

Database

+--------------------+

information_schema
test

+--------------------+
2 rows in set (0.00 sec)

MariaDB [(none)]> CREATE DATABASE publications;
ERROR 1044 (42000): Access denied for user ''@'localhost' to database 'publications'
MariaDB [(none)]>

 
Nahoru Odpovědět 2. července 18:00
Avatar
Jindřich Máca
Tým ITnetwork
Avatar
Odpovídá na watershield
Jindřich Máca:2. července 23:55

Proto jsem chtěl hned na začátku celý tenhle podrobný výpis. Důvodem, proč to nefunguje je, že tam ty příkazy zadáváš úplně špatně. :D

Jen tak pro ujasnění i vysvětlení, nejdříve co děláš:

C:\xampp\mysql\bin>mysql.exe

Tímhle se přihlásíš do té mariadb jako host a už jsi rovnou v SQL konzoli.

Následně zadáš:

mysql -u root -p -h localhost SHOW DATABASES;

Což je ale už v této konzoli bráno jako jeden SQL příkaz (nový řádek se ignoruje, rozhodující je středník). A tohle rozhodně není validní SQL příkaz a tím pádem logicky dostaneš syntax error.

A teď, co by jsi měl dělat. Nejdříve se přihlásit do mariadb jako root uživatel tímto příkazem:

C:\xampp\mysql\bin>mysql.exe -u root -p -h localhost

Tím se tedy dostaneš do SQL konzole, ale tentokrát už jako administrátor (root).

A následně v této konzoli zadat validní SQL příkaz pro vytvoření nové databáze:

CREATE DATABASE publications;

Takhle by to mělo bez problémů fungovat. :)

 
Nahoru Odpovědět 2. července 23:55
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 6 zpráv z 6.