Ошибка при импорте sql файла

Hi all

i have text file where i can import it to excel to access or sql2000 without problem but when i import it using (sql2005 pro) i get this error message during the import

Operation stopped…

— Initializing Data Flow Task (Success)

Initializing Connections (Success)

Setting SQL Command (Success)

Setting Source Connection (Success)

Setting Destination Connection (Success)

Validating (Success)

Prepare for Execute (Success)

Pre-execute (Success)

Messages

Information 0x402090dc: Data Flow Task: The processing of file «C:Documents and SettingsWailDesktopAll_Alarm5.txt» has started.
(SQL Server Import and Export Wizard)

Executing (Error)

Messages

Error 0xc02020a1: Data Flow Task: Data conversion failed. The data conversion for column «FRDNAME» returned status value 4 and status text «Text was truncated or one or more characters had no match in the target code page.».
(SQL Server Import and Export Wizard)

Error 0xc020902a: Data Flow Task: The «output column «FRDNAME» (25)» failed because truncation occurred, and the truncation row disposition on «output column «FRDNAME» (25)» specifies failure on truncation. A truncation error occurred on the specified object of the specified component.
(SQL Server Import and Export Wizard)

Error 0xc0202092: Data Flow Task: An error occurred while processing file «C:Documents and SettingsWailDesktopAll_Alarm5.txt» on data row 9.
(SQL Server Import and Export Wizard)

Error 0xc0047038: Data Flow Task: The PrimeOutput method on component «Source — All_Alarm5_txt» (1) returned error code 0xC0202092. The component returned a failure code when the pipeline engine called PrimeOutput(). The meaning of the failure code is defined by the component, but the error is fatal and the pipeline stopped executing.
(SQL Server Import and Export Wizard)

Error 0xc0047021: Data Flow Task: Thread «SourceThread0» has exited with error code 0xC0047038.
(SQL Server Import and Export Wizard)

Error 0xc0047039: Data Flow Task: Thread «WorkThread0» received a shutdown signal and is terminating. The user requested a shutdown, or an error in another thread is causing the pipeline to shutdown.
(SQL Server Import and Export Wizard)

Error 0xc0047021: Data Flow Task: Thread «WorkThread0» has exited with error code 0xC0047039.
(SQL Server Import and Export Wizard)

Copying to [DXB_Data].[dbo].[All_Alarm5] (Stopped)

Post-execute (Success)

Messages

Information 0x402090dd: Data Flow Task: The processing of file «C:Documents and SettingsWailDesktopAll_Alarm5.txt» has ended.
(SQL Server Import and Export Wizard)

Information 0x402090df: Data Flow Task: The final commit for the data insertion has started.
(SQL Server Import and Export Wizard)

Information 0x402090e0: Data Flow Task: The final commit for the data insertion has ended.
(SQL Server Import and Export Wizard)

Cleanup (Success)

Messages

Information 0x4004300b: Data Flow Task: «component «Destination — All_Alarm5″ (64)» wrote 0 rows.
(SQL Server Import and Export Wizard)

=============================

**** from the error message (Executing)  error number 2 and 3 it shows that the error is comming from the (

column FRDNAME) and row number 9 …

this cells contains the following text:  ;Ruwais5 B60_Baynounah_R_H_Camp_PH rack1 shelf1 db4g 0;
where the «;» is the delimiter

moreover when i remove this row other problem comes in diffirent location with the following text: ;((AvailabilityStatus,failed ,),(OperationalState,disabled ,));
where the «;» is the delimiter

**** from the error message (Executing)  error number 1
there is somthing called (

code page ) this can be modified from the wizard it self and there are many options to choose. i tryed many of them but without solution

i hope that i will find solution for my problem

thank you

Студворк — интернет-сервис помощи студентам

Всем привет. У меня возникла довольно абсурдная проблема при заполнении бд из CSV файла. Суть такова: существует таблица с столбиками. Импорт информации во все столбцы идёт нормально, проблемы возникают только с одним. Вот код ошибки (суть ошибки я вроде бы понял, о чём ниже, так что код тут просто на всякий случай):

Выполнение (Error)
Messages
Ошибка 0xc02020a1: Задача потока данных 1: Ошибка преобразования данных. При преобразовании данных для столбца «MainImagePath» возращено значение состояния 4 и текст состояния «Текст был усечен, или один и более символов не имеют соответствия в целевой кодовой странице.».
(Мастер импорта и экспорта SQL Server)

Ошибка 0xc020902a: Задача потока данных 1: Сбой Источник — service_b_import1_csv.Выводы[Выход источника «Неструктурированный файл»].Столбцы[MainImagePath] из-за возникшего усечения, и стратегия обработки усечения строк в «Источник — service_b_import1_csv.Выводы[Выход источника «Неструктурированный файл»].Столбцы[MainImagePath]» определяет сбой по причине усечения. Ошибка усечения возникла в указанном объекте указанного компонента.
(Мастер импорта и экспорта SQL Server)

Ошибка 0xc0202092: Задача потока данных 1: Ошибка при обработке строки 0 в файле «C:UsersЕгорDesktopUcheba3 Курс (не засри хотя бы эту папку)WorldSkills Сессия 1Сессия 1service_b_import1.csv».
(Мастер импорта и экспорта SQL Server)

Ошибка 0xc0047038: Задача потока данных 1: Код ошибки служб SSIS: DTS_E_PRIMEOUTPUTFAILED. Метод PrimeOutput для компонента Источник — service_b_import1_csv завершился сбоем с кодом ошибки 0xC0202092. Компонент вернул код ошибки при вызове метода PrimeOutput() из обработчика конвейера. Значение кода ошибки определяется компонентом, но ошибка является неустранимой, и выполнение конвейера остановлено. Возможно, до этого были опубликованы сообщения об ошибках, в которых содержатся более подробные сведения о причине сбоя.
(Мастер импорта и экспорта SQL Server)

Ошибка возникает при импорте данной строки (далее первая строка) среди других (некрашащийх) параметров:
«Услуги_салона_красоты>Декорирование_нарощенных_ресниц_стразами.jpg» — это довольно искорёженный путь к файлу, но тут это не суть важно.
НО, при импорте чуть более короткой строки (далее вторая строка) «Услуги_салона_красоты>Ресницыф.png» данная проблема не возникает.
И ладно бы я напутал с типом данных, но нет — типом данных выбран nvarchar(max) и при update и выставлении первой строки, вместо нормально импортирующейся второй строки, проблем не возникает. Причём проблема именно из-за количества символов, так как я пробовал заменять первую строку равной по количеству символов. Забыл добавить, что кодировка импорта ANSI-кириллица 1251
Собственно у меня вопрос: как импортировать первую строку?

При импорте дампа базы данных возникает ошибка:
#1064 — You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near » at line 96
Импорт выполняется с помощью PhPMyAdmin


  • Вопрос задан

    более трёх лет назад

  • 4074 просмотра

Пригласить эксперта

если эта копия с работающей базы, попробуйте еще раз скопировать и загрузить ее в чистую базу где нет таблиц от предыдущего переноса.
А так сообщение говорит что в строке 96 ошибка в синтаксисе, возможно что версии MySQL разные.

если бекап снимался mysqldump, то заливать лучше через консольный mysql.
обычно ошибки вылазиют, если нет понятия о часовом поясе, который обозначен в дампе.

У PHPMyAdmin есть ограничение на размер импортируемого файла, по умолчанию 2Mb. Попробуйте грузить таблицы по одной.
Если есть доступ к консоли, то попробуйте импортировать через mysql
# mysql -u root -p < dump.sql

Почему-то хостинг или PHPMyAdmin не отдавал нормально базу, дамп скачивался неполностью. Сделал резерную копию и скачал через фтп, получилось


  • Показать ещё
    Загружается…

14 июн. 2023, в 03:49

3000 руб./за проект

14 июн. 2023, в 03:45

4000 руб./за проект

14 июн. 2023, в 01:02

5000 руб./за проект

Минуточку внимания

Этот туториал покажет, как исправить ошибку «No Database selected», которая может появиться при импорте SQL файла:

Ошибка «No Database selected» во время импорта SQL файла

no_database_selected1

Очевидно, что решение проблемы в самой ошибке: вы не выбрали базу данных перед началом импорта SQL файла. Для того чтобы исправить данную ошибку, необходимо выполнить следующие шаги:

  1. В панели phpMyAdmin в левой колонке вы можете видеть список существующих баз данных. Кликните название необходимой базы данных в этом списке:

    no_database_selected2

  2. Теперь можно видеть название выбранной базы данных над верхнем меню панели phpMyAdmin. Откройте вкладку Импорт (Import), затем нажмите кнопку Обзор (Browse) и выберите SQL файл:

    no_database_selected3

  3. Когда файл для импорта будет выбран, кликните GO внизу страницы. Вы увидите следующее сообщение «Импорт успешно завершен, выполнено XXX запросов» («Import has been successfully finished, XXX queries executed»).

  4. Обновите страницу. Теперь вы можете видеть содержимое на сайте.

