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.

592voto

codaddict Punkte 426877

Sie müssen MySQL mitteilen, welche Datenbank verwendet werden soll:

USE datenbank_name;

bevor Sie eine Tabelle erstellen.

Falls die Datenbank nicht existiert, müssen Sie sie erstellen mit:

CREATE DATABASE datenbank_name;

gefolgt von:

USE datenbank_name;

14 Stimmen

In meinem Fall hatte ich mysqldump verwendet, um eine Datenbank zu exportieren, und bin beim Import auf dieses Problem gestoßen. Ich musste nur die exportierte sql-Datei bearbeiten, um diese beiden Befehle oben hinzuzufügen.

0 Stimmen

Danke! Das ist genau das, was ich gebraucht habe. Ich hatte ein Skript, um meine Datenbank und Tabellen zu erstellen, aber die Tabellen wurden nicht erstellt, weil ich den Befehl USE Tabellenname einfügen musste.

4 Stimmen

Schreiben Sie: CREATE DATABASE IF NOT EXISTS datenbank_name ; USE datenbank_name; Dies funktioniert unabhängig davon, ob die Datenbank bereits erstellt wurde oder nicht.

67voto

Shay Anderson Punkte 902

Sie können MySQL auch mitteilen, welche Datenbank verwendet werden soll (falls Sie sie bereits erstellt haben):

 mysql -u example_user -p --database=example < ./example.sql

10 Stimmen

Warum nicht mysql Beispiel -u Benutzerbeispiel -p < ./beispiel.sql stattdessen?

43voto

Mina Fawzy Punkte 19437

Ich hatte den gleichen Fehler, als ich versuchte, eine Datenbank zu importieren, die zuvor erstellt wurde. Hier ist, was ich getan habe, um dieses Problem zu beheben:

  1. Erstelle eine neue Datenbank

  2. Verwende sie mit dem use Befehl

Bildbeschreibung hier eingeben

  1. Versuche es erneut

0 Stimmen

Noch eine Notiz - stellen Sie sicher, dass der JDBC-Verbindungsstring den Schemanamen enthält und dass das Schema bereits erstellt wurde.

25voto

Eric Korolev Punkte 603

Für MySQL Workbench

  1. Wählen Sie die Datenbank aus dem Schemas-Tab durch Klicken mit der rechten Maustaste.
  2. Setzen Sie die Datenbank als Standard-Schema.

Bildbeschreibung hier eingeben

0 Stimmen

Im MySQL Workbench 8.0 müssen Sie Ihr Standard-Schema im Datenimportfenster auswählen, das importiert werden soll.

24voto

Roanna Punkte 241

Wenn Sie dies durch phpMyAdmin machen:

  • Ich gehe davon aus, dass Sie bereits eine neue MySQL-Datenbank auf der Live-Site erstellt haben (mit Live-Site meine ich das Unternehmen, bei dem Sie gehostet sind (in meinem Fall Bluehost)).

  • Gehen Sie auf der Live-Site zu phpMyAdmin - melden Sie sich in der Datenbank an, die Sie gerade erstellt haben.

  • Jetzt WICHTIG! Bevor Sie die Option "Importieren" in der oberen Leiste anklicken, wählen Sie Ihre Datenbank auf der linken Seite der Seite aus (graue Leiste, oben hat PHPMyAdmin geschrieben, darunter zwei Optionen: information_schema und der Name der Datenbank, in die Sie sich gerade eingeloggt haben).

  • Wenn Sie auf die Datenbank klicken, die Sie gerade erstellt/hineingeloggt haben, wird Ihnen diese Datenbank angezeigt und Sie können die Importoption auswählen.

0 Stimmen

Sie würden denken, dass es auf der Seite eine Option geben würde, die es Ihnen ermöglicht, eine auszuwählen, wenn Sie noch nicht in der Datenbank sind.

0 Stimmen

Die beste Antwort und einfach, Sie müssen die Datenbanktabelle links auswählen, nachdem Sie sich auf dem Liveserver angemeldet haben

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