Beberapa perintah SQL yang menurut saya penting. Diambil dari [[Nixnet Docs>SQL Snippets]]. ++**NB**: Mengkapitalisasi perintah SQL tidak wajib tetapi dianggap praktik terbaik karena bertujuan untuk memudahkan membedakan antara perintah dan argumen.++ = MySQL == Manajemen pengguna * Membuat DB: `CREATE DATABASE database_name;` * Membuat pengguna: `CREATE USER 'user_name'@'localhost' IDENTIFIED BY 'password';` * Memberikan izin kepada pengguna: `GRANT ALL ON database_name.* TO 'user_name'@'localhost' IDENTIFIED BY 'password';` * Menampilkan semua pengguna: `SELECT User FROM mysql.user;` Tentu saja kamu harus mengganti `password` dengan kata sandi yang benar-benar aman, `user_name` dengan sesuatu yang dapat diidentifikasi, dan hal yang sama untuk `database_name`. Bahkan jika satu pengguna per database, lebih baik menggunakan nama yang berbeda untuk setiap database. == Manajemen database * Menampilkan semua database: `SHOW DATABASE;` * Pilih database: `USE DATABASE;` * Menampilkan tabel: `SHOW TABLES;` * Menampilkan isi tabel: `SELECT * FROM table;` * Hapus baris: `DELETE FROM table WHERE column=value;` * Ekspor database untuk backup: `mysqldump dbname > dbname_$(date -u -Iseconds).sql` (jalankan sebagai perintah shell) ** Ekspor database dengan kompresi: `mysqldump dbname | gzip -c - > dbname_$(date -u -Iseconds).sql.gz` * Mengembalikan backup ke database: `mysql dbname < backup.sql` ** Dengan kompresi: `gunzip backup.sql.gz` kemudian jalankan perintah di atas. = Postgres * Menampilkan DB: `\l` * Membuat pengguna: `CREATE ROLE app_user WITH LOGIN ENCRYPTED PASSWORD 'password';` ** Sebagai alternatif, jalankan perintah berikut dengan `sudo`: `sudo -u postgres createuser -P app_user` * Buat database: `CREATE DATABASE app WITH OWNER app_user ENCODING = 'UTF8';` ** Sebagai alternatif, jalankan perintah berikut dengan `sudo`: `sudo -u postgres createdb -O app_user app` * Ubah pemilik DB: `ALTER DATABASE app OWNER TO new_app_user;` * Hubungkan/pilih database: `\c ` * Tampilkan tabel: `\dt`