Memasukkan Query


Berikut adalah perintah sederhana yang meminta server untuk memberitahu anda nomor versi dan tanggal saat ini. Ketik pada prompt MySQL seperti yang ditunjukkan di sini tekan Enter :

mysql> SELECT VERSION(), CURRENT_DATE;

Query ini mengilustrasikan beberapa hal tentang mysql:

  • Sebuah perintah umumnya terdiri dari sebuah pernyataan SQL diikuti dengan titik koma. (Ada beberapa pengecualian di mana titik koma dapat dihilangkan. QUIT adalah salah satunya)
  • Ketika anda membuat perintah, mysql mengirimkannya ke server untuk dieksekusi dan menampilkan hasilnya, kemudian mencetak prompt mysql> lain untuk menunjukkan bahwa ia siap untuk perintah lain.
  • mysql menampilkan output query dalam bentuk tabel (baris dan kolom). Baris pertama berisi label untuk kolom. Baris berikutnya adalah hasil query. Biasanya, label kolom adalah nama dari kolom yang anda ambil dari tabel database. Jika anda mengambil nilai dari sebuah ekspresi daripada kolom tabel (seperti pada contoh yang ditampilkan), mysql memberi label pada kolom menggunakan ekspresi itu sendiri.
  • mysql menunjukkan berapa banyak baris yang dikembalikan dan berapa lama query butuh untuk dieksekusi, yang memberikan anda gambaran kasar dari performa server.

Kata kunci dapat dimasukkan dalam lettercase apapun. Query berikut adalah ekuivalen:

mysql> SELECT VERSION(), CURRENT_DATE;
mysql> select version(), current_date;
mysql> SeLeCt vErSiOn(), current_DATE;

Berikut ini adalah query lain. Ini menunjukkan bahwa anda dapat menggunakan mysql sebagai kalkulator sederhana:

mysql> SELECT SIN(PI()/4), (4+1)*5;

Query yang ditunjukkan sejauh ini relatif singkat, single-line statements. Anda bahkan dapat memasukkan banyak statements pada satu baris. Hanya mengakhiri masing-masing dengan titik koma:

SELECT VERSION(); SELECT NOW();

Sebuah perintah tidak perlu diberikan semua pada satu baris, sehingga perintah panjang yang membutuhkan beberapa baris tidak menjadi masalah. mysql menentukan di mana pernyataan anda berakhir dengan mencari titik koma berakhir, bukan dengan mencari akhir dari baris input. (Dengan kata lain, mysql menerima format input bebas: ia mengumpulkan baris input tetapi tidak mengeksekusi mereka sampai melihat titik koma). Berikut ini contoh multiple-line statement:

mysql> SELECT
-> USER()
-> ,
-> CURRENT_DATE;

Dalam contoh ini, perhatikan bagaimana prompt berubah dari mysql> ke -> setelah anda memasukkan baris pertama dari multiple-line query. Ini adalah bagaimana mysql mengindikasikan bahwa ia belum melihat pernyataan lengkap dan sedang menunggu sisanya. Jika anda memutuskan anda tidak ingin menjalankan perintah, membatalkannya dengan mengetikkan \c :

mysql> SELECT
-> USER()
-> \c

Perhatikan prompt beralih kembali ke mysql> setelah anda memasukkan \c, memberikan umpan balik untuk menunjukkan bahwa mysql siap untuk perintah baru.

Tabel berikut menunjukkan masing-masing prompt dimana mungkin anda melihat dan apa artinya pada mysql:

Prompt Arti
mysql> Siap untuk perintah baru
-> Menunggu baris berikutnya dari perintah multiple-line
‘> Menunggu baris berikutnya, menunggu selesainya string yang dimulai dengan tanda kutip tunggal(“ ‘ ”)
“> Menunggu baris berikutnya, menunggu selesainya string yang dimulai dengan tanda kutip ganda(“ ” ”)
`> Menunggu baris berikutnya, menunggu selesainya suatu identifier yang dimulai dengan backtick (” `”)
/*>

Menunggu baris berikutnya, menunggu penyelesaian komentar yang dimulai dengan /*

Multiple-line statement biasanya terjadi secara kebetulan ketika anda berniat untuk mengeluarkan perintah pada satu baris, tapi lupa mengakhiri dengan titik koma. Dalam kasus ini, mysql menunggu input lebih:

mysql> SELECT USER()
->

Jika ini terjadi pada anda (anda pikir anda telah memasukkan sebuah pernyataan tapi satu-satunya tanggapan adalah prompt ->), kemungkinan besar mysql sedang menunggu titik koma. Masukkan titik koma untuk menyelesaikan pernyataan, dan mysql mengeksekusinya:

mysql> SELECT USER()
-> ;

+———————-+
| user()                   |
+———————-+
| user@localhost |
+———————-+

Prompt ‘> dan “> terjadi selama koleksi string (cara lain untuk mengatakan bahwa MySQL sedang menunggu penyelesaian string). Di MySQL, anda dapat menulis string dikelilingi baik oleh karakter ” ‘ ” atau ” ” ” (misalnya,’ halo ‘ atau ” selamat tinggal”), dan mysql memungkinkan anda memasukkan string yang menjangkau beberapa baris. Ketika anda melihat prompt ‘> atau “> prompt, itu berarti bahwa anda telah memasukkan baris yang berisi string yang dimulai dengan karakter kutipan ” ‘ ” atau” ” ” , tetapi belum memasukkan kutipan pencocokan yang mengakhiri string. Sebagai contoh:

mysql> SELECT * FROM my_table WHERE name = ‘Smith AND age < 30;
‘>

Jika anda memasukkan pernyataan SELECT, kemudian tekan Enter dan menunggu hasilnya, tidak ada yang terjadi. Daripada bertanya-tanya mengapa permintaan ini berjalan begitu lama, perhatikan petunjuk yang diberikan oleh prompt ‘> . Ini memberitahu anda bahwa mysql mengharapkan untuk melihat sisa dari string yang tidak terselesaikan. (Apakah anda melihat kesalahan dalam pernyataan String ‘Smith hilang tanda petik tunggal kedua?).

Pada titik ini, apa yang anda lakukan? Yang paling sederhana adalah untuk membatalkan perintah. Namun, anda tidak bisa hanya memasukkan \c dalam hal ini, karena mysql menafsirkannya sebagai bagian dari string yang sedang mereka kumpulkan. Sebaliknya, masukkan karakter penutupan kutipan kemudian ketik \c :

mysql> SELECT * FROM my_table WHERE name = ‘Smith AND age < 30;
‘> ‘\c
mysql>

Prompt berubah kembali ke mysql>, menunjukkan bahwa mysql siap untuk perintah baru.
Prompt `> mirip dengan prompt  ‘> dan”>. tapi menunjukkan bahwa anda telah mulai tetapi tidak menyelesaikan identifier backtick-quoted.
Hal ini penting untuk mengetahui prompt ‘>, “>, dan`> menandakan apa, karena jika anda salah memasukkan string yang tidak terselesaikan, setiap baris lebih lanjut anda memasukkan tampaknya diabaikan oleh mysql-termasuk baris yang berisi QUIT.

Iklan
  1. No trackbacks yet.

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s

%d blogger menyukai ini: