Kesalahan 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 berkata:
#1046 - No database selected
butuh bantuan di sini.
Anda perlu untuk memberitahu MySQL database yang digunakan:
USE database_name;
sebelum anda membuat sebuah tabel.
Dalam kasus database tidak ada, anda perlu untuk membuat itu sebagai:
CREATE DATABASE database_name;
diikuti oleh:
USE database_name;
Anda juga dapat memberitahu MySQL database apa yang akan digunakan (jika anda memilikinya sudah dibuat):
mysql -u example_user -p --database=example < ./example.sql
Saya menghadapi kesalahan yang sama ketika saya mencoba untuk mengimpor database yang dibuat sebelumnya. Berikut adalah apa yang saya lakukan untuk memperbaiki masalah ini:
1 - Membuat database baru
2 - Gunakan dengan menggunakan
perintah
3 - Coba lagi
Ini bekerja untuk saya.
Jika anda're berusaha untuk menjalankan pernyataan CREATE TABLE dari antarmuka baris perintah, anda perlu menentukan database anda're kerja di sebelum mengeksekusi query:
USE your_database;
Berikut ini's dokumentasi.
...yang anda butuhkan untuk memilih database yang sesuai/katalog dalam menu drop-down yang ditemukan di atas :Objek Browser: tab. Anda dapat menentukan default schema/database/katalog untuk sambungan - klik "Mengelola Koneksi" pilihan di bawah SQL Pembangunan menuju meja Kerja splash screen.
Ini semua mengasumsikan ada's sebuah database yang anda inginkan untuk membuat tabel dalam - jika tidak, anda perlu membuat database sebelum hal lain:
CREATE DATABASE your_database;
Jika anda melakukan hal ini melalui phpMyAdmin:
I'm dengan asumsi anda sudah Buat Database MySQL baru di Live Site (oleh situs hidup saya berarti perusahaan hosting anda dengan (dalam kasus saya Bluehost)).
Pergi ke phpMyAdmin di situs hidup - log in ke database yang baru saja anda buat.
Sekarang, PENTING! Sebelum mengklik "impor" pilihan pada bar atas, pilih database anda pada sisi kiri halaman (bar abu-abu, di atas memiliki PHP Myadmin tertulis, berikut ini dua pilihan:information_schema dan nama database anda hanya login ke dalam.
setelah anda klik database yang baru saja anda buat/login ke dalamnya akan menunjukkan kepada anda bahwa database dan kemudian klik opsi impor.
Trik itu berhasil bagi saya. Benar-benar berharap yang membantu
SQL
file menggunakan Notepad atau Notepad++BUAT NAMA DATABASE; MENGGUNAKAN NAMA;
mengutip ivan n : "Jika mengimpor database, anda harus membuat dulu dengan nama yang sama, kemudian pilih dan kemudian IMPORT database yang ada untuk itu. Harapan itu bekerja untuk anda!"
Ini adalah langkah-langkahnya: Membuat Database, misalnya my_db1, utf8_general_ci. Lalu klik untuk masuk ke dalam database ini. Kemudian klik "impor", dan pilih database: my_db1.sql
Yang harus semua.
berhati-hati tentang password kosong
mysqldump [options] -p '' --databases database_name
akan meminta password dan mengeluh dengan mysqldump: Ada kesalahan: 1046: "Tidak ada database yang dipilih" ketika memilih database
masalahnya adalah bahwa -p
pilihan mensyaratkan bahwa tidak ada ruang antara -p
dan password.
mysqldump [options] -p'' --databases database_name
memecahkan masalah (kutipan tidak diperlukan lagi).
Meskipun ini thread lama, saya baru saja menemukan sesuatu. Saya membuat sebuah database baru, kemudian menambahkan pengguna, dan akhirnya pergi untuk menggunakan phpMyAdmin untuk meng-upload .sql file. kegagalan total. Sistem doesn't mengenali mana DB I'm yang bertujuan untuk...
Ketika saya mulai segar TANPA terlebih dahulu melampirkan pengguna baru, dan kemudian melakukan hal yang sama phpMyAdmin impor, itu bekerja dengan baik.
Hanya ingin menambahkan: Jika anda membuat database di mySQL pada situs hidup, kemudian masuk ke PHPMyAdmin, dan database isn't menunjukkan up - logout dari cPanel, kemudian masuk kembali, buka PHPMyAdmin, dan itu harus ada sekarang.
I'm terlambat saya berpikir :] soory,
Jika anda berada di sini seperti saya mencari solusi ketika terjadi kesalahan ini dengan mysqldump
bukan mysql, coba solusi ini yang saya temukan di sebuah situs jerman di luar sana secara kebetulan, jadi saya ingin berbagi dengan orang-orang tunawisma yang punya sakit kepala seperti saya.
Sehingga masalah ini terjadi karena kurangnya -database
parameter sebelum nama database
Jadi perintah anda harus terlihat seperti ini:
mysqldump -pdbpass -udbuser --databases dbname
Penyebab lain dari masalah dalam kasus saya adalah bahwa saya'm dipasang pada lokal dan root
pengguna doesn't memiliki password, sehingga dalam hal ini anda harus menggunakan --password=
bukan -pdbpass
, jadi saya akhir perintah:
mysqldump -udbuser --password= --databases dbname
Link ke thread lengkap (dalam bahasa jerman) : https://marius.bloggt-in-braunschweig.de/2016/04/29/solution-mysqldump-no-database-selected-when-selecting-the-database/