Galat kueri SQL:
--
-- Database: `work`
--
-- --------------------------------------------------------
--
-- Table structure for table `administrators`
--
CREATE TABLE IF NOT EXISTS `administrators` (
`user_id` varchar( 30 ) NOT NULL ,
`password` varchar( 30 ) NOT NULL ) ENGINE = InnoDB DEFAULT CHARSET = latin1;
MySQL berkata:
#1046 - No database selected
butuh bantuan di sini.
sql
mysql
mysql-error-1046
steph
sumber
sumber
mysql -u root -p databasename < import.sql
Jawaban:
Anda perlu memberi tahu MySQL database mana yang akan digunakan:
sebelum Anda membuat tabel.
Jika basis data tidak ada, Anda harus membuatnya sebagai:
diikuti oleh:
sumber
USE tablename
perintah.CREATE DATABASE IF NOT EXISTS database_name ;
USE database_name;
Ini berfungsi apakah database sudah dibuat atau belum.Anda juga dapat memberi tahu MySQL database apa yang digunakan (jika sudah dibuat):
sumber
mysql example -u example_user -p < ./example.sql
?Saya menghadapi kesalahan yang sama ketika saya mencoba mengimpor database yang dibuat sebelumnya. Inilah yang saya lakukan untuk memperbaiki masalah ini:
1- Buat database baru
2- Gunakan dengan
use
perintah3 - Coba lagi
Ini bekerja untuk saya.
sumber
Jika Anda mencoba melakukan ini melalui baris perintah ...
Jika Anda mencoba menjalankan pernyataan CREATE TABLE dari antarmuka baris perintah, Anda harus menentukan database tempat Anda bekerja sebelum menjalankan kueri:
Berikut dokumentasinya .
Jika Anda mencoba melakukan ini melalui MySQL Workbench ...
... Anda perlu memilih database / katalog yang sesuai di menu tarik turun yang ditemukan di atas: Browser Objek: tab. Anda dapat menentukan skema / database / katalog default untuk koneksi - klik opsi "Kelola Koneksi" di bawah judul Pengembangan SQL pada layar splash Workbench.
Tambahan
Ini semua mengasumsikan ada database yang ingin Anda buat tabelnya - jika tidak, Anda perlu membuat database sebelum yang lain:
sumber
USE database;
perintah, bahkan di MySQL Workbench (saya di v5.2.47) jika Anda mendapatkan kesalahan ini. Hanya perlu menjalankannya satu kali per tab permintaan - semua eksekusi berikutnya pada tab itu tampaknya menggunakan database dengan benar.Jika Anda melakukan ini melalui phpMyAdmin:
Saya berasumsi Anda sudah Membuat Database MySQL baru di Situs Langsung (berdasarkan situs langsung saya maksudkan perusahaan hosting Anda (dalam kasus saya Bluehost)).
Buka phpMyAdmin di situs langsung - masuk ke database yang baru saja Anda buat.
Sekarang PENTING! Sebelum mengklik opsi "impor" di bilah atas, pilih basis data Anda di sisi kiri halaman (bilah abu-abu, di atas ada PHP Myadmin yang ditulis, di bawahnya ada dua opsi: information_schema dan nama basis data yang baru saja Anda masuki.
setelah Anda mengklik database yang baru saja Anda buat / masuk ke dalamnya akan menunjukkan kepada Anda database itu dan kemudian klik opsi impor.
Itu berhasil bagi saya. Sangat berharap itu bisa membantu
sumber
SQL
file Anda menggunakan Notepad atau Notepad ++CREATE DATABASE NAME; USE NAME;
sumber
Jika mengimpor basis data, Anda harus membuatnya terlebih dahulu dengan nama yang sama, lalu pilih dan IMPOR basis data yang ada.
Semoga berhasil untuk Anda!
sumber
Untuk MySQL Workbench
sumber
mengutip ivan n: "Jika mengimpor basis data, Anda harus membuatnya terlebih dahulu dengan nama yang sama, lalu pilih dan IMPOR basis data yang ada ke dalamnya. Semoga berhasil!"
Ini adalah langkah-langkahnya: Buat Database, misalnya my_db1, utf8_general_ci. Kemudian klik untuk masuk ke dalam basis data ini. Kemudian klik "impor", dan pilih basis data: my_db1.sql
Itu saja.
sumber
pertama pilih database: USE db_name
lalu buat tabel: CREATE TABLE tb_name (id int, name varchar (255), int gaji, city varchar (255));
ini untuk sintaks versi mysql 5.5
sumber
hati-hati dengan kata sandi kosong
akan meminta kata sandi dan mengeluh
mysqldump: Got error: 1046: "No database selected" when selecting the database
masalahnya adalah bahwa
-p
opsi mengharuskan tidak ada ruang antara-p
dan kata sandi.memecahkan masalah (kutipan tidak diperlukan lagi).
sumber
Meskipun ini adalah utas yang cukup lama, saya baru saja menemukan sesuatu. Saya membuat database baru, lalu menambahkan pengguna, dan akhirnya pergi menggunakan phpMyAdmin untuk mengunggah file .sql. kegagalan total. Sistem tidak mengenali DB mana yang saya tuju ...
Ketika saya mulai baru TANPA terlebih dahulu melampirkan pengguna baru, dan kemudian melakukan impor phpMyAdmin yang sama, itu berfungsi dengan baik.
sumber
Hanya ingin menambahkan: Jika Anda membuat database di mySQL di situs langsung, kemudian masuk ke PHPMyAdmin dan database tidak muncul - keluar dari cPanel kemudian masuk kembali, buka PHPMyAdmin, dan seharusnya sudah ada sekarang.
sumber
Untuk elemen keselamatan tambahan, saat bekerja dengan banyak DB dalam skrip yang sama Anda dapat menentukan DB dalam kueri, misalnya "buat tabel my_awesome_db.really_cool_table ...".
sumber
Saya terlambat, saya pikir:] soory,
Jika Anda di sini seperti saya mencari solusi ketika kesalahan ini terjadi dengan
mysqldump
alih - alih mysql, coba solusi ini yang saya temukan di situs web Jerman di luar sana secara kebetulan, jadi saya ingin berbagi dengan orang-orang tunawisma yang sakit kepala seperti saya.Jadi masalahnya terjadi karena kurangnya
-databases
parameter sebelum nama databaseJadi perintah Anda harus terlihat seperti ini:
Penyebab lain dari masalah dalam kasus saya adalah bahwa saya mengembangkan di lokal dan
root
pengguna tidak memiliki kata sandi, jadi dalam hal ini Anda harus menggunakan--password=
alih-alih-pdbpass
, jadi perintah terakhir saya adalah:Tautan ke utas lengkap (dalam bahasa Jerman): https://marius.bloggt-in-braunschweig.de/2016/04/29/solution-mysqldump-no-database-selected-when-selecting-the-database/
sumber
JST membuat DB baru di mysql.Select yang DB baru (jika Anda r menggunakan mysql phpmyadmin sekarang di atas it'l menjadi seperti 'Server:. . . . * >> Database) .Sekarang pergi ke tab impor pilih file.Import !
sumber