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.

18voto

BenKoshy Punkte 29349

Vorausgesetzt, Sie verwenden die Befehlszeile:

1. Finde Datenbank

show databases;

Beispiel für eine Datenbankliste

2. Wählen Sie eine Datenbank aus der Liste aus

z.B. USE classicmodels; und dann geht es los! (Natürlich müssen Sie die korrekt benannte Datenbank in Ihrer Liste verwenden.

Warum tritt dieser Fehler auf?

Mysql verlangt von Ihnen, die bestimmte Datenbank auszuwählen, an der Sie arbeiten. Ich nehme an, dies ist eine Designentscheidung, die sie getroffen haben: Es vermeidet viele potenzielle Probleme: Es ist durchaus möglich, dass Sie dieselben Tabellennamen in mehreren Datenbanken verwenden, z.B. eine users Tabelle. Um diese Art von Problemen zu vermeiden, dachten sie wahrscheinlich: "Lassen Sie die Benutzer die Datenbank auswählen, die sie wollen".

15voto

Ayham AlKawi Punkte 169
  • Bearbeiten Sie Ihre SQL-Datei mit Notepad oder Notepad++

  • Fügen Sie die folgenden 2 Zeilen hinzu:

    CREATE DATABASE NAME;
    USE NAME;

0 Stimmen

Wie können wir im Falle der WordPress-Datenbankdatei schreiben, wenn ich versuche, sie mit dem MySQL Workbench zu importieren, aber keine Datenbank ausgewählt wird?

9voto

ivan n Punkte 99

Wenn Sie eine Datenbank importieren, müssen Sie zuerst eine Datenbank mit demselben Namen erstellen, sie dann auswählen und anschließend die vorhandene Datenbank importieren.

0 Stimmen

Bitte fügen Sie Ihrer Antwort einige Details hinzu und erläutern Sie Ihre Schritte.

5voto

user3338098 Punkte 936

Seien Sie vorsichtig mit leeren Passwörtern

mysqldump [Optionen] -p '' --Datenbanken Datenbankname

wird nach einem Passwort fragen und sich beschweren mit mysqldump: Fehler erhalten: 1046: "Keine Datenbank ausgewählt" bei Auswahl der Datenbank

Das Problem ist, dass die Option -p erfordert, dass zwischen -p und dem Passwort kein Leerzeichen vorhanden ist.

mysqldump [Optionen] -p'' --Datenbanken Datenbankname

hat das Problem gelöst (Anführungszeichen sind nicht mehr erforderlich).

4voto

sargupta Punkte 765

Lösung mit einem Beispiel

  • Fehler 1046 tritt auf, wenn wir vergessen, unsere Tabelle mit einer Datenbank zu verbinden. In diesem Fall haben wir keine Datenbank und deshalb werden wir zuerst eine neue Datenbank erstellen und dann anweisen, diese Datenbank für die erstellte Tabelle zu verwenden.

    Zuerst müssen Sie die Datenbank erstellen

    CREATE DATABASE student_sql;

    Als nächstes geben Sie die zu verwendende Datenbank an

    USE student_sql;

    Demo: Tabelle erstellen

    CREATE TABLE student_table( student_id INT PRIMARY KEY, name VARCHAR(20), major VARCHAR(20) );

    Tabelle beschreiben

    describe student_table;

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