Ошибка 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;
MySQL сказал:
#1046 - No database selected
нужна помощь здесь
sql
mysql
mysql-error-1046
Стеф
источник
источник
mysql -u root -p databasename < import.sql
Ответы:
Вы должны указать MySQL, какую базу данных использовать:
прежде чем создать таблицу.
Если база данных не существует, вам нужно создать ее как:
с последующим:
источник
USE tablename
команду.CREATE DATABASE IF NOT EXISTS database_name ;
USE database_name;
Это работает независимо от того, создана ли база данных или нет.Вы также можете указать MySQL, какую базу данных использовать (если она уже создана):
источник
mysql example -u example_user -p < ./example.sql
вместо этого?Я столкнулся с той же ошибкой, когда пытался импортировать базу данных, созданную ранее. Вот что я сделал, чтобы исправить эту проблему:
1- Создать новую базу данных
2- Используйте его по
use
команде3- Попробуй еще раз
Это работает для меня.
источник
Если вы пытаетесь сделать это через командную строку ...
Если вы пытаетесь запустить оператор CREATE TABLE из интерфейса командной строки, вам нужно указать базу данных, в которой вы работаете, перед выполнением запроса:
Вот документация .
Если вы пытаетесь сделать это через MySQL Workbench ...
... вам нужно выбрать соответствующую базу данных / каталог в раскрывающемся меню, расположенном над вкладкой: Обозреватель объектов: Вы можете указать схему / базу данных / каталог по умолчанию для соединения - выберите параметры «Управление соединениями» под заголовком «Разработка SQL» заставки Workbench.
добавление
Все это предполагает, что есть база данных, внутри которой вы хотите создать таблицу - если нет, вам нужно создать базу данных прежде всего:
источник
USE database;
команду, даже в MySQL Workbench (я в v5.2.47), если вы получаете эту ошибку. Нужно только запустить его один раз для каждой вкладки запроса - все последующие выполнения на этой вкладке, похоже, правильно используют базу данных.Если вы делаете это через phpMyAdmin:
Я предполагаю, что вы уже создали новую базу данных MySQL на Live Site (под живым сайтом я имею в виду компанию, с которой вы работаете (в моем случае Bluehost)).
Зайдите на phpMyAdmin на действующий сайт - войдите в базу данных, которую вы только что создали.
Теперь ВАЖНО! Прежде чем щелкнуть опцию «импорт» в верхней панели, выберите вашу базу данных в левой части страницы (на серой панели, сверху написано PHP Myadmin, под ней два параметра: информационная_схема и имя базы данных, в которую вы только что вошли.
Как только вы щелкнете по базе данных, которую вы только что создали / вошли в нее, вам будет показана эта база данных, а затем щелкните вариант импорта.
Это помогло мне. Очень надеюсь, что это помогает
источник
SQL
файл, используя Блокнот или Блокнот ++CREATE DATABASE NAME; USE NAME;
источник
Если вы импортируете базу данных, вам нужно сначала создать ее с тем же именем, затем выбрать ее и затем ИМПОРТИРОВАТЬ в нее существующую базу данных.
Надеюсь, это работает для вас!
источник
Для MySQL Workbench
источник
цитата ivan n: «Если вы импортируете базу данных, вам нужно сначала создать ее с тем же именем, затем выбрать ее и затем импортировать в нее существующую базу данных. Надеюсь, она работает для вас!»
Это следующие шаги: Создайте базу данных, например my_db1, utf8_general_ci. Затем нажмите, чтобы войти в эту базу данных. Затем нажмите «импорт» и выберите базу данных: my_db1.sql
Это должно быть все.
источник
сначала выберите базу данных: USE db_name
затем создайте таблицу: CREATE TABLE tb_name (id int, имя varchar (255), зарплата int, город varchar (255));
это для синтаксиса версии MySQL 5.5
источник
будьте осторожны с пустыми паролями
попросит пароль и пожаловаться
mysqldump: Got error: 1046: "No database selected" when selecting the database
проблема в том, что
-p
опция требует, чтобы между-p
паролем и пробелом не было места .решил проблему (кавычки больше не нужны).
источник
Хотя это довольно старая ветка, я кое-что узнал. Я создал новую базу данных, затем добавил пользователя и, наконец, перешел к использованию phpMyAdmin для загрузки файла .sql. полный провал. Система не распознает, к какой БД я нацеливаюсь ...
Когда я начинаю заново БЕЗ первого присоединения нового пользователя, а затем выполняю тот же импорт phpMyAdmin, он работает нормально.
источник
Просто хотел добавить: если вы создаете базу данных в mySQL на работающем сайте, затем заходите в PHPMyAdmin, и база данных не отображается - выйдите из cPanel, затем войдите снова, откройте PHPMyAdmin, и он должен быть там сейчас.
источник
Для дополнительного элемента безопасности при работе с несколькими БД в одном и том же сценарии вы можете указать БД в запросе, например, «создать таблицу my_awesome_db.really_cool_table ...».
источник
Я опоздал, я думаю:
Если вы здесь, как я, ищите решение, когда
mysqldump
вместо mysql возникает эта ошибка , попробуйте это решение, которое я случайно нашел на немецком веб-сайте, поэтому я хотел бы поделиться с бездомными, у которых такие головные боли, как у меня.Так что проблема возникает из-за отсутствия
-databases
параметра перед именем базы данныхИтак, ваша команда должна выглядеть так:
Еще одна причина проблемы в моем случае заключалась в том, что я работаю на локальном компьютере, и у
root
пользователя нет пароля, поэтому в этом случае вы должны использовать--password=
вместо-pdbpass
, поэтому моя последняя команда была:Ссылка на полный поток (на немецком языке): https://marius.bloggt-in-braunschweig.de/2016/04/29/solution-mysqldump-no-database-selected-when-selecting-the-database/
источник
Jst создать новую БД в mysql.Select , что новый DB (если г использует в настоящее время MySQL PHPMyAdmin на вершине it'l быть как «Сервер:. . . . * >> Базы данных) .Now перейдите на вкладку импорта выберите file.Import !
источник