FOUT
SQL-query:
--
-- Database: `work`
--
-- --------------------------------------------------------
--
-- Table structure for table `administrators`
--
CREATE TABLE IF NOT EXISTS `administrators` (
`user_id` varchar( 30 ) NOT NULL ,
`password` varchar( 30 ) NOT NULL ) ENGINE = InnoDB DEFAULT CHARSET = latin1;
MySQL zei:
#1046 - No database selected
heb hier wat hulp nodig.
Antwoord 1, Autoriteit 100%
U moet MySQL vertellen welke database te gebruiken:
USE database_name;
Voordat u een tabel maakt.
Als de database niet bestaat, moet u het maken als:
CREATE DATABASE database_name;
gevolgd door:
USE database_name;
Antwoord 2, Autoriteit 11%
U kunt MySQL ook vertellen welke database te gebruiken (als u deze al hebt gemaakt):
mysql -u example_user -p --database=example < ./example.sql
Antwoord 3, Autoriteit 9%
Ik heb geconfronteerd met dezelfde fout toen ik probeerde een database te importeren die van vóór is gemaakt. Dit is wat ik deed om dit probleem op te lossen:
1- Maak een nieuwe database
2- Gebruik het met use
opdracht
3- Probeer opnieuw
Dit werkt voor mij.
Antwoord 4, Autoriteit 6%
Als u dit wilt doen via de opdrachtregel …
Als u probeert het create tabelverklaring uit de opdrachtregelinterface uit te voeren, moet u de database opgeven waarin u werkt voordat u de vraag uitvoert:
USE your_database;
Hier’s de documentatie .
Als u dit wilt doen via MySQL Workbench …
… U moet de juiste database / catalogus selecteren in het vervolgkeuzemenu dat hierboven is gevonden: Tabblad: Objectbrowser: U kunt de standaard schema / database / catalogus opgeven voor de verbinding – klik op de opties “Verbindingen beheren” onder de SQL-ontwikkelingskop van het Workbankbank Splash-scherm.
addendum
Dit alles ervan wordt uitgegaan dat er een database is waarvan u de tabel in de binnenkant van – wilt maken, zo niet, dan moet u de database maken voor iets anders:
CREATE DATABASE your_database;
Antwoord 5, Autoriteit 5%
Als u dit doet via PHPMYADMIN:
-
Ik neem aan dat je al een nieuwe MySQL-database hebt gemaakt op livesite (op live site, ik bedoel het bedrijf dat je hosting hebt (in mijn geval Bluehost)).
-
Ga naar PhpMyAdmin op Live Site – Log in op de database die u zojuist hebt gemaakt.
-
nu belangrijk! Voordat u op de optie “Importeren” op de bovenste balk klikt, selecteert u uw database aan de linkerkant van de pagina (grijze balk, bovenaan, heeft PHP MyAdmin geschreven, onder het twee opties: informatie_schema en naam van de database waarin u net bent ingelogd.
-
Nadat u op de database hebt geklikt, wordt u net ingemaakt / ingelogd, laat u de database weergeven en klikt u vervolgens op de optie Importeren.
Dat deed de truc voor mij. Hoop echt dat helpt
Antwoord 6, Autoriteit 3%
- Bewerk uw
SQL
Bestand met Notepad of Notepad ++ - Voeg de volgende 2 regel toe:
CREATE DATABASE NAME;
USE NAME;
Antwoord 7, Autoriteit 3%
voor MySQL Workbench
- Selecteer Database van het tabblad Schema’s door rechter muisklikken.
- Set Database als standaard schema
Antwoord 8, Autoriteit 2%
Als u een database importeert, moet u er eerst één met dezelfde naam maken en vervolgens selecteren en vervolgens de bestaande database invoeren.
Ik hoop dat het voor u werkt!
Antwoord 9
Aangenomen dat u de opdrachtregel gebruikt:
1. Zoek de database
show databases;
2. Selecteer een database in de lijst
b.g. USE classicmodels;
En u moet naar de races zijn! (Vanzelfsprekend moet je de correct genoemde database in je lijst gebruiken.
Waarom is deze fout opgetreden?
MySQL vereist dat u de specifieke databank selecteert waar u aan werkt. Ik neem aan dat het een ontwerpbeslissing is die ze hebben gemaakt: het vermijdt veel potentiële problemen: b.v. Het is volledig mogelijk, voor u om dezelfde tabelnamen in meerdere databases te gebruiken, b.v. een users
tabel. Om dit soort problemen te voorkomen, dachten ze waarschijnlijk: “Laten we ervoor zorgen dat gebruikers de database kiezen die ze willen”.
Antwoord 10
Wees voorzichtig met lege wachtwoorden
mysqldump [options] -p '' --databases database_name
vraagt om een wachtwoord en klagen met mysqldump: Got error: 1046: "No database selected" when selecting the database
Het probleem is dat de optie -p
vereist dat er geen spatie tussen -p
en het wachtwoord is.
mysqldump [options] -p '' --databases database_name
Opgelost het probleem (aanhalingstekens zijn niet meer nodig).
Antwoord 11
Ivan N:
“Als u een database importeert, moet u eerst één met dezelfde naam maken en vervolgens selecteren en vervolgens de bestaande database hierop importeren.
Ik hoop dat het voor jou werkt! “
Dit zijn de stappen:
Maak een database, bijvoorbeeld my_db1, utf8_general_ci.
Klik vervolgens om in deze database te gaan.
Klik vervolgens op “Importeren” en selecteer de database: MY_DB1.SQL
Dat zou alles moeten zijn.
Antwoord 12
Controleer of u de database eerst hebt gemaakt die u wilt.
Als u de database niet hebt gemaakt, moet u deze query afvuren:
CREATE DATABASE data_base_name
Als u de database al hebt gemaakt, kunt u deze query eenvoudig vuren en u kunt tabel in uw database maken:
CREATE TABLE `data_base_name`.`table_name` (
_id int not null,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Age int,
PRIMARY KEY (_id)
);
Antwoord 13
Kies eerst de database: gebruik DB_NAME
Creat Table: Create Table TB_NAME
(
id int,
Naam VARCHAR (255),
salaris int,
Stad Varchar (255)
);
dit voor de syntaxis van de mysql 5.5-versie
Antwoord 14
Ik ben laat denk ik :] soory,
Als je hier bent, net als ik, op zoek naar de oplossing wanneer deze fout optreedt met mysqldump
in plaats van mysql, probeer dan deze oplossing die ik toevallig op een Duitse website heb gevonden, dus ik wilde het delen met daklozen die hoofdpijn hebben zoals ik.
Het probleem doet zich dus voor omdat de parameter -databases
ontbreekt voor de databasenaam
Dus uw opdracht moet er als volgt uitzien:
mysqldump -pdbpass -udbuser --databases dbname
Een andere oorzaak van het probleem in mijn geval was dat ik op lokaal ontwikkel en de root
-gebruiker geen wachtwoord heeft, dus in dit geval moet je --password=
in plaats van -pdbpass
, dus mijn laatste opdracht was:
mysqldump -udbuser --password= --databases dbname
Link naar de volledige thread (in het Duits): https://marius.bloggt-in-braunschweig.de/2016/04/29/solution-mysqldump-no-database-selected-when-selecting-the- database/
Antwoord 15
Hoewel dit een vrij oud draadje is, heb ik net iets ontdekt. Ik heb een nieuwe database gemaakt, vervolgens een gebruiker toegevoegd en uiteindelijk phpMyAdmin gebruikt om het .sql-bestand te uploaden. totale mislukking. Het systeem herkent niet op welke DB ik doel…
Als ik vers begin ZONDER eerst een nieuwe gebruiker toe te voegen en vervolgens dezelfde phpMyAdmin-import uit te voeren, werkt het prima.
Antwoord 16
Ik wilde alleen toevoegen: als je een database in mySQL op een live site aanmaakt, ga dan naar PHPMyAdmin en de database wordt niet weergegeven – log uit bij cPanel, log dan weer in, open PHPMyAdmin, en het zou er nu moeten zijn .
Antwoord 17
Voor een extra veiligheidselement, wanneer u met meerdere DB’s in hetzelfde script werkt, kunt u de DB in de query specificeren, b.v. “maak tabel my_awesome_db.really_cool_table…”.
Antwoord 18
jst maak een nieuwe DB in mysql.Selecteer die nieuwe DB. (als je mysql phpmyadmin nu bovenaan gebruikt, zal het zijn als ‘Server:...* >> Database ).Ga nu naar tabblad importeren selecteer bestand.Importeren!