Error
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 said:
#1046 - No database selected
need some help here.
OMG Ponies
326k82 gold badges523 silver badges502 bronze badges
asked Oct 23, 2010 at 18:19
3
You need to tell MySQL which database to use:
USE database_name;
before you create a table.
In case the database does not exist, you need to create it as:
CREATE DATABASE database_name;
followed by:
USE database_name;
Piero
9,17318 gold badges90 silver badges160 bronze badges
answered Oct 23, 2010 at 18:21
codaddictcodaddict
446k82 gold badges492 silver badges529 bronze badges
4
You can also tell MySQL what database to use (if you have it created already):
mysql -u example_user -p --database=example < ./example.sql
Daryl Gill
5,48410 gold badges37 silver badges69 bronze badges
answered Feb 17, 2014 at 19:21
1
I faced the same error when I tried to import a database created from before. Here is what I did to fix this issue:
1- Create new database
2- Use it by use
command
3- Try again
This works for me.
HoldOffHunger
18.9k10 gold badges105 silver badges133 bronze badges
answered Dec 6, 2015 at 8:26
Mina FawzyMina Fawzy
20.9k17 gold badges133 silver badges156 bronze badges
1
If you’re trying to do this via the command line…
If you’re trying to run the CREATE TABLE statement from the command line interface, you need to specify the database you’re working in before executing the query:
USE your_database;
Here’s the documentation.
If you’re trying to do this via MySQL Workbench…
…you need to select the appropriate database/catalog in the drop down menu found above the :Object Browser: tab. You can specify the default schema/database/catalog for the connection — click the «Manage Connections» options under the SQL Development heading of the Workbench splash screen.
Addendum
This all assumes there’s a database you want to create the table inside of — if not, you need to create the database before anything else:
CREATE DATABASE your_database;
answered Oct 23, 2010 at 18:24
OMG PoniesOMG Ponies
326k82 gold badges523 silver badges502 bronze badges
4
For MySQL Workbench
- Select database from Schemas tab by right mouse clicking.
- Set database as Default Schema
answered Dec 6, 2018 at 14:12
1
If you are doing this through phpMyAdmin:
-
I’m assuming you already Created a new MySQL Database on Live Site (by live site I mean the company your hosting with (in my case Bluehost)).
-
Go to phpMyAdmin on live site — log in to the database you just created.
-
Now IMPORTANT! Before clicking the «import» option on the top bar, select your database on the left side of the page (grey bar, on the top has PHP Myadmin written, below it two options:information_schema and name of database you just logged into.
-
once you click the database you just created/logged into it will show you that database and then click the import option.
That did the trick for me. Really hope that helps
andrewtweber
24.6k22 gold badges88 silver badges110 bronze badges
answered Mar 18, 2014 at 1:25
RoannaRoanna
2512 silver badges2 bronze badges
2
Assuming you are using the command line:
1. Find Database
show databases;
2. Select a database from the list
e.g. USE classicmodels;
and you should be off to the races! (Obviously, you’ll have to use the correctly named database in your list.
Why is this error occurring?
Mysql requires you to select the particular database you are working on. I presume it is a design decision they made: it avoids a lot of potential problems: e.g. it is entirely possible, for you to use the same table names across multiple databases e.g. a users
table. In order to avoid these types of issues, they probably thought: «let’s make users select the database they want».
answered Dec 12, 2020 at 23:44
BenKoshyBenKoshy
33.5k14 gold badges111 silver badges80 bronze badges
- Edit your
SQL
file using Notepad or Notepad++ - add the following 2 line:
CREATE DATABASE NAME;
USE NAME;
ckpepper02
3,2975 gold badges29 silver badges43 bronze badges
answered Oct 11, 2013 at 20:48
1
If importing a database, you need to create one first with the same name, then select it and then IMPORT the existing database to it.
Hope it works for you!
answered Oct 25, 2011 at 16:38
ivan nivan n
991 silver badge1 bronze badge
1
Check you have created the database first which you want.
If you have not created the dataBase you have to fire this query:
CREATE DATABASE data_base_name
If you have already created the database then you can simply fire this query and you will be able to create table on your database:
CREATE TABLE `data_base_name`.`table_name` (
_id int not null,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Age int,
PRIMARY KEY (_id)
);
answered Apr 7, 2021 at 6:22
Solution with an Example
- Error
1046
occurs when we miss to connect our table with a database. In this case, we don’t have any database and that’s why at first we will create a new database and then will instruct to use that database for the created table.
# At first you have to create Database
CREATE DATABASE student_sql;
# Next, specify the database to use
USE student_sql;
# Demo: create a table
CREATE TABLE student_table(
student_id INT PRIMARY KEY,
name VARCHAR(20),
major VARCHAR(20)
);
# Describe the table
describe student_table;
answered May 28, 2022 at 20:02
sarguptasargupta
94313 silver badges25 bronze badges
quoting ivan n :
«If importing a database, you need to create one first with the same name, then select it and then IMPORT the existing database to it.
Hope it works for you!»
These are the steps:
Create a Database, for instance my_db1, utf8_general_ci.
Then click to go inside this database.
Then click «import», and select the database: my_db1.sql
That should be all.
answered Apr 18, 2013 at 12:25
iversoncruiversoncru
5798 silver badges22 bronze badges
1
first select database : USE db_name
then creat table:CREATE TABLE tb_name
(
id int,
name varchar(255),
salary int,
city varchar(255)
);
this for mysql 5.5 version syntax
answered Jul 4, 2015 at 12:46
I’m late i think :] soory,
If you are here like me searching for the solution when this error occurs with mysqldump
instead of mysql, try this solution that i found on a german website out there by chance, so i wanted to share with homeless people who got headaches like me.
So the problem occurs because the lack -databases
parameter before the database name
So your command must look like this:
mysqldump -pdbpass -udbuser --databases dbname
Another cause of the problem in my case was that i’m developping on local and the root
user doesn’t have a password, so in this case you must use --password=
instead of -pdbpass
, so my final command was:
mysqldump -udbuser --password= --databases dbname
Link to the complete thread (in German) : https://marius.bloggt-in-braunschweig.de/2016/04/29/solution-mysqldump-no-database-selected-when-selecting-the-database/
answered Sep 23, 2018 at 2:52
In Amazon RDS, merely writing use my-favorite-database
does not work if that database’s name includes dashes. Furthermore, none of the following work, either:
use "my-favorite-database"
use `my-favorite-database`
use 'my-favorite-database'
Just click the «Change Database» button, select the desired database, and voilà.
answered Sep 8, 2021 at 18:21
DavidDavid
8958 silver badges12 bronze badges
Although this is a pretty old thread, I just found something out. I created a new database, then added a user, and finally went to use phpMyAdmin to upload the .sql file. total failure. The system doesn’t recognize which DB I’m aiming at…
When I start fresh WITHOUT first attaching a new user, and then perform the same phpMyAdmin import, it works fine.
answered Sep 27, 2013 at 10:15
zipzitzipzit
3,7864 gold badges35 silver badges63 bronze badges
Just wanted to add: If you create a database in mySQL on a live site, then go into PHPMyAdmin and the database isn’t showing up — logout of cPanel then log back in, open PHPMyAdmin, and it should be there now.
answered Aug 4, 2014 at 23:42
For an added element of safety, when working with multiple DBs in the same script you can specify the DB in the query, e.g. «create table my_awesome_db.really_cool_table…».
answered Jul 17, 2016 at 15:36
Simple
- click on database
- and then click on import
without modifying .sql file
answered Aug 12 at 11:34
JoukharJoukhar
7141 gold badge3 silver badges18 bronze badges
jst create a new DB in mysql.Select that new DB.(if you r using mysql phpmyadmin now on the top it’l be like ‘Server:...* >> Database ).Now go to import tab select file.Import!
answered Oct 19, 2015 at 5:34
0
I ran into an issue using MySQL 5.5 running on xampp (Version 1.8.1). I kept receiving the «#1046 — No database selected» error when trying to add a table to a database via the console window.
I had made sure the database was selected «USE database_name;», however I was still receiving the same error.
I double checked and found all privileges for the user were enabled. Frustrated, I «Uncheck All» then «Check All» global privileges.
I logged out,
restarted server services,
closed the browser,
restarted server services,
opened browser,
and logged in.
Now I am able to create tables via the console. It appears to me resetting the privileges fixed the issue.
Can anyone tell me if this is a known bug, if I got lucky, or missed the point completely? Documentation I found concerning this error was mostly for importing a database and using the «Use Database_Name;» to ensure the database was indeed selected. However I don’t believe this was the issue.
Please Note: While trying to create new databases I am once again receiving the #1046 error. The method I mentioned above was a fluke and is not allowing me to create any new tables inside a new database. However I am still able to work with the first database I created.
15 ответов
Вам нужно указать MySQL, какую базу данных использовать:
USE database_name;
прежде чем создавать таблицу.
Если база данных не существует, вам необходимо создать ее как:
CREATE DATABASE database_name;
а затем:
USE database_name;
codaddict
Поделиться
Вы также можете указать MySQL, какую базу данных использовать (если она уже создана):
mysql -u example_user -p --database=example < ./example.sql
Shay Anderson
Поделиться
Я столкнулся с такой же ошибкой, когда попытался импортировать базу данных, созданную ранее. Вот что я сделал, чтобы исправить эту проблему:
1- Создать новую базу данных
2- Используйте его с use
команды
3- Повторите попытку
Это работает для меня.
Mina Fawzy
Поделиться
Если вы пытаетесь сделать это с помощью командной строки…
Если вы пытаетесь запустить оператор CREATE TABLE из интерфейса командной строки, вам нужно указать базу данных, в которой вы работаете, перед выполнением запроса:
USE your_database;
Здесь документация.
Если вы пытаетесь сделать это через MySQL Workbench…
… вам нужно выбрать соответствующую базу данных/каталог в раскрывающемся меню, расположенном над вкладкой «Обозреватель объектов: вкладка». Вы можете указать стандартную схему/базу данных/каталог для подключения — нажмите «Управление соединениями» в разделе «Развитие SQL» экрана заставки Workbench.
Добавление
Все это предполагает наличие базы данных, в которой вы хотите создать таблицу внутри — если нет, вам нужно создать базу данных прежде всего:
CREATE DATABASE your_database;
OMG Ponies
Поделиться
Если вы делаете это через phpMyAdmin:
-
Я предполагаю, что вы уже создали новую базу данных MySQL на Live-сайте (на живом сайте я имею в виду компанию, в которой ваш хостинг (в моем случае Bluehost)).
-
Перейдите в phpMyAdmin на сайте live — войдите в базу данных, которую вы только что создали.
-
Теперь ВАЖНО! Прежде чем нажимать кнопку «импорт» на верхней панели, выберите свою базу данных в левой части страницы (серая полоса, сверху вверху написан PHP Myadmin, под ней два параметра: information_schema и имя базы данных, в которую вы только вошли.
-
после того, как вы щелкнете базу данных, которую вы только что создали/вошли в нее, она покажет вам эту базу данных и затем щелкните параметр импорта.
Это трюк для меня. Надеюсь, что поможет
Roanna
Поделиться
- Отредактируйте свой
SQL
файл, используя Блокнот или Блокнот ++ - добавьте следующую строку:
CREATE DATABASE NAME;
USE NAME;
Ayham AlKawi
Поделиться
Если вы импортируете базу данных, вам нужно сначала создать ее с тем же именем, затем выбрать ее, а затем импортировать в нее существующую базу данных.
Надеюсь, что это сработает для вас!
ivan n
Поделиться
цитирование ivan n:
«Если вы импортируете базу данных, вам нужно сначала создать ее с тем же именем, а затем выбрать ее, а затем импортировать в нее существующую базу данных.
Надеюсь, это сработает для вас! «
Это следующие шаги:
Создайте базу данных, например my_db1, utf8_general_ci.
Затем нажмите, чтобы войти в эту базу данных.
Затем нажмите «импорт» и выберите базу данных: my_db1.sql
Это должно быть все.
iversoncru
Поделиться
сначала выберите базу данных: USE db_name
тогда таблица creat: CREATE TABLE tb_name
( id int,
имя varchar (255),
зарплата int, город варчар (255)
);
this для синтаксиса версии mysql 5.5
veeru666
Поделиться
Для MySQL Workbench
- Выберите базу данных со вкладки Схемы, щелкнув правой кнопкой мыши.
- Установить базу данных как схему по умолчанию
Eric Korolev
Поделиться
Я опаздываю, думаю:] Сори,
Если вы здесь, как я, ища решение, когда эта ошибка возникает с mysqldump
вместо mysql, попробуйте это решение, которое я нашел на немецком веб-сайте, случайно, поэтому я хотел поделиться с бездомными людьми, у которых были головные боли, подобные мне.
Таким образом, проблема возникает из-за отсутствия параметра -databases
перед именем базы данных
Поэтому ваша команда должна выглядеть так:
mysqldump -pdbpass -udbuser --databases dbname
Другая причина проблемы в моем случае заключалась в том, что я развивается на локальном компьютере, а у пользователя root
нет пароля, поэтому в этом случае вы должны использовать --password=
вместо -pdbpass
, поэтому моя последняя команда:
mysqldump -udbuser --password= --databases dbname
Ссылка на полный поток (на немецком языке): https://marius.bloggt-in-braunschweig.de/2016/04/29/solution-mysqldump-no-database-selected-when-selecting-the-database/
MoolsBytheway
Поделиться
Для дополнительного элемента безопасности при работе с несколькими БД в том же script вы можете указать БД в запросе, например. msgstr «создать таблицу my_awesome_db.really_cool_table…».
William T. Mallard
Поделиться
Просто хотел добавить: если вы создаете базу данных в mySQL на живом сайте, перейдите в PHPMyAdmin, и база данных не появится — выход из cPanel, затем войдите в систему, откройте PHPMyAdmin, и он должен быть там сейчас.
the10thplanet
Поделиться
Хотя это довольно старый поток, я только что нашел что-то. Я создал новую базу данных, затем добавил пользователя и, наконец, пошел использовать phpMyAdmin для загрузки файла .sql. общий сбой. Система не распознает, к какой базе данных я стремился…
Когда я начинаю новый БЕЗ с первого присоединения нового пользователя, а затем выполняет тот же импорт phpMyAdmin, он отлично работает.
zipzit
Поделиться
jst создайте новую базу данных в mysql. Выберите этот новый DB. (если вы используете mysql phpmyadmin сейчас, то наверху он будет похож на «Сервер: ... * → База данных). Теперь перейдите на вкладку импорта, выберите файл. Импорт!
cs075
Поделиться
Ещё вопросы
- 0Толкая значения в моделировании внутри повтора
- 0MySQL Выберите поле как Distinct с типом данных как Text с фильтрацией
- 1Каково идеальное место для кэширования изображений?
- 1Активная точная демоверсия роутера?
- 1Операция открытия и закрытия дескриптора файла Python для загрузки файлов по частям
- 1Как я могу сохранить hourOfDay и минуты из timePickerDialog, чтобы сравнить его с какой-то другой переменной?
- 0Свойства контроллера привязки в области изоляции
- 0Переменная из углового шаблона отображается как неопределенная в контроллере
- 1Мое приложение вылетает, даже если при его создании не было ошибок [duplicate]
- 0Обнаружение USB с помощью приложения qt
- 1Как я могу определить базовый тип в объектном типе dtype?
- 0CvGet2D входит в какую библиотеку?
- 1Настройка аннотации Springs3 Hibernate3
- 1Сеанс ASP.NET 2.0 неожиданно завершается
- 1Как я могу убедиться, что все пакеты были получены и сохранены в массиве?
- 1WTForms: передача другого контейнера в валидатор
- 0Вызов метода производного класса из общей ссылки на базовый класс
- 1Razor DropDownListFor SelectList, как связать неисчислимые селекты или как это сделать?
- 1Совпадение внутри строки, но игнорирование совпадений в скобках — Regex и JavaScript
- 0Создать полный HTML-сайт, используя структуру каталогов и подкаталогов
- 1Чтение данных из Http-ответа редко вызывает BindException: адрес уже используется
- 1Неожиданное поведение в константном назначении ES6
- 0Риск запуска cronjob каждую минуту
- 0Создание веточки в пространстве имен
- 0Как я могу сохранить $ location.hash () от добавления / сразу после #?
- 0Uncaught исключение «PDOException» с сообщением «не удалось найти драйвер» (для базы данных Oracle)
- 0Отключение веб-API Asp.net Identity 2 от проекта?
- 1ChartJS — установить другой текст при наведении, чем описание по оси X
- 1Получить базу данных Fire в реальном времени, используя условие where
- 1RecyclerView onClickListener Настройка производительности
- 0Установка переменной в число на основе результата производной таблицы
- 1Зачем закрывать выпадающий список, когда я нажимаю на открытый модал?
- 0Иметь все элементы покупки
- 0Генератор случайных функций между двумя целыми числами C ++
- 0Как ускорить запрос PDO
- 0ASP.net MVC Можете ли вы перегрузить HttpPost Index ()?
- 1Групер и ось должны быть одинаковой длины в Python
- 1getAdapter (). notifyDataSetChanged () не изменяет базу данных для повторного просмотра
- 1Android NSD: почему тип сервиса не совпадает
- 0Как отследить все клики на странице в ионном приложении?
- 1Предложение xml linq orderby не работает так, как должно быть
- 1Изменение переменной в функции с аргументом
- 0Как я могу ограничить группировку и перетаскивание внутри TreeView Kendo UI
- 0Почему мой фон мигает белым при изменении свойства фона css с помощью набора переходов?
- 0Данные angularjs в службе не могут быть разделены между различными контроллерами
- 1Когда люди говорят объект, когда они говорят о регулярных выражениях, что они имеют в виду (Python)
- 1Различия между Google Cloud Vision OCR в демонстрационной версии браузера и через Python
- 1Не удается установить подпакет пространства имен Python в зависимости от другого подпакета
- 1java.io.NotSerializableException :: ObjectOutputStream: метод writeObject
- 0Время компиляции сгенерированный идентификатор типа константы
Материал из Wiki — Iphoster — the best ever hosting and support. 2005 — 2023
Перейти к:навигация, поиск
MySQL — 1046 — No database selected при импорте в phpmyadmin
Ошибка:
#1046 - No database selected
означает, что Вы не выбрали базу в которую нужно делать импорт.
Решение — кликните на базу слева в phpmyadmin и только потом выполняйте в нее импорт.
Ошибка:
Источник — https://wiki.iphoster.net/index.php?title=MySQL_-_1046_-_No_database_selected_при_импорте_в_phpmyadmin&oldid=6829
Страницы 1
Чтобы отправить ответ, вы должны войти или зарегистрироваться
1 2009-01-24 22:44:24
- BadMoroz
- Редкий гость
- Неактивен
- Зарегистрирован: 2009-01-24
- Сообщений: 3
Тема: ошибка #1046 — No database selected
Привет всем!! У меня такая проблема( При импорте БД пишет такую ошбку #1046 — No database selected
Ошибка
SQL-запрос:
CREATE TABLE `jos_banner` (
`bid` int( 11 ) NOT NULL AUTO_INCREMENT ,
`cid` int( 11 ) NOT NULL default ‘0’,
`type` varchar( 30 ) NOT NULL default ‘banner’,
`name` varchar( 255 ) NOT NULL default »,
`alias` varchar( 255 ) NOT NULL default »,
`imptotal` int( 11 ) NOT NULL default ‘0’,
`impmade` int( 11 ) NOT NULL default ‘0’,
`clicks` int( 11 ) NOT NULL default ‘0’,
`imageurl` varchar( 100 ) NOT NULL default »,
`clickurl` varchar( 200 ) NOT NULL default »,
`date` datetime default NULL ,
`showBanner` tinyint( 1 ) NOT NULL default ‘0’,
X`checked_out` tinyint( 1 ) NOT NULL default ‘0’,
`checked_out_time` datetime NOT NULL default ‘0000-00-00 00:00:00’,
`editor` varchar( 50 ) default NULL ,
`custombannercode` text,
`catid` int( 10 ) unsigned NOT NULL default ‘0’,
`description` text NOT NULL ,
`sticky` tinyint( 1 ) unsigned NOT NULL default ‘0’,
`ordering` int( 11 ) NOT NULL default ‘0’,
`publish_up` datetime NOT NULL default ‘0000-00-00 00:00:00’,
`publish_down` datetime NOT NULL default ‘0000-00-00 00:00:00’,
`tags` text NOT NULL ,
`params` text NOT NULL ,
PRIMARY KEY ( `bid` ) ,
KEY `viewbanner` ( `showBanner` ) ,
KEY `idx_banner_catid` ( `catid` )
) ENGINE = MYISAM DEFAULT CHARSET = utf8 AUTO_INCREMENT =1
2 Ответ от Hanut 2009-01-25 01:53:52
- Hanut
- Модератор
- Неактивен
- Откуда: Рига, Латвия
- Зарегистрирован: 2006-07-02
- Сообщений: 9,726
Re: ошибка #1046 — No database selected
BadMoroz
Сперва выберите (создайте, если надо) БД, в которую вы осуществляете импорт.
3 Ответ от BadMoroz 2009-01-25 15:06:44
- BadMoroz
- Редкий гость
- Неактивен
- Зарегистрирован: 2009-01-24
- Сообщений: 3
Re: ошибка #1046 — No database selected
Hanut сказал:
BadMoroz
Сперва выберите (создайте, если надо) БД, в которую вы осуществляете импорт.
БД создана и выбрана. всёравно выкидывае ошибку((( #1046
4 Ответ от BadMoroz 2009-01-25 15:14:21
- BadMoroz
- Редкий гость
- Неактивен
- Зарегистрирован: 2009-01-24
- Сообщений: 3
Re: ошибка #1046 — No database selected
Hanut сказал:
BadMoroz
Сперва выберите (создайте, если надо) БД, в которую вы осуществляете импорт.
Простите за невнимательность все загрузил! Большое спасибо
5 Ответ от Игорь Карасёв 2009-11-20 18:30:06
- Игорь Карасёв
- Редкий гость
- Неактивен
- Зарегистрирован: 2009-11-20
- Сообщений: 6
Re: ошибка #1046 — No database selected
BadMoroz Расскажи как справился с проблемой?
6 Ответ от pritvorshik 2013-01-30 12:03:51
- pritvorshik
- Новичок
- Неактивен
- Зарегистрирован: 2013-01-30
- Сообщений: 1
Re: ошибка #1046 — No database selected
Нужно слева в списке выбрать базу данных нажав на нее если она уже создана и лишь после импортировать файл имябазы.sql
Либо если там ее нет то создать, выбрать нажав на нее и лишь после импортировать файл с базой данных.
Так же если на хостинге разрешена лишь одна база данных с большим количеством мб, а сайтов можно создать более одного, два, три и больше то ты просто меняешь либо добавляешь другой префикс к примеру на первый сайт префикс ya_ на второй ti_ и в той же базе можешь повесить не один сайт c одной базой данных, с учетом если позволяет размер выделенный на базу хостером.
Страницы 1
Чтобы отправить ответ, вы должны войти или зарегистрироваться