Это конец туториала. Теперь вы знаете, как исправить ошибку «No Database selected». Вы также можете воспользоваться детальным видео туториалом:

Ошибка «No Database selected» во время импорта SQL файла

Страницы 1

Чтобы отправить ответ, вы должны войти или зарегистрироваться

1 2006-11-11 20:30:06 (изменено: ysl, 2006-11-11 21:30:53)

  • ysl
  • Редкий гость
  • Неактивен
  • Зарегистрирован: 2006-11-11
  • Сообщений: 18

Тема: #1064 ошибка при импорте дампа базы данных MySQL

При импорте пишет —

Ошибка

SQL-запрос:

— phpMyAdmin SQL Dump
— version 2.8.2-Debian-0.1
— http://www.phpmyadmin.net

— Хост: localhost
— Время создания: Ноя 11 2006 г., 22:17
— Версия сервера: 5.0.20
— Версия PHP: 4.4.2-1.1

— БД: `ab`

— ———————————————————

— Структура таблицы `additions`

CREATE TABLE `additions` (
`uid` varchar( 8 ) NOT NULL ,
`amount` float NOT NULL ,
`comment` varchar( 50 ) NOT NULL ,
`delmark` tinyint( 1 ) NOT NULL default ‘0’
) ENGINE = MYISAM DEFAULT CHARSET = cp1251;

Ответ MySQL: Документация
#1064 — You have an error in your SQL syntax near ‘ENGINE=MyISAM DEFAULT CHARSET=cp1251’ at line 9

что делать?

2 Ответ от Hanut 2006-11-11 23:10:49

  • Hanut
  • Hanut
  • Модератор
  • Неактивен
  • Откуда: Рига, Латвия
  • Зарегистрирован: 2006-07-02
  • Сообщений: 9,722

Re: #1064 ошибка при импорте дампа базы данных MySQL

Очень распространённая ошибка. Причины могут быть в следующем:
1) Тип движка БД в которую вы пытаетесь вставить дамп не MYISAM.
2) Кодировка БД, в которую вставляется таблица (`ab`) — не cp1251.
3) От такой ошибки иногда помогает смена сопоставления на заглавной странице phpMyAdmin. Просто выберите из выпадающего списка «MySQL connection collation:» — cp1251_general_ci.

3 Ответ от ysl 2006-11-11 23:58:09 (изменено: ysl, 2006-11-12 00:09:19)

  • ysl
  • Редкий гость
  • Неактивен
  • Зарегистрирован: 2006-11-11
  • Сообщений: 18

Re: #1064 ошибка при импорте дампа базы данных MySQL

3) От такой ошибки иногда помогает смена сопоставления на заглавной странице phpMyAdmin. Просто выберите из выпадающего списка «MySQL connection collation:» — cp1251_general_ci.

А можна поподробнее у меня phpMyAdmin — 2.9.1 rus

1) Тип движка БД в которую вы пытаетесь вставить дамп не MYISAM.

А можна поменять тип движка БД?
Да и для того чтобы вставить дамп нужно создать базу?

2) Кодировка БД, в которую вставляется таблица (`ab`) — не cp1251.

И кодировка базы помоему Russ UTF-8

4 Ответ от Lokki 2006-11-12 11:12:18

  • Lokki
  • Lokki
  • Админ
  • Неактивен
  • Откуда: Москва
  • Зарегистрирован: 2006-01-25
  • Сообщений: 910

Re: #1064 ошибка при импорте дампа базы данных MySQL

ysl
Я бы порекомендовал во избежании подобных синтаксических ошибок при создании дампа обращать внимание на опцию «SQL compatibility mode» в блоке «SQL options» и выбирать MySQL40, если у запущен MySQL>4.x.x

Нет неразрешимых проблем, есть неприятные решения. (Э. Борн)

5 Ответ от Hanut 2006-11-12 20:12:04

  • Hanut
  • Hanut
  • Модератор
  • Неактивен
  • Откуда: Рига, Латвия
  • Зарегистрирован: 2006-07-02
  • Сообщений: 9,722

Re: #1064 ошибка при импорте дампа базы данных MySQL

А можна поподробнее у меня phpMyAdmin — 2.9.1 rus

Индексная страница phpMyAdmin, в выпадающем списке «Сопоставление соединения с MySQL:» выберите cp1251_general_ci.

А можна поменять тип движка БД?

Да, можно. Но проще создать БД с тем движком, который нужен изначально.

Да и для того чтобы вставить дамп нужно создать базу?

Обязательно.

И кодировка базы помоему Russ UTF-8

Для того чтобы узнать в какой кодировке находится БД, в левом фрейме выберите её, в правом, в самом низу сетки отображающей таблицы увидете кодировку. При необходимости поменять её зайдите на вкладку «Операции». Там всё ясно и понятно.

6 Ответ от ysl 2006-11-13 01:20:15 (изменено: ysl, 2006-11-13 01:26:39)

  • ysl
  • Редкий гость
  • Неактивен
  • Зарегистрирован: 2006-11-11
  • Сообщений: 18

Re: #1064 ошибка при импорте дампа базы данных MySQL

Для того чтобы узнать в какой кодировке находится БД, в левом фрейме выберите её, в правом, в самом низу сетки отображающей таблицы увидете кодировку. При необходимости поменять её зайдите на вкладку «Операции». Там всё ясно и понятно.

Это дамп а не база.

Я скопировал базу как есть всю папку, но она не работает, таблици видно ,но Ошибка

SQL-запрос: Правка

SHOW INDEX FROM `additions` ;

Ответ MySQL: Документация
#1033 — Incorrect information in file: ‘.abadditions.frm’
Что это?

7 Ответ от Hanut 2006-11-13 17:49:21

  • Hanut
  • Hanut
  • Модератор
  • Неактивен
  • Откуда: Рига, Латвия
  • Зарегистрирован: 2006-07-02
  • Сообщений: 9,722

Re: #1064 ошибка при импорте дампа базы данных MySQL

ysl

Перед импортом дампа необходимо создать БД, вот её кодировку и надо задать так, как надо.

Я скопировал базу как есть всю папку, но она не работает

Приехали. sad
То что вы делаете импортом дампа не называется и вставлять таким образом таблицы нельзя.

Читайте FAQ и справку данного портала по импорту БД. При возникновении затруднений, задавайте конкретные вопросы. Постараемся вам помочь.

8 Ответ от Lokki 2006-11-13 19:56:55

  • Lokki
  • Lokki
  • Админ
  • Неактивен
  • Откуда: Москва
  • Зарегистрирован: 2006-01-25
  • Сообщений: 910

Re: #1064 ошибка при импорте дампа базы данных MySQL

ysl
Правила напоминаю: один топик — один вопрос. Последняя ошибка приведенная тобой уже не синтаксическая. И возникает она как уже модератор сказал не в результате импорта дампа.

#1033 — Incorrect information in file: ‘.abadditions.frm’
Что это?

Поврежден файл описания, содержащий структуру таблицы. Запусти базу данных, создай таблицу с точно такой же структурой — создашь корректный additions.frm, потом скопируй туда (в директорию ab) свои неповрежденные additions.MYD и additions.MYI (если у тебя таблица MyISAM). Должно сработать.

Нет неразрешимых проблем, есть неприятные решения. (Э. Борн)

9 Ответ от quxx 2006-12-30 15:08:12

  • quxx
  • Редкий гость
  • Неактивен
  • Зарегистрирован: 2006-12-30
  • Сообщений: 2

Re: #1064 ошибка при импорте дампа базы данных MySQL

здравствуйте, такая же точно ошибка…проблема вот в чем, заливаю базу через хостинг, т.е. phpadmin.masterhost.ru. нужна база на сайте. всё скомпелировал dump’ом…импортирую .sql-файл, получаю ошибку:
CREATE TABLE `be_groups` (

) ENGINE = InnoDB DEFAULT CHARSET = latin1;

Ответ MySQL:

#1064 — You have an error in your SQL syntax.  Check the manual that corresponds to your MySQL server version for the right syntax to use near ‘DEFAULT CHARSET=latin1’ at line 29

в файле my.ini ставлю cp1251 кодировку, но база всё-равно создаётся с латин1…пробовал потом изменить на cp1251 по-другому, всё-равно пишет ошибку, только не с латин1, а с cp1251… что посоветуете?

