Consulta de erro SQL:
--
-- 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;
O MySQL disse:
#1046 - No database selected
preciso de ajuda aqui.
sql
mysql
mysql-error-1046
steph
fonte
fonte
mysql -u root -p databasename < import.sql
Respostas:
Você precisa dizer ao MySQL qual banco de dados usar:
antes de criar uma tabela.
Caso o banco de dados não exista, é necessário criá-lo como:
Seguido por:
fonte
USE tablename
comando.CREATE DATABASE IF NOT EXISTS database_name ;
USE database_name;
funciona se o banco de dados já foi criado ou não.Você também pode dizer ao MySQL qual banco de dados usar (se você já o criou):
fonte
mysql example -u example_user -p < ./example.sql
?Eu enfrentei o mesmo erro quando tentei importar um banco de dados criado antes. Aqui está o que eu fiz para corrigir esse problema:
1- Criar novo banco de dados
2- Use-o por
use
comando3- Tente novamente
Isso funciona para mim.
fonte
Se você está tentando fazer isso pela linha de comando ...
Se você estiver tentando executar a instrução CREATE TABLE na interface da linha de comandos, precisará especificar o banco de dados em que está trabalhando antes de executar a consulta:
Aqui está a documentação .
Se você está tentando fazer isso via MySQL Workbench ...
... você precisa selecionar o banco de dados / catálogo apropriado no menu suspenso encontrado acima da guia: Navegador de objetos :. Você pode especificar o esquema / banco de dados / catálogo padrão para a conexão - clique nas opções "Gerenciar conexões" no cabeçalho Desenvolvimento SQL da tela inicial do Workbench.
Termo aditivo
Isso tudo pressupõe que há um banco de dados no qual você deseja criar a tabela - se não, você precisará criar o banco de dados antes de qualquer outra coisa:
fonte
USE database;
comando, mesmo no MySQL Workbench (eu estou na v5.2.47) se você estiver recebendo esse erro. Só é necessário executá-lo uma vez por guia de consulta - todas as execuções subseqüentes nessa guia parecem usar o banco de dados corretamente.Se você estiver fazendo isso através do phpMyAdmin:
Estou assumindo que você já criou um novo banco de dados MySQL no site ao vivo (por site ao vivo, quero dizer a empresa com a qual você está hospedando (no meu caso, Bluehost)).
Vá para o phpMyAdmin no site ativo - entre no banco de dados que você acabou de criar.
Agora IMPORTANTE! Antes de clicar na opção "importar" na barra superior, selecione seu banco de dados no lado esquerdo da página (barra cinza, na parte superior, o PHP Myadmin escrito, abaixo dela duas opções: information_schema e nome do banco de dados que você acabou de acessar.
depois de clicar no banco de dados que você acabou de criar / conectar, ele mostrará esse banco de dados e, em seguida, clique na opção de importação.
Isso fez o truque para mim. Realmente espero que ajude
fonte
SQL
arquivo usando o Notepad ou o Notepad ++CREATE DATABASE NAME; USE NAME;
fonte
Se estiver importando um banco de dados, é necessário criar um primeiro com o mesmo nome, selecione-o e depois IMPORTAR o banco de dados existente.
Espero que funcione para você!
fonte
Para MySQL Workbench
fonte
citando ivan n: "Se estiver importando um banco de dados, você precisará criar um primeiro com o mesmo nome, selecione-o e depois importe o banco de dados existente para ele. Espero que funcione para você!"
Estas são as etapas: Crie um banco de dados, por exemplo, my_db1, utf8_general_ci. Em seguida, clique para acessar este banco de dados. Em seguida, clique em "importar" e selecione o banco de dados: my_db1.sql
Isso deve ser tudo.
fonte
primeiro banco de dados selecionado: USE db_name
depois crie a tabela: CREATE TABLE nome_tabela (id int, nome varchar (255), salário int, cidade varchar (255));
isto para a sintaxe da versão do mysql 5.5
fonte
tenha cuidado com senhas em branco
solicitará uma senha e reclamará com
mysqldump: Got error: 1046: "No database selected" when selecting the database
o problema é que a
-p
opção exige que não haja espaço entre-p
e a senha.resolveu o problema (as aspas não são mais necessárias).
fonte
Embora este seja um tópico bastante antigo, acabei de descobrir algo. Criei um novo banco de dados, adicionei um usuário e, finalmente, fui usar o phpMyAdmin para carregar o arquivo .sql. falha total. O sistema não reconhece em qual banco de dados estou visando ...
Quando eu começo de novo, sem primeiro conectar um novo usuário, e depois executar a mesma importação do phpMyAdmin, ele funciona bem.
fonte
Só queria adicionar: Se você criar um banco de dados no mySQL em um site ativo, entre no PHPMyAdmin e o banco de dados não estará aparecendo - faça logout do cPanel e faça login novamente, abra o PHPMyAdmin, e deve estar lá agora.
fonte
Para um elemento adicional de segurança, ao trabalhar com vários bancos de dados no mesmo script, você pode especificar o banco de dados na consulta, por exemplo, "criar tabela my_awesome_db.really_cool_table ...".
fonte
Estou atrasado, eu acho:] sombrio,
Se você está aqui, como eu, procurando a solução quando esse erro ocorre com
mysqldump
lugar do mysql, tente esta solução que encontrei em um site alemão por acaso, então eu queria compartilhar com pessoas sem-teto que tenham dores de cabeça como eu.Então o problema ocorre porque a falta
-databases
parâmetro antes do nome do banco de dadosPortanto, seu comando deve ficar assim:
Outra causa do problema no meu caso foi que estou desenvolvendo no local e o
root
usuário não tem uma senha, portanto, neste caso, você deve usar em--password=
vez de-pdbpass
, então meu comando final foi:Link para o tópico completo (em alemão): https://marius.bloggt-in-braunschweig.de/2016/04/29/solution-mysqldump-no-database-selected-when-selecting-the-database/
fonte
jst criar um novo DB em mysql.Select que a nova DB (se você r usando mysql phpmyadmin agora no topo it'l ser como 'Servidor:. . . . * >> Banco de Dados) .Agora vá para a guia de importação selecionar file.Import !
fonte