425 Stimmen

Fehler 1046 Keine Datenbank ausgewählt, wie löse ich das?

Fehler SQL-Abfrage:

--
-- Datenbank: `work`
--
-- --------------------------------------------------------
--
-- Tabellenstruktur für Tabelle `administrators`
--
CREATE TABLE IF NOT EXISTS `administrators` (

`user_id` varchar( 30 ) NOT NULL ,
`password` varchar( 30 ) NOT NULL ) ENGINE = InnoDB DEFAULT CHARSET = latin1;

MySQL sagt:

#1046 - Es wurde keine Datenbank ausgewählt

brauche hier etwas Hilfe.

14 Stimmen

Falls jemand interessiert ist, kann auch der Datenbankname über den CLI-Befehl ohne Bearbeitung der Importdatei festgelegt werden. mysql -u root -p databasename < import.sql

0 Stimmen

Was mir passiert ist: Ich habe ein Schema erstellt, den Namen der Datenbank ausgefüllt und dann stand dort "Fehler, keine Datenbank ausgewählt". Ich habe Workbench neu geöffnet und sehe die Datenbank, die ich gerade erstellen wollte. Dann habe ich die erstellte Datenbank ausgewählt, eine .sql-Datei geöffnet, beide CREATE DATABASE und USE DATABASE-Anweisungen ausgeführt, aber es kam wieder die Meldung "Fehler, keine Datenbank ausgewählt". Nachdem ich Workbench erneut geöffnet habe, waren die Tabellen alle erstellt. Mac-System, Workbench 6.3.3.

0 Stimmen

Denken Sie daran, wenn Sie sich auf *nix-Systemen befinden und Ihr Datenbankname ein $ hat, um den Namen in einfache Anführungszeichen zu setzen.

4voto

Sanket H patel Punkte 91

Überprüfen Sie zunächst, ob Sie die Datenbank erstellt haben, die Sie möchten.

Wenn Sie die Datenbank nicht erstellt haben, müssen Sie diese Abfrage ausführen:

CREATE DATABASE data_base_name

Wenn Sie die Datenbank bereits erstellt haben, können Sie einfach diese Abfrage ausführen und Sie können eine Tabelle in Ihrer Datenbank erstellen:

CREATE TABLE `data_base_name`.`table_name` (
 _id int not null,
 LastName varchar(255) NOT NULL,
 FirstName varchar(255),
 Age int,
 PRIMARY KEY (_id)
);

2voto

David Punkte 629

In Amazon RDS funktioniert es nicht nur, use my-favorite-database zu schreiben, wenn der Name dieser Datenbank Bindestriche enthält. Außerdem funktionieren auch keine der folgenden Optionen:

use "my-favorite-database"
use `my-favorite-database`
use 'my-favorite-database'

Klicken Sie einfach auf die Schaltfläche "Datenbank ändern", wählen Sie die gewünschte Datenbank aus und voilà.

2voto

iversoncru Punkte 557

Zitat ivan n: "Wenn Sie eine Datenbank importieren, müssen Sie zuerst eine Datenbank mit dem gleichen Namen erstellen, diese auswählen und dann die vorhandene Datenbank IMPORTIEREN. Ich hoffe es funktioniert für dich!"

Dies sind die Schritte: Erstellen Sie eine Datenbank, z.B. my_db1, utf8_general_ci. Klicken Sie dann, um in diese Datenbank zu gelangen. Klicken Sie dann auf "Importieren" und wählen Sie die Datenbank aus: my_db1.sql

0 Stimmen

Dies sollte ein Kommentar unter Ivans Antwort sein, damit er seine Antwort ändern kann, um Ihre Schritte einzuschließen.

1voto

Wenn Sie nach der Lösung suchen, wenn dieser Fehler bei mysqldump anstelle von mysql auftritt, versuchen Sie diese Lösung, die ich zufällig auf einer deutschen Webseite gefunden habe.

Das Problem tritt auf, weil der fehlende -databases Parameter vor dem Datenbanknamen.

Daher muss Ihr Befehl so aussehen:

mysqldump -pdbpass -udbuser --databases dbname

Ein weiterer Grund für das Problem in meinem Fall war, dass ich lokal entwickle und der root Benutzer kein Passwort hat. In diesem Fall müssen Sie --password= anstelle von -pdbpass verwenden, also war mein endgültiger Befehl:

mysqldump -udbuser --password= --databases dbname

Link zum vollständigen Thread (auf Deutsch) : https://marius.bloggt-in-braunschweig.de/2016/04/29/solution-mysqldump-no-database-selected-when-selecting-the-database/

1voto

veeru666 Punkte 21

Zuerst Datenbank auswählen: USE db_name

Dann Tabelle erstellen: CREATE TABLE tb_name ( id int, name varchar(255), salary int, city varchar(255) );

Dies ist die Syntax für MySQL Version 5.5

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X