10 Ответ от Lokki 2006-12-30 23:17:26

  • Lokki
  • Lokki
  • Админ
  • Неактивен
  • Откуда: Москва
  • Зарегистрирован: 2006-01-25
  • Сообщений: 910

Re: #1064 ошибка при импорте дампа базы данных MySQL

quxx
При постановке вопроса ты забыл указать версию phpMyAdmin и MySQL-сервера. Если вручную удалить из дампа запись «DEFAULT CHARSET = latin1», ошибка наблюдается?

Если я правильно тебя понял: проблема возникает при импорте дампа на удаленный MySQL-сервер, который был ранее создан с помощью mysqldump на локальном MySQL-сервере.

Если это так, то причиной может старая версия удаленного MySQL-сервера: возможность задания кодировок на уровне сервера была реализована в MySQL4.1. Поэтому на старых версиях MySQL синтаксис «.. DEFAULT CHARSET = latin1;» будет вызывать #1064 ошибку.

Можно воспользоваться возможностью задавать режим совместимости, которую предоставляет phpMyAdmin посредством опции «SQL compatibility mode» в блоке «SQL options» на вкладке «Export».

Нет неразрешимых проблем, есть неприятные решения. (Э. Борн)

11 Ответ от quxx 2007-01-01 23:27:15

  • quxx
  • Редкий гость
  • Неактивен
  • Зарегистрирован: 2006-12-30
  • Сообщений: 2

Re: #1064 ошибка при импорте дампа базы данных MySQL

Lokki сказал:

quxx
При постановке вопроса ты забыл указать версию phpMyAdmin и MySQL-сервера. Если вручную удалить из дампа запись «DEFAULT CHARSET = latin1», ошибка наблюдается?

Если я правильно тебя понял: проблема возникает при импорте дампа на удаленный MySQL-сервер, который был ранее создан с помощью mysqldump на локальном MySQL-сервере.

Если это так, то причиной может старая версия удаленного MySQL-сервера: возможность задания кодировок на уровне сервера была реализована в MySQL4.1. Поэтому на старых версиях MySQL синтаксис «.. DEFAULT CHARSET = latin1;» будет вызывать #1064 ошибку.

Можно воспользоваться возможностью задавать режим совместимости, которую предоставляет phpMyAdmin посредством опции «SQL compatibility mode» в блоке «SQL options» на вкладке «Export».

спасибо,…извиняюсь за неполноту вопроса. на локалке стоит MySQL 4.1..на удалёнке стоит версия 4.0…в ручную удаляю запись из дампа, всё-равно ошибка… разберёмся теперь )

12 Ответ от Blacktorn 2007-03-21 06:01:48

  • Blacktorn
  • Редкий гость
  • Неактивен
  • Зарегистрирован: 2007-03-21
  • Сообщений: 2

Re: #1064 ошибка при импорте дампа базы данных MySQL

Доброго времени суток 
возникла похожая проблема
phpMyAdmin — 2.10.0-dev
сервера: 4.1.3b-beta-nt
MySQL-клиента: 5.0.22
MySQL-кодировка: UTF-8 Unicode (utf8)
при восстановлении базы с дампа  дает ошибку пишет такую ошибку
#1064 — You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ‘group’ at line 1

drop table if exists building;
drop table if exists department;
drop table if exists emploee;
drop table if exists ext_phone;
drop table if exists group;
drop table if exists int_phone;
drop table if exists position;
drop table if exists room;

13 Ответ от Hanut 2007-03-21 12:44:28

  • Hanut
  • Hanut
  • Модератор
  • Неактивен
  • Откуда: Рига, Латвия
  • Зарегистрирован: 2006-07-02
  • Сообщений: 9,722

Re: #1064 ошибка при импорте дампа базы данных MySQL

Blacktorn
group — является зарезервированным словом MySQL, поэтому должно быть заключено в косые кавычки.

14 Ответ от Blacktorn 2007-03-21 13:21:52

  • Blacktorn
  • Редкий гость
  • Неактивен
  • Зарегистрирован: 2007-03-21
  • Сообщений: 2

Re: #1064 ошибка при импорте дампа базы данных MySQL

а по барабану не помогает… прописал по другому  base.group  (где  base  название базы)  и все заработало

15 Ответ от Menart 2008-08-14 23:07:49

  • Menart
  • Редкий гость
  • Неактивен
  • Зарегистрирован: 2008-08-14
  • Сообщений: 2

Re: #1064 ошибка при импорте дампа базы данных MySQL

у меня таже проблема версия mysql клиента в который я заливаю дамп  5.0.45 и там нельзя выбрать дженерал си , что мне делать?

вот ошибка

SQL-запрос:

-- phpMyAdmin SQL Dump
-- version 3.0.0-dev
-- http://www.phpmyadmin.net
--
-- Хост: *.*.0.11
-- Время создания: Авг 13 2008 г., 13:20
-- Версия сервера: 5.0.51
-- Версия PHP: 5.2.5
SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";

Ответ MySQL: Документация
#1193 - Unknown system variable 'SQL_MODE'

16 Ответ от Hanut 2008-08-15 00:58:49

  • Hanut
  • Hanut
  • Модератор
  • Неактивен
  • Откуда: Рига, Латвия
  • Зарегистрирован: 2006-07-02
  • Сообщений: 9,722

Re: #1064 ошибка при импорте дампа базы данных MySQL

Menart
Попробуйте закомментировать в дампе строку:
— SET SQL_MODE = «NO_AUTO_VALUE_ON_ZERO»;

17 Ответ от Menart 2008-09-04 01:12:52

  • Menart
  • Редкий гость
  • Неактивен
  • Зарегистрирован: 2008-08-14
  • Сообщений: 2

Re: #1064 ошибка при импорте дампа базы данных MySQL

пробовал, он про следующую строку такую же ошибку выдает

18 Ответ от Hanut 2008-09-04 14:16:07

  • Hanut
  • Hanut
  • Модератор
  • Неактивен
  • Откуда: Рига, Латвия
  • Зарегистрирован: 2006-07-02
  • Сообщений: 9,722

Re: #1064 ошибка при импорте дампа базы данных MySQL

Menart
Сомневаюсь, что ошибка будет такая же.

Какая версия MySQL сервера на котором осуществляется импорт?

19 Ответ от SkyLine 32 2008-09-07 21:41:04

  • SkyLine 32
  • Новичок
  • Неактивен
  • Зарегистрирован: 2008-09-07
  • Сообщений: 1

Re: #1064 ошибка при импорте дампа базы данных MySQL

Люди помогите!!! Я администратор сайта. Стоял у меня движок DataLife Engine 7.0 я обновил его до 7.2
Появились в админке баги, не мог юзеру поменять категорию или его послать в бан. В итоге я решил вернуть DataLife Engine 7.0 и случилось еще хуже. Теперь я могу с юзером делать что захочу, а вот добавить новость из админки не могу. Пишет

MySQL Error!
————————

The Error returned was:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ‘allow_comm=’1′, approve=’1′, allow_main=’1′, allow_rate=’1′, fixed=’1′, allow_br’ at line 1

Error Number:
1064

И окно с ошибками.
Кто мне поможет решить проблему?

20 Ответ от Hanut 2008-09-08 03:20:36

  • Hanut
  • Hanut
  • Модератор
  • Неактивен
  • Откуда: Рига, Латвия
  • Зарегистрирован: 2006-07-02
  • Сообщений: 9,722

Re: #1064 ошибка при импорте дампа базы данных MySQL

SkyLine 32
Вероятно при обновлении были изменены некоторые таблицы в БД и теперь они вызывают ошибки при работе с предыдущей версией скрипта. Попробуйте поискать у разработчика скрипт отката версий, или можно попробовать посмотреть на то какие таблицы были изменены при обновлении и вернуть их в первоночальное состояние.

21 Ответ от webv 2008-10-03 09:39:30

  • webv
  • Новичок
  • Неактивен
  • Зарегистрирован: 2008-01-12
  • Сообщений: 1

Re: #1064 ошибка при импорте дампа базы данных MySQL

А, где можно узнать значения ошибок по их номеру , при работе с БД часто выскакивают? Спасибо.

22 Ответ от lostoffuture 2008-10-03 09:44:33

  • lostoffuture
  • Редкий гость
  • Неактивен
  • Зарегистрирован: 2008-10-02
  • Сообщений: 7

Re: #1064 ошибка при импорте дампа базы данных MySQL

копируете полность текст ошибки и вставляете ее в поисковик, вам сразу выдаст кучу сайтов с похожими ворпосами и как правильно утсранить ощибку))))))

23 Ответ от Hanut 2008-10-03 14:26:49

  • Hanut
  • Hanut
  • Модератор
  • Неактивен
  • Откуда: Рига, Латвия
  • Зарегистрирован: 2006-07-02
  • Сообщений: 9,722

Re: #1064 ошибка при импорте дампа базы данных MySQL

webv сказал:

А, где можно узнать значения ошибок по их номеру , при работе с БД часто выскакивают? Спасибо.

Обычно ошибки описательны, но здесь можно посмотреть описание, если выводится только код ошибки.
http://dev.mysql.com/doc/refman/5.0/en/ … dling.html

Страницы 1

Чтобы отправить ответ, вы должны войти или зарегистрироваться

При импорте дампа базы данных возникает ошибка:
#1064 — You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near » at line 96
Импорт выполняется с помощью PhPMyAdmin


  • Вопрос задан

    более трёх лет назад

  • 3886 просмотров

Пригласить эксперта

если эта копия с работающей базы, попробуйте еще раз скопировать и загрузить ее в чистую базу где нет таблиц от предыдущего переноса.
А так сообщение говорит что в строке 96 ошибка в синтаксисе, возможно что версии MySQL разные.

если бекап снимался mysqldump, то заливать лучше через консольный mysql.
обычно ошибки вылазиют, если нет понятия о часовом поясе, который обозначен в дампе.

У PHPMyAdmin есть ограничение на размер импортируемого файла, по умолчанию 2Mb. Попробуйте грузить таблицы по одной.
Если есть доступ к консоли, то попробуйте импортировать через mysql
# mysql -u root -p < dump.sql

Почему-то хостинг или PHPMyAdmin не отдавал нормально базу, дамп скачивался неполностью. Сделал резерную копию и скачал через фтп, получилось


  • Показать ещё
    Загружается…

30 янв. 2023, в 13:52

120000 руб./за проект

30 янв. 2023, в 13:45

500 руб./за проект

30 янв. 2023, в 13:36

100000 руб./за проект

Минуточку внимания

SQL Server 2008 R2 Service Pack 2 SQL Server 2008 R2 Datacenter SQL Server 2008 R2 Enterprise SQL Server 2008 R2 Standard SQL Server 2012 Developer SQL Server 2012 Enterprise SQL Server 2012 Standard SQL Server 2014 Developer SQL Server 2014 Enterprise SQL Server 2014 Standard Еще…Меньше

Проблемы

Предположим, что вы применили накопительный пакет обновления 2 (CU2) или более поздней версии к Microsoft SQL Server 2008 R2 с пакетом обновления 2 (SP2). При попытке переместить данные в среде SQL Server Management Studio (SSMS) с помощью мастера экспорта и импорта данных с параметром «написать запрос, указывающий на передачу данных» появляется следующее сообщение об ошибке:

Обнаружено 1 неизвестное преобразование типов столбцов ><. Вы можете сохранить сведения о packagefurtherах (сведения об источнике) Ource Location: <DataBaseName>таблица: [запрос] столбец: <ColumnName>тип столбца: <typeid >тип столбцов. Файл сопоставления (тип служб SSIS): <FilePath>MSSQLToSSIS10.XML [целевая информация] расположение назначения: <ИмяСервера>поставщик назначения: SQLNCLI10able: [dbo]. Запроса Столбец: <ColumnName>тип столбца: <typeid>тип: (тип Unknown…) Файл сопоставления (для типа SSIS): <FilePath>MSSQLToSSIS10.XML [шаги преобразования] преобразование неизвестно… Файл преобразования служб SSIS: <FilePath>DtwTypeConversion.XML

Примечание. Эта проблема также возникает в SQL Server 2012 и SQL Server 2014.

Решение

Эта проблема впервые устранена в следующем накопительном обновлении SQL Server.

Накопительное обновление 2 для SQL Server 2014 /en-us/help/2967546

Накопительное обновление 10 для SQL Server 2012 с пакетом обновления 1 (SP1) /en-us/help/2954099

Накопительное обновление 12 для SQL Server 2008 R2 с пакетом обновления 2 (SP2) /en-us/help/2938478

Статус

Корпорация Майкрософт подтверждает наличие этой проблемы в своих продуктах, которые перечислены в разделе «Применяется к».

Нужна дополнительная помощь?

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's user avatar

OMG Ponies

321k79 gold badges516 silver badges499 bronze badges

asked Oct 23, 2010 at 18:19

steph's user avatar

2

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's user avatar

Piero

9,06318 gold badges88 silver badges158 bronze badges

answered Oct 23, 2010 at 18:21

codaddict's user avatar

codaddictcodaddict

440k80 gold badges490 silver badges526 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's user avatar

Daryl Gill

5,4149 gold badges36 silver badges69 bronze badges

answered Feb 17, 2014 at 19:21

Shay Anderson's user avatar

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

enter image description here

3- Try again

This works for me.

HoldOffHunger's user avatar

answered Dec 6, 2015 at 8:26

Mina Fawzy's user avatar

Mina FawzyMina Fawzy

20.5k16 gold badges129 silver badges149 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 Ponies's user avatar

OMG PoniesOMG Ponies

321k79 gold badges516 silver badges499 bronze badges

4

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's user avatar

andrewtweber

23.7k22 gold badges86 silver badges109 bronze badges

answered Mar 18, 2014 at 1:25

Roanna's user avatar

RoannaRoanna

2512 silver badges2 bronze badges

2

For MySQL Workbench

  1. Select database from Schemas tab by right mouse clicking.
  2. Set database as Default Schema

enter image description here

answered Dec 6, 2018 at 14:12

Eric Korolev's user avatar

1

  • Edit your SQL file using Notepad or Notepad++
  • add the following 2 line:

CREATE DATABASE NAME;
USE NAME;

ckpepper02's user avatar

ckpepper02

3,2675 gold badges28 silver badges43 bronze badges

answered Oct 11, 2013 at 20:48

Ayham AlKawi's user avatar

1

Assuming you are using the command line:

1. Find Database

show databases;

Example of a database list

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

BenKoshy's user avatar

BenKoshyBenKoshy

31.9k14 gold badges101 silver badges78 bronze badges

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 n's user avatar

ivan nivan n

991 silver badge1 bronze badge

1

be careful about blank passwords

mysqldump [options] -p '' --databases database_name

will ask for a password and complain with mysqldump: Got error: 1046: "No database selected" when selecting the database

the problem is that the -p option requires that there be no space between -p and the password.

mysqldump [options] -p'' --databases database_name

solved the problem (quotes are not needed anymore).

answered Jul 22, 2019 at 19:37

user3338098's user avatar

user3338098user3338098

9361 gold badge17 silver badges36 bronze badges

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

Sanket H patel's user avatar

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

sargupta's user avatar

sarguptasargupta

91712 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

iversoncru's user avatar

iversoncruiversoncru

5678 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

veeru666's user avatar

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

moolsbytheway's user avatar

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

David's user avatar

DavidDavid

7576 silver badges11 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

zipzit's user avatar

zipzitzipzit

3,5584 gold badges32 silver badges58 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

the10thplanet's user avatar

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

William T. Mallard's user avatar

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

cs075's user avatar

0

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's user avatar

OMG Ponies

321k79 gold badges516 silver badges499 bronze badges

asked Oct 23, 2010 at 18:19

steph's user avatar

2

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's user avatar

Piero

9,06318 gold badges88 silver badges158 bronze badges

answered Oct 23, 2010 at 18:21

codaddict's user avatar

codaddictcodaddict

440k80 gold badges490 silver badges526 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's user avatar

Daryl Gill

5,4149 gold badges36 silver badges69 bronze badges

answered Feb 17, 2014 at 19:21

Shay Anderson's user avatar

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

enter image description here

3- Try again

This works for me.

HoldOffHunger's user avatar

answered Dec 6, 2015 at 8:26

Mina Fawzy's user avatar

Mina FawzyMina Fawzy

20.5k16 gold badges129 silver badges149 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 Ponies's user avatar

OMG PoniesOMG Ponies

321k79 gold badges516 silver badges499 bronze badges

4

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's user avatar

andrewtweber

23.7k22 gold badges86 silver badges109 bronze badges

answered Mar 18, 2014 at 1:25

Roanna's user avatar

RoannaRoanna

2512 silver badges2 bronze badges

2

For MySQL Workbench

  1. Select database from Schemas tab by right mouse clicking.
  2. Set database as Default Schema

enter image description here

answered Dec 6, 2018 at 14:12

Eric Korolev's user avatar

1

  • Edit your SQL file using Notepad or Notepad++
  • add the following 2 line:

CREATE DATABASE NAME;
USE NAME;

ckpepper02's user avatar

ckpepper02

3,2675 gold badges28 silver badges43 bronze badges

answered Oct 11, 2013 at 20:48

Ayham AlKawi's user avatar

1

Assuming you are using the command line:

1. Find Database

show databases;

Example of a database list

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

BenKoshy's user avatar

BenKoshyBenKoshy

31.9k14 gold badges101 silver badges78 bronze badges

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 n's user avatar

ivan nivan n

991 silver badge1 bronze badge

1

be careful about blank passwords

mysqldump [options] -p '' --databases database_name

will ask for a password and complain with mysqldump: Got error: 1046: "No database selected" when selecting the database

the problem is that the -p option requires that there be no space between -p and the password.

mysqldump [options] -p'' --databases database_name

solved the problem (quotes are not needed anymore).

answered Jul 22, 2019 at 19:37

user3338098's user avatar

user3338098user3338098

9361 gold badge17 silver badges36 bronze badges

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

Sanket H patel's user avatar

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

sargupta's user avatar

sarguptasargupta

91712 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

iversoncru's user avatar

iversoncruiversoncru

5678 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

veeru666's user avatar

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

moolsbytheway's user avatar

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

David's user avatar

DavidDavid

7576 silver badges11 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

zipzit's user avatar

zipzitzipzit

3,5584 gold badges32 silver badges58 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

the10thplanet's user avatar

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

William T. Mallard's user avatar

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

cs075's user avatar

0

Недавно мне нужно было импортировать базу данных Microsoft SQL Server, созданной на одном сервере на другой сервер. Обычно я это делаю с помощью SQL Server Management Studio.

Вы, наверняка, в курсе, что простой экспорт и импорт баз данных можно выполнять с помощью функций резервного копирования и восстановления, где команда Back up будет служить экспортом, а команда Restore — импортом. (По умолчанию в подпапке Backups папки, где установлен Microsoft SQL Server, появится файл c расширением *.bak. Его-то и можно использовать для импорта на другом сервере.)

Я не особо тесно работал с Microsoft SQL Server. Просто знал, как можно импортировать и какую опцию включить при импорте, чтобы он состоялся. Но почему-то в этот раз мне никак не удавалось импортировать базу данных на свой сервер. Все попытки заканчивались ошибкой, примерно такой:

The backup set holds a backup of a database other than the existing ‘MyDatabase’ database.
RESTORE DATABASE is terminating abnormally. (Microsoft SQL Server, Error: 3154)

Почему же она возникает и как ее преодолеть?

Интернет дал мне две подсказки.

Во-первых, нужно включить перезапись своей базы данных, в которую восстанавливается чужая база данных.

Недавно мне нужно было импортировать базу данных Microsoft SQL Server, созданной на одном сервере на другой сервер. Обычно я это делаю с помощью SQL Server Management Studio.

Вы, наверняка, в курсе, что простой экспорт и импорт баз данных можно выполнять с помощью функций резервного копирования и восстановления, где команда Back up будет служить экспортом, а команда Restore — импортом. (По умолчанию в подпапке Backups папки, где установлен Microsoft SQL Server, появится файл c расширением *.bak. Его-то и можно использовать для импорта на другом сервере.)

Я не особо тесно работал с Microsoft SQL Server. Просто знал, как можно импортировать и какую опцию включить при импорте, чтобы он состоялся. Но почему-то в этот раз мне никак не удавалось импортировать базу данных на свой сервер. Все попытки заканчивались ошибкой, примерно такой:

The backup set holds a backup of a database other than the existing ‘MyDatabase’ database.
RESTORE DATABASE is terminating abnormally. (Microsoft SQL Server, Error: 3154)

Почему же она возникает и как ее преодолеть?

Интернет дал мне две подсказки.

Во-первых, нужно включить перезапись своей базы данных, в которую восстанавливается чужая база данных.

Этот фокус я знал и без интернета. И я как раз эту опцию включал. И мне это никак в этот раз не помогало.

Во-вторых, импортировать базу данных можно не с помощью пункта меню, а с помощью скрипта.

Вторая подсказка — несмотря на то, что скрипт делал то же самое, что и запуск команды из меню — дала мне возможность определить проблему.

Скрипт примерно такой:

RESTORE DATABASE NEW
FROM DISK = ‘C:Program FilesMicrosoft SQL ServerMSSQLBackupTEST.bak’
WITH REPLACE

При запуске скрипта в журнале я увидел в чем именно была проблема. Был указан путь по которому процесс восстановления базы данных пытался найти файлы база данных (*.mdf и *.ldf).

Путь этот резко отличался от путей, которые давал ему мой сервер. Дело в том, что на сервере, откуда была взята база данных, файлы *.mdf и *.ldf находились не в папке по умолчанию для Microsoft SQL Server, а в соврешенно другом месте. И путь этот был жестко пописан в файле импорта (резервной копии).

Поэтому при попытке восстановления, последнее захлебывалось, потому что ожидаемых файлов на «привычном» месте не окзалалось.

Что ж, это решаемая проблема.

Неправильный, но рабочий вариант (мой)

Поэтому я (плохо разбираясь в Microsoft SQL Server):

  1. Создал базу данных с точно таким же названием, что и на сервере-источнике. 
  2. Остановил службу SQL Server для следующего шага.
  3. Скопировал новосозданные файлы из папки по умолчанию, где мой сервер их создал, в папку, в которой ожидает ее бэкап, который я пытался импортировать на свой сервер.
  4. Запустил службу SQL Server.

Все. Теперь должно было заработать как нужно.

Правильный путь

Отступление. Умные же люди говорят, что правильно нужно в этом случае использовать еще пару опций MOVE, чтобы дать правильный новый путь к базе данных. Что-то вроде:

RESTORE DATABASE NEW
FROM DISK = ‘C:Program FilesMicrosoft SQL ServerMSSQLBackupTEST.bak’
WITH REPLACE,
MOVE ‘TEST’ TO ‘C:Program FilesMicrosoft SQL ServerMSSQLDATANEW.mdf’,
MOVE ‘TEST_Log’ TO ‘C:Program FilesMicrosoft SQL ServerMSSQLDATANEW_log.ldf’

Либо в окне импорта (восстановления), указать новый путь в колонке Restore As.

И правда, ваши мучения должны здесь закончится.

Опять неправильный, но рабочий вариант (мой)

Но я сделал, не как в этом скрипте, а как написал выше — копированием файлов. И да, указанная проблема решилась, но теперь импорт не получался из-за другой проблемы.

Скопированные в другое место файлы не открывались при восстановлении БД — доступ был запрещен.

Тут я же растерялся. Успех маячил перед глазами — и на тебе. Очередная ошибка.

Но воспользовался помощью зала. Человек, сведущий в этих вопросах подсказал: просто на скопированные в другое место файлы не были выставлены права доступа.

И ларчик просто открывался. Нужно было всего лишь дать доступ к этим файлам. Чтобы долго не возится — так как это одноразовое действие, я просто временно — для импорта- дал все права учетной записи Everyone.

И в этот раз импорт прошел и копия базы с другого сервера теперь обосновалась на моем сервере.

Но повторю. Я делал этот фокус с копированием файлов и выставлением прав на них от не знания правильного способа с опцией MOVE.

Итоги

И правда, ваши мучения должны здесь закончится.

Опять неправильный, но рабочий вариант (мой)

Но я сделал, не как в этом скрипте, а как написал выше — копированием файлов. И да, указанная проблема решилась, но теперь импорт не получался из-за другой проблемы.

Скопированные в другое место файлы не открывались при восстановлении БД — доступ был запрещен.

Тут я же растерялся. Успех маячил перед глазами — и на тебе. Очередная ошибка.

Но воспользовался помощью зала. Человек, сведущий в этих вопросах подсказал: просто на скопированные в другое место файлы не были выставлены права доступа.

И ларчик просто открывался. Нужно было всего лишь дать доступ к этим файлам. Чтобы долго не возится — так как это одноразовое действие, я просто временно — для импорта- дал все права учетной записи Everyone.

И в этот раз импорт прошел и копия базы с другого сервера теперь обосновалась на моем сервере.

Но повторю. Я делал этот фокус с копированием файлов и выставлением прав на них от не знания правильного способа с опцией MOVE.

Итоги

Повторю главные моменты, которые можно или нужно сделать, если возникают ошибки при импорте (восстановлении) одной БД в другую :

  1. включить перезапись своей базы данных, в которую восстанавливается чужая база данных — либо из из окна восстановления, либо с помощью опции REPLACE в скрипте восстановления
  2. проверить путь к базе данных, прописанный в файле резервной копии базы данных (запустив скрипт, приведенный выше, можно отчетливо увидеть ожидаемый путь при ошибке) 

Путь можно исправить с помощью другой опции MOVE указав логическое имя базы данных-источника, и нового пути к файлам (*.mdf, *.ldf) к файлу получателей.

(Можно конечно сделать как я: скопировать файлы базы данных получателя в то место, где резервная копия базы данных-источника ожидает их, но при этом не забыть дать права процессу, осуществляющему импорт, на эти скопированные файлы базы данных.

Но лучше воспользоваться MOVE и не морочить себе голову, как я.)

Некоторые типы ошибок в работе с базой данных MySQL при импорте или экспорте базы данных.

Ошибка 1

При экспорте MySQL через phpMyAdmin возникала ошибка, которая приводила к невозможности выполнить сохранение база данных. Причина была в испортившихся таблицах, из-за которой и возникала ошибка.

Ошибка была следующего вида:

Не удалось создать резервную копию базы данных. Процесс завершился с ошибкой: ‘mysqldump: Got error: 1146: Table ‘site.wp_subscribe_reloaded_subscribers’ doesn’t exist when using LOCK TABLES

Решение

Через SSH зайти на VDS.

Использовать команду:

mysqlcheck -u MySQL_name -p MySQL_user_name

Ввести пароль от базы данных.

У меня был выведен список всех таблиц, где несуществующая таблица была показана с ошибкой. В самой базе данных MySQL её не было, а phpMyAdmin на неё все равно ругался.

MySQL_name.wp_statpress                           OK
MySQL_name.wp_subscribe_reloaded_subscribers
Error    : Table ‘MySQL_name.wp_subscribe_reloaded_subscribers’ doesn’t exist
status   : Operation failed
MySQL_name.wp_term_relationships                  OK

Ввести команду (подтвердить паролем):

Появится такая строка:

Нужно выбрать базу данных:

Показать таблицы в ней (Точка с запятой обязательна!):

Будут показаны все таблицы.

После этого удалил таблицу:

drop table wp_subscribe_reloaded_subscribers;

Появилась ошибка:

ERROR 1051 (42S02): Unknown table ‘wp_subscribe_reloaded_subscribers’

но при этом она была удалена и больше нигде не отображалась, а экспорт заработал.

Ошибка 2

Сообщение об ошибки возникло на CentOS с ISPmanager.

При создании базы данных с именем, которое когда-то существовало, возникала ошибка:
«Имя базы уже существует»

Имя базы было в таблице db в системной базе MySQL. Удаление записи оттуда решило эту проблему.

Ошибка 3

При импорте базы данных возникала следующая ошибка:

#1064 — You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ‘…..sql’ at line 1

В архиве базы данных находилось несколько файлов. Надо было разархивировать архив и заархивировать только файл базы данных.

Ошибка 4

You probably tried to upload a file that is too large. Please refer to documentation for a workaround for this limit.

Решение приведено статье ошибка при импорте в phpMyAdmin.

  1. Offline

    DKraev

    <i>(aka gft)</i>
    => Cпециалист <=

    Регистрация:
    16.08.2008
    Сообщения:
    1 627
    Симпатии:
    219
    Пол:
    Мужской

    Приветствую всех. За время моего пребывания на данном форуме довольно часто возникали вопросы по ошибкам при импорте/экспорте базы данных MySQL (далее БД).

    Вопросы примерно такие:

    • После переноса (импорта) БД на хостинг на сайте сбилась кодировка. На локальном сайте все нормально;
    • При переносе (импорте) БД возникает ошибка #1064 или другая;
    • Пропадает текст после переноса (импорта) БД.
    • Как перенести базу с Denwer на хостинг (или наоборот)
    • и т.д

    Прежде чем публиковать подобный вопрос на форуме, настоятельно рекомендую прочитать данный пост полностью, и что самое главное — СДЕЛАТЬ все что здесь написано.

    Большинство ошибок возникает именно из-за неправильного переноса, поэтому я опишу импорт/экспорт БД при помощи скрипта Sypex Dumper. Я буду описывать работу с Lite версией, с которой я успешно работаю уже больше трех лет. Хотел бы заметить что подобной информации полно в сети, однако у нас на форуме её нет. А так как большинство новичков при любой проблеме сразу идут сюда, а не в Google, то я решил написать этот небольшой мануальчик. Многим он поможет решить проблемы с переносом БД, а старожилов форума избавит от необходимости писать про Sypex Dumper снова и снова :)

    В первую очередь скачиваем скрипт отсюда (utf-8, архив прикреплен к посту) либо с сайта разработчика (cp1251). Распаковываем архив. На выходе получим два файла — readme.txt (инструкция) и dumper.php (сам скрипт).

    Экспорт БД с локального компьютера.

    Я работаю на Denwer, но и для других должно быть точно так же по идее.

    1. Копируете файл dumper.php в корень сайта.
    2. Создаете новую папку, которую называете backup
    3. Набираете в браузере: www.adres_sayta.ru/dumper.php
    4. Вводите логин пользователя и пароль для базы данных, нажимаете «Применить»
    5. Чекбокс на «Backup/Создание резервной копии БД». Фильтр таблиц — оставляете пустым. Метод сжатия — GZip. Степень сжатия — 7. Нажимаете «Применить»

    Наблюдаем, как весело бегут строчки вверх. Ваш дамп готов! Зайдите в ранее созданную папку backup, вы увидите архив примерно такой — amurka_2010-08-20_23-30.sql.gz — это и есть дамп БД.

    Импорт БД на хостинг.

    1. Заливаете файл dumper.php в корень сайта на хостинг.
    2. Заливаете папку backup тоже в корень сайта. Права на папку — 777. Так же внутри данной папки будет лежать файл dumper.cfg.php — для него тоже выставляете 777
    3. Набираете в браузере: www.adres_sayta.ru/dumper.php
    4. Вводите логин пользователя и пароль для базы данных, нажимаете «Применить»
    5. Чекбокс на «Restore / Восстановление БД из резервной копии». БД — выбираете базу данных на хостинге. Файл — выбираете наш файл с дампом (пример — amurka_2010-08-20_23-30.sql.gz). Нажимаете «Применить».

    Наш дамп имортируется на хост.

    Перенос с хостинга на локалку выполняется аналогичным образом. Держать дампы на хостинге не рекомендую.

    Ошибки.

    Многие могут столкнуться с ошибкой «#2005: Unknown MySQL server host ‘имя’ (11004)» при импорте БД на хостинг. Это говорит о том, что неверно указан MySQL сервер. В dumper.php по умолчанию указан «localhost», на хостинге же может быть любой. Например — p1543.mysql.ihc.ru

    Откройте файл dumper.php и в 34 строке найдите код:

    1. define(‘DBHOST’, ‘localhost:3306’);

    Вместо localhost:3306 впишите MySQL сервер вашего хостинга. Сохраните файл. Повторите попытку импорта.
    ———————————————-

    Несколько раз у меня не получалось залить базу на хост при помощи этого скрипта. Но это была проблема хостера. Решалось выставлением CHMOD 777 на папку www
    ———————————————-

    Я не рассматривал дополнительные настройки данного скрипта (кстати их довольно много). Данный мануал рассчитан на новичков, которые испытывают проблемы при переносе БД. Того что я написал достаточно для успешного переноса БД в 90% случаев. За более полной информацией — на сайт разработчика, либо в Google.

    Вложения:

    Последнее редактирование: 17.09.2010

  2. woojin

    Offline

    woojin

    Местный
    Команда форума
    => Cпециалист <=

    Регистрация:
    31.05.2009
    Сообщения:
    3 206
    Симпатии:
    334
    Пол:
    Мужской

    «+» тебе за описание

    я приведу свой пример, немного по другому, но принцип то же

    1. открываем phpMyAdmin
    2. делаем дамп базы
    3. потом в получевшемся файлике ищем такую строкуENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1, нас интересует выделенный фрагмент — эта строчка обычно идёт после функции создания таблицы т.е. CREATE TABLE IF NOT EXISTS
    4. если не ясно в какой кодировке должна быть таблицы то этот выделенный фрагмент удаляем везде где он есть, сохраняем получившийся файл
    5. импортируем дамп в другую базу

    P.S. если всё равно кякозяблики, то просто пере сохраняем файл с дампом в другой кодировке — меня этот метод ни когда ещё не подводил

  3. mcsweb

    Offline

    mcsweb

    Недавно здесь

    Регистрация:
    25.01.2010
    Сообщения:
    10
    Симпатии:
    0
    Пол:
    Мужской

    А вот нифига phpMyAdmin не вышло.

    Ради науки решил перекинуть сайт с одного локального сервера на другой.
    С ХАМРР на Денвер.
    Как бы я не делал экспорт базу данных на ХАММРе в Денвере он не принимался.
    В конце концов просто скопировал папку с таблицами с одного сервака на другой.
    В результате сайт работает с ошибками.

    Буду пробовать скрипт от первого советчика.

    Попробовал- результат тот же .
    Хотя дампер.пхп отработал отлично.
    Виднео что то в денвере не так совмещается

    Последнее редактирование: 23.08.2010

  4. woojin

    Offline

    woojin

    Местный
    Команда форума
    => Cпециалист <=

    Регистрация:
    31.05.2009
    Сообщения:
    3 206
    Симпатии:
    334
    Пол:
    Мужской

    интересно по чему не сработал ни один ни второй вариант?!

    есть вариант воспользоваться компонентом http://www.akeebabackup.com/ это следующая версия joomlapack

    в описании почитай про совместимость компонента с версиями php

  5. Offline

    VashMaster

    Недавно здесь

    Регистрация:
    19.08.2010
    Сообщения:
    19
    Симпатии:
    1
    Пол:
    Мужской

    Тоже всегда делаю всё аналогично посту ТС. Пользуюсь утилиткой дампер. Проблем обычно не было. Но вот при переносе сайта на Joomla почему-то появились ;)

    Сделал дамп, потом этим же дамперов восстановил дамп. Но всё равно появились кракозябры.
    Проблему удалось решить только с помощью добавления команды:

    1. mysql_query(«SET NAMES cp1251»);

    в файле index.php на фронт энде и бекенде. Добавил после вызова функции

    1. $mainframe->initialise();

    Получилось примерно так:

    1. $mainframe->initialise();

    2. mysql_query(«SET NAMES cp1251»);

    Только тогда всё стало ОК. Если не поможет, то, возможно, у вас используется кодировка UTF. Пробуйте…

    p.s. При работе с «дампером» редко бывают проблемы с кодировкой, но вот случилось ;) Видимо, я не зря недолюбливаю Джумлу ;)

  6. Offline

    DKraev

    <i>(aka gft)</i>
    => Cпециалист <=

    Регистрация:
    16.08.2008
    Сообщения:
    1 627
    Симпатии:
    219
    Пол:
    Мужской

    Модераторы, закрепите тему. Подобные вопросы продолжают сыпаться. До второй страницы (куда уже спустилась эта тема) пользователям дочитывать уже лень… По всей видимости что такое поиск они тоже не знают…

  7. Offline

    Владимир.

    Недавно здесь

    Регистрация:
    25.02.2011
    Сообщения:
    1
    Симпатии:
    0
    Пол:
    Мужской

    Не хотел ставиться русский язык, вылезали кракозябры. Как я только не пересохранял файлы и базы ничего не помогало… Снес снова все и сделал по главной инструкции через Sypex и чудо таки случилось!!! :yahoo:

    Хочу добавить:

    При создании на локальном компьютере дампа используем логин и пароль базы данных, созданной в самом начале. (не путать с логином для входа в админку джумлы)

    При запуске на хостинге необходимо указать логин и пароль к базе данных, лежащей у хостера.

    Дальше необходимо просто перенести все файлы с локального компьютера на сервер хостера и поправить файл configuration.php

    А еще у меня возник вопрос относительно приключений с кодировками…
    Не может ли сама операционка выдавать эти сюрпризы?
    Когда я первый раз заливал этот же сайт на хостинг у меня все прошло гладко и не возникло проблем.
    После того как сайт сломали, я переустановил винду, денвер и джумлу на 1.5.22. Вот и думаю, что именно повлияло на неправильное отображение символов…

  8. Offline

    DKraev

    <i>(aka gft)</i>
    => Cпециалист <=

    Регистрация:
    16.08.2008
    Сообщения:
    1 627
    Симпатии:
    219
    Пол:
    Мужской

    Не знаю, работал и на XP и на семёрке — проблем не возникало. Но может быть потому что я всегда пользуюсь Sypex… Чаше всего траблы вылезают именно на хостинге… НА локалке, как уже сказал, всегда всё ровно…

  9. Offline

    oceay

    Недавно здесь

    Регистрация:
    12.09.2011
    Сообщения:
    1
    Симпатии:
    0
    Пол:
    Мужской

    Спасибо огромное, gft !!!! Сначала многое кажется непонятным, но начинаешь делать согласно инструкции и всё получается само собой. Ещё раз спасибо!

  10. woojin

    Offline

    woojin

    Местный
    Команда форума
    => Cпециалист <=

    Регистрация:
    31.05.2009
    Сообщения:
    3 206
    Симпатии:
    334
    Пол:
    Мужской

    это ты админу отправь, я не могу этого сделать!!!

Поделиться этой страницей

Видимо не правильно вставляю в код — ошибка остается.

Могли бы Вы указать куда именноsmile Спасибо!

Это часть кода:

— phpMyAdmin SQL Dump
— version 2.6.1
— http://www.phpmyadmin.net

— Хост: localhost
— Время создания: Июн 18 2009 г., 13:30
— Версия сервера: 5.0.45
— Версия PHP: 5.2.4

— БД: `project`

— ———————————————————


— Структура таблицы `jos_banner`

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’,
  `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 ;


— Дамп данных таблицы `jos_banner`

— ———————————————————


— Структура таблицы `jos_bannerclient`

CREATE TABLE `jos_bannerclient` (
  `cid` int(11) NOT NULL auto_increment,
  `name` varchar(255) NOT NULL default »,
  `contact` varchar(255) NOT NULL default »,
  `email` varchar(255) NOT NULL default »,
  `extrainfo` text NOT NULL,
  `checked_out` tinyint(1) NOT NULL default ‘0’,
  `checked_out_time` time default NULL,
  `editor` varchar(50) default NULL,
  PRIMARY KEY  (`cid`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;


— Дамп данных таблицы `jos_bannerclient`

— ———————————————————


— Структура таблицы `jos_bannertrack`

CREATE TABLE `jos_bannertrack` (
  `track_date` date NOT NULL,
  `track_type` int(10) unsigned NOT NULL,
  `banner_id` int(10) unsigned NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8;


— Дамп данных таблицы `jos_bannertrack`

— ———————————————————


— Структура таблицы `jos_categories`

CREATE TABLE `jos_categories` (
  `id` int(11) NOT NULL auto_increment,
  `parent_id` int(11) NOT NULL default ‘0’,
  `title` varchar(255) NOT NULL default »,
  `name` varchar(255) NOT NULL default »,
  `alias` varchar(255) NOT NULL default »,
  `image` varchar(255) NOT NULL default »,
  `section` varchar(50) NOT NULL default »,
  `image_position` varchar(30) NOT NULL default »,
  `description` text NOT NULL,
  `published` tinyint(1) NOT NULL default ‘0’,
  `checked_out` int(11) unsigned NOT NULL default ‘0’,
  `checked_out_time` datetime NOT NULL default ‘0000-00-00 00:00:00’,
  `editor` varchar(50) default NULL,
  `ordering` int(11) NOT NULL default ‘0’,
  `access` tinyint(3) unsigned NOT NULL default ‘0’,
  `count` int(11) NOT NULL default ‘0’,
  `params` text NOT NULL,
  PRIMARY KEY  (`id`),
  KEY `cat_idx` (`section`,`published`,`access`),
  KEY `idx_access` (`access`),
  KEY `idx_checkout` (`checked_out`)
) ENGINE=MyISAM AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 AUTO_INCREMENT=2 ;


— Дамп данных таблицы `jos_categories`

INSERT INTO `jos_categories` VALUES (1, 0, ‘Администраторы’, », ‘2009-04-09-12-50-24’, », ‘com_contact_details’, ‘left’, », 1, 0, ‘0000-00-00 00:00:00’, NULL, 1, 0, 0, »)

15 ответов

Вам нужно указать MySQL, какую базу данных использовать:

USE database_name;

прежде чем создавать таблицу.

Если база данных не существует, вам необходимо создать ее как:

CREATE DATABASE database_name;

а затем:

USE database_name;

codaddict
23 окт. 2010, в 18:35

Поделиться

Вы также можете указать MySQL, какую базу данных использовать (если она уже создана):

 mysql -u example_user -p --database=example < ./example.sql

Shay Anderson
17 фев. 2014, в 19:47

Поделиться

Я столкнулся с такой же ошибкой, когда попытался импортировать базу данных, созданную ранее. Вот что я сделал, чтобы исправить эту проблему:

1- Создать новую базу данных

2- Используйте его с use команды

Изображение 881

3- Повторите попытку

Это работает для меня.

Mina Fawzy
06 дек. 2015, в 09:44

Поделиться

Если вы пытаетесь сделать это с помощью командной строки…

Если вы пытаетесь запустить оператор CREATE TABLE из интерфейса командной строки, вам нужно указать базу данных, в которой вы работаете, перед выполнением запроса:

USE your_database;

Здесь документация.

Если вы пытаетесь сделать это через MySQL Workbench…

… вам нужно выбрать соответствующую базу данных/каталог в раскрывающемся меню, расположенном над вкладкой «Обозреватель объектов: вкладка». Вы можете указать стандартную схему/базу данных/каталог для подключения — нажмите «Управление соединениями» в разделе «Развитие SQL» экрана заставки Workbench.

Добавление

Все это предполагает наличие базы данных, в которой вы хотите создать таблицу внутри — если нет, вам нужно создать базу данных прежде всего:

CREATE DATABASE your_database;

OMG Ponies
23 окт. 2010, в 19:40

Поделиться

Если вы делаете это через phpMyAdmin:

  • Я предполагаю, что вы уже создали новую базу данных MySQL на Live-сайте (на живом сайте я имею в виду компанию, в которой ваш хостинг (в моем случае Bluehost)).

  • Перейдите в phpMyAdmin на сайте live — войдите в базу данных, которую вы только что создали.

  • Теперь ВАЖНО! Прежде чем нажимать кнопку «импорт» на верхней панели, выберите свою базу данных в левой части страницы (серая полоса, сверху вверху написан PHP Myadmin, под ней два параметра: information_schema и имя базы данных, в которую вы только вошли.

  • после того, как вы щелкнете базу данных, которую вы только что создали/вошли в нее, она покажет вам эту базу данных и затем щелкните параметр импорта.

Это трюк для меня. Надеюсь, что поможет

Roanna
18 март 2014, в 01:40

Поделиться

  • Отредактируйте свой SQL файл, используя Блокнот или Блокнот ++
  • добавьте следующую строку:

CREATE DATABASE NAME;
USE NAME;

Ayham AlKawi
11 окт. 2013, в 21:40

Поделиться

Если вы импортируете базу данных, вам нужно сначала создать ее с тем же именем, затем выбрать ее, а затем импортировать в нее существующую базу данных.

Надеюсь, что это сработает для вас!

ivan n
25 окт. 2011, в 17:44

Поделиться

цитирование ivan n:
«Если вы импортируете базу данных, вам нужно сначала создать ее с тем же именем, а затем выбрать ее, а затем импортировать в нее существующую базу данных.
Надеюсь, это сработает для вас! «

Это следующие шаги:
Создайте базу данных, например my_db1, utf8_general_ci.
Затем нажмите, чтобы войти в эту базу данных.
Затем нажмите «импорт» и выберите базу данных: my_db1.sql

Это должно быть все.

iversoncru
18 апр. 2013, в 13:56

Поделиться

сначала выберите базу данных: USE db_name

тогда таблица creat: CREATE TABLE tb_name
(  id int,
 имя varchar (255),
 зарплата int, город варчар (255)
);

this для синтаксиса версии mysql 5.5

veeru666
04 июль 2015, в 13:13

Поделиться

Для MySQL Workbench

  1. Выберите базу данных со вкладки Схемы, щелкнув правой кнопкой мыши.
  2. Установить базу данных как схему по умолчанию

Изображение 882

Eric Korolev
06 дек. 2018, в 14:36

Поделиться

Я опаздываю, думаю:] Сори,

Если вы здесь, как я, ища решение, когда эта ошибка возникает с 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
23 сен. 2018, в 03:56

Поделиться

Для дополнительного элемента безопасности при работе с несколькими БД в том же script вы можете указать БД в запросе, например. msgstr «создать таблицу my_awesome_db.really_cool_table…».

William T. Mallard
17 июль 2016, в 16:22

Поделиться

Просто хотел добавить: если вы создаете базу данных в mySQL на живом сайте, перейдите в PHPMyAdmin, и база данных не появится — выход из cPanel, затем войдите в систему, откройте PHPMyAdmin, и он должен быть там сейчас.

the10thplanet
05 авг. 2014, в 00:57

Поделиться

Хотя это довольно старый поток, я только что нашел что-то. Я создал новую базу данных, затем добавил пользователя и, наконец, пошел использовать phpMyAdmin для загрузки файла .sql. общий сбой. Система не распознает, к какой базе данных я стремился…

Когда я начинаю новый БЕЗ с первого присоединения нового пользователя, а затем выполняет тот же импорт phpMyAdmin, он отлично работает.

zipzit
27 сен. 2013, в 11:01

Поделиться

jst создайте новую базу данных в mysql. Выберите этот новый DB. (если вы используете mysql phpmyadmin сейчас, то наверху он будет похож на «Сервер: ... * → База данных). Теперь перейдите на вкладку импорта, выберите файл. Импорт!

cs075
19 окт. 2015, в 07:27

Поделиться

Ещё вопросы

  • 0ошибка c3861: ‘_crt_va_end’: идентификатор не найден
  • 0Передача файла js из php в mongo
  • 1Как я могу динамически изменить непрозрачность линейного графа в D3?
  • 0мульти добавить элемент в список выбора
  • 0Разбивка плагинов datatables для jQuery не работает
  • 1сортировка массива в Javascript по определенному значению ключа и повторная сортировка по другому значению ключа
  • 1Запретить определенные символы с помощью регулярных выражений для Dropbox
  • 0найти и зациклить элементы в массиве по идентификатору
  • 0Изменение цвета фона div на основе его идентификатора
  • 1Ошибка типа — ссылка на классы JavaScript
  • 0Почему это очень простое автозаполнение JQuery не работает при использовании локального массива объектов?
  • 1Highcharts, установить высоту легенды динамически
  • 0регулярное выражение для получения URL не удается
  • 0Сохранять содержимое формы при закрытии модального Ui-Bootstrap
  • 0Исправление многострочной загрузки с помощью smoothdivscroll
  • 1Все еще получаете идентификатор сессии после уничтожения сессии
  • 0Я звоню на многие сессии JQuery?
  • 0Угловая директива для загрузки файла
  • 1nightwatch: сбой обратного вызова в waitForElementPresent
  • 1Автоматическое масштабирование бэкэндов — Appengine Java
  • 0почему эта страница перенаправляет в цикле? (простая страница входа в сессию)
  • 1VUE2 передача параметра от дочернего к родительскому
  • 1Итерация по набору данных для получения дочерних строк
  • 0Попытка заменить символы в C ++ Strings, полностью застрял
  • 0Показать строки из других таблиц, если они существуют (SQL)
  • 1Как добавить массив к каждой предыдущей строке в пандах?
  • 0Загрузка массива с циклом for
  • 0PrezentDoctrineTranshableBundle без резервной локали
  • 0Вычисление двумерного массива пикселей с использованием CUDA, объявление правильных размеров сетки и блоков
  • 0Laravel 4 Неопределенные ошибки переменных
  • 0хотите получить имя файла и его путь, который был загружен с помощью плагина jquery
  • 0Попытка инициализировать карту, которая принимает объект в качестве значения в конструкторе
  • 1libGDX не будет работать на Android
  • 1Разрыв 2-х вложенных циклов «сразу»
  • 0Страница прокручивается, как только прокрутка div достигает своего конца
  • 0PHP SOAP-клиент несколько элементов
  • 0AngularJS Предварительная настройка фильтра
  • 1Почему производительность снижается при подборе модели Random Forest после снижения с помощью PCA?
  • 1Подходят ли объекты для сборки мусора после загрузки страницы?
  • 1Динамически загружать HTML на основе URL
  • 0JQuery: получить выбор внутри строки таблицы
  • 1Как создать шифр подстановки ключевых слов
  • 0Обложка + макет профиля
  • 0Почему не работает preg replce в iframe?
  • 1MVC 5 Не удается неявно преобразовать тип ‘System.Linq.IQueryable в bool?
  • 0Проверьте, генерируется ли сообщение журнала, используя Boost.Log
  • 0Добавить drupal в существующий проект Angular
  • 1Как создать две взаимодействующие, но не блокирующие службы в Android?
  • 0Jquery добавить HTML установить идентификатор переменной

Понравилась статья? Поделить с друзьями:
  • Ошибка при импорте csv файла
  • Ошибка при иммобилизации всей нижней конечности лестничными шинами
  • Ошибка при измерении пульса mi band 4
  • Ошибка при измерении линии не должна превышать
  • Ошибка при измерении давления которую делают все