Saya kira Anda memiliki pengetahuan tentang Database Relasional dan bahasa SQL. Jika tidak, baca ""
Menyiapkan MySQL
Pada artikel ini, saya akan menjelaskan MySQL Relational Database Management System. Untuk sistem basis data lainnya, baca ""
Instal MySQL (Baca "Cara Mengatur MySQL dan Memulai"). Saya akan berasumsi bahwa server MySQL berjalan pada nomor port TCP default 3306
Di MySQL, alih-alih menggunakan program klien baris perintah "// For Windows: assume that MySQL is installed in "c:\myWebProject\mysql" c: cd \myWebProject\mysql\bin mysqld --console // For macOS // Use graphical control at "System Preferences" -> MySQL -> Start|Stop_8" yang disediakan, Anda dapat menulis program klien Anda sendiri (dalam Java atau bahasa lain) untuk mengakses server MySQL. Program klien Anda harus terhubung ke server basis data pada alamat IP dan nomor port TCP yang diberikan, mengeluarkan perintah SQL, dan memproses hasil yang diterima
Instal JDK dan Editor Pemrograman
Sebelum Anda melanjutkan, saya akan berasumsi bahwa Anda sudah familiar dengan Pemrograman Java dan telah menginstal yang berikut ini
Buat Direktori untuk Menyimpan semua Karya Anda
Saya berasumsi bahwa Anda telah membuat direktori bernama "// For Windows: assume that MySQL is installed in "c:\myWebProject\mysql" c: cd \myWebProject\mysql\bin mysqld --console // For macOS // Use graphical control at "System Preferences" -> MySQL -> Start|Stop9" (untuk Windows) atau "// For Windows: assume that MySQL is installed in "c:\myWebProject\mysql" c: cd \myWebProject\mysql\bin mysql -u myuser -p // For macOS: assume that MySQL is installed in "/usr/local/mysql" cd /usr/local/mysql/bin ./mysql -u myuser -p 0" (untuk macOS) dalam latihan Anda sebelumnya. Lakukan sebaliknya
Langkah ini penting;
Instal Driver MySQL JDBC (PENTING - Jangan LEWATKAN Langkah Ini. )
Anda perlu menginstal driver JDBC (Java Database Connectivity) yang sesuai untuk menjalankan program database Java Anda. Driver JDBC MySQL disebut "MySQL Connector/J" dan tersedia di situs induk MySQL
Untuk Windows
- Unduh driver MySQL JDBC "terbaru" dari http. //dev. mysql. com/downloads ⇒ "Konektor/J" ⇒ Konektor/J 8. 0. {xx}, di mana {xx} adalah nomor pembaruan terbaru ⇒ Di "Pilih Sistem Operasi", pilih "Platform Independent" ⇒ Arsip ZIP (e. g. , "// For Windows: assume that MySQL is installed in "c:\myWebProject\mysql" c: cd \myWebProject\mysql\bin mysql -u myuser -p // For macOS: assume that MySQL is installed in "/usr/local/mysql" cd /usr/local/mysql/bin ./mysql -u myuser -p _1" ⇒ "Tidak, terima kasih, mulailah mengunduh saya"
- UNZIP (klik kanan dan ekstrak semua) file unduhan ke direktori proyek Anda "// For Windows: assume that MySQL is installed in "c:\myWebProject\mysql" c: cd \myWebProject\mysql\bin mysql -u myuser -p // For macOS: assume that MySQL is installed in "/usr/local/mysql" cd /usr/local/mysql/bin ./mysql -u myuser -p 2"
- Buka folder yang sudah dibuka zipnya. Cari file JAR "// For Windows: assume that MySQL is installed in "c:\myWebProject\mysql"
c:
cd \myWebProject\mysql\bin
mysql -u myuser -p
// For macOS: assume that MySQL is installed in "/usr/local/mysql"
cd /usr/local/mysql/bin
./mysql -u myuser -p
_3"
Nama File Full-path Mutlak untuk file JAR ini adalah // For Windows: assume that MySQL is installed in "c:\myWebProject\mysql" c: cd \myWebProject\mysql\bin mysql -u myuser -p // For macOS: assume that MySQL is installed in "/usr/local/mysql" cd /usr/local/mysql/bin ./mysql -u myuser -p 4". Catat nama file super panjang ini yang akan Anda perlukan nanti. SALIN dan SIMPAN di buku catatan sehingga Anda dapat mengambilnya nanti
Untuk macOS
- Unduh driver MySQL JDBC terbaru dari http. //dev. mysql. com/downloads ⇒ Konektor MySQL ⇒ Konektor/J ⇒ Konektor/J 8. 0. {xx}, di mana {xx} adalah nomor pembaruan terbaru ⇒ Di "Pilih Sistem Operasi", pilih "Platform Independent" ⇒ Arsip TAR Terkompresi (e. g. , // For Windows: assume that MySQL is installed in "c:\myWebProject\mysql" c: cd \myWebProject\mysql\bin mysql -u myuser -p // For macOS: assume that MySQL is installed in "/usr/local/mysql" cd /usr/local/mysql/bin ./mysql -u myuser -p 5
- Klik dua kali pada file TAR yang diunduh untuk membuka folder "// For Windows: assume that MySQL is installed in "c:\myWebProject\mysql" c: cd \myWebProject\mysql\bin mysql -u myuser -p // For macOS: assume that MySQL is installed in "/usr/local/mysql" cd /usr/local/mysql/bin ./mysql -u myuser -p 6"
- Pindahkan folder yang diperluas ke direktori proyek Anda "// For Windows: assume that MySQL is installed in "c:\myWebProject\mysql" c: cd \myWebProject\mysql\bin mysql -u myuser -p // For macOS: assume that MySQL is installed in "/usr/local/mysql" cd /usr/local/mysql/bin ./mysql -u myuser -p 0"
- Buka folder yang diperluas. Cari file JAR "// For Windows: assume that MySQL is installed in "c:\myWebProject\mysql"
c:
cd \myWebProject\mysql\bin
mysql -u myuser -p
// For macOS: assume that MySQL is installed in "/usr/local/mysql"
cd /usr/local/mysql/bin
./mysql -u myuser -p
_3"
Nama File Full-path Mutlak untuk file JAR ini adalah // For Windows: assume that MySQL is installed in "c:\myWebProject\mysql" c: cd \myWebProject\mysql\bin mysql -u myuser -p // For macOS: assume that MySQL is installed in "/usr/local/mysql" cd /usr/local/mysql/bin ./mysql -u myuser -p 9". Catat nama file super panjang ini yang akan Anda perlukan nanti. SALIN dan SIMPAN di buku catatan sehingga Anda dapat mengambilnya nanti
(Hanya Untuk Pengguna Tingkat Lanjut)
Anda dapat mengkompilasi program database Java tanpa driver JDBC. Tetapi untuk menjalankan program JDBC, file JAR driver JDBC harus disertakan dalam variabel lingkungan create database if not exists ebookshop; use ebookshop; drop table if exists books; create table books ( id int, title varchar(50), author varchar(50), price float, qty int, primary key (id)); insert into books values (1001, 'Java for dummies', 'Tan Ah Teck', 11.11, 11); insert into books values (1002, 'More Java for dummies', 'Tan Ah Teck', 22.22, 22); insert into books values (1003, 'More Java for more dummies', 'Mohammad Ali', 33.33, 33); insert into books values (1004, 'A Cup of Java', 'Kumar', 44.44, 44); insert into books values (1005, 'A Teaspoon of Java', 'Kevin Jones', 55.55, 55); select * from books;0, atau dalam opsi baris perintah create database if not exists ebookshop; use ebookshop; drop table if exists books; create table books ( id int, title varchar(50), author varchar(50), price float, qty int, primary key (id)); insert into books values (1001, 'Java for dummies', 'Tan Ah Teck', 11.11, 11); insert into books values (1002, 'More Java for dummies', 'Tan Ah Teck', 22.22, 22); insert into books values (1003, 'More Java for more dummies', 'Mohammad Ali', 33.33, 33); insert into books values (1004, 'A Cup of Java', 'Kumar', 44.44, 44); insert into books values (1005, 'A Teaspoon of Java', 'Kevin Jones', 55.55, 55); select * from books;1 create database if not exists ebookshop; use ebookshop; drop table if exists books; create table books ( id int, title varchar(50), author varchar(50), price float, qty int, primary key (id)); insert into books values (1001, 'Java for dummies', 'Tan Ah Teck', 11.11, 11); insert into books values (1002, 'More Java for dummies', 'Tan Ah Teck', 22.22, 22); insert into books values (1003, 'More Java for more dummies', 'Mohammad Ali', 33.33, 33); insert into books values (1004, 'A Cup of Java', 'Kumar', 44.44, 44); insert into books values (1005, 'A Teaspoon of Java', 'Kevin Jones', 55.55, 55); select * from books;2
Anda dapat menyetel opsi create database if not exists ebookshop; use ebookshop; drop table if exists books; create table books ( id int, title varchar(50), author varchar(50), price float, qty int, primary key (id)); insert into books values (1001, 'Java for dummies', 'Tan Ah Teck', 11.11, 11); insert into books values (1002, 'More Java for dummies', 'Tan Ah Teck', 22.22, 22); insert into books values (1003, 'More Java for more dummies', 'Mohammad Ali', 33.33, 33); insert into books values (1004, 'A Cup of Java', 'Kumar', 44.44, 44); insert into books values (1005, 'A Teaspoon of Java', 'Kevin Jones', 55.55, 55); select * from books;_2 untuk Java runtime sebagai berikut
Sebelum JDK 9, Anda dapat menyalin file JAR ke direktori ekstensi JDK di "create database if not exists ebookshop; use ebookshop; drop table if exists books; create table books ( id int, title varchar(50), author varchar(50), price float, qty int, primary key (id)); insert into books values (1001, 'Java for dummies', 'Tan Ah Teck', 11.11, 11); insert into books values (1002, 'More Java for dummies', 'Tan Ah Teck', 22.22, 22); insert into books values (1003, 'More Java for more dummies', 'Mohammad Ali', 33.33, 33); insert into books values (1004, 'A Cup of Java', 'Kumar', 44.44, 44); insert into books values (1005, 'A Teaspoon of Java', 'Kevin Jones', 55.55, 55); select * from books;4" (Windows) atau "create database if not exists ebookshop; use ebookshop; drop table if exists books; create table books ( id int, title varchar(50), author varchar(50), price float, qty int, primary key (id)); insert into books values (1001, 'Java for dummies', 'Tan Ah Teck', 11.11, 11); insert into books values (1002, 'More Java for dummies', 'Tan Ah Teck', 22.22, 22); insert into books values (1003, 'More Java for more dummies', 'Mohammad Ali', 33.33, 33); insert into books values (1004, 'A Cup of Java', 'Kumar', 44.44, 44); insert into books values (1005, 'A Teaspoon of Java', 'Kevin Jones', 55.55, 55); select * from books;5s" (macOS). JDK 9 menghapus mekanisme ekstensi ini
Atur Basis Data
Kita harus menyiapkan database sebelum memulai pemrograman database kita. Kami akan memanggil database kami "create database if not exists ebookshop; use ebookshop; drop table if exists books; create table books ( id int, title varchar(50), author varchar(50), price float, qty int, primary key (id)); insert into books values (1001, 'Java for dummies', 'Tan Ah Teck', 11.11, 11); insert into books values (1002, 'More Java for dummies', 'Tan Ah Teck', 22.22, 22); insert into books values (1003, 'More Java for more dummies', 'Mohammad Ali', 33.33, 33); insert into books values (1004, 'A Cup of Java', 'Kumar', 44.44, 44); insert into books values (1005, 'A Teaspoon of Java', 'Kevin Jones', 55.55, 55); select * from books;_6" yang berisi tabel yang disebut "create database if not exists ebookshop; use ebookshop; drop table if exists books; create table books ( id int, title varchar(50), author varchar(50), price float, qty int, primary key (id)); insert into books values (1001, 'Java for dummies', 'Tan Ah Teck', 11.11, 11); insert into books values (1002, 'More Java for dummies', 'Tan Ah Teck', 22.22, 22); insert into books values (1003, 'More Java for more dummies', 'Mohammad Ali', 33.33, 33); insert into books values (1004, 'A Cup of Java', 'Kumar', 44.44, 44); insert into books values (1005, 'A Teaspoon of Java', 'Kevin Jones', 55.55, 55); select * from books;7", dengan 5 kolom, seperti di bawah ini
Mulai Server MySQL. Mulai server MySQL dan verifikasi nomor port TCP server dari pesan konsol. Saya berasumsi bahwa server MySQL berjalan pada nomor port default 3306
// For Windows: assume that MySQL is installed in "c:\myWebProject\mysql" c: cd \myWebProject\mysql\bin mysqld --console // For macOS // Use graphical control at "System Preferences" -> MySQL -> Start|StopMulai klien MySQL. Saya juga berasumsi bahwa ada pengguna resmi bernama "create database if not exists ebookshop; use ebookshop; drop table if exists books; create table books ( id int, title varchar(50), author varchar(50), price float, qty int, primary key (id)); insert into books values (1001, 'Java for dummies', 'Tan Ah Teck', 11.11, 11); insert into books values (1002, 'More Java for dummies', 'Tan Ah Teck', 22.22, 22); insert into books values (1003, 'More Java for more dummies', 'Mohammad Ali', 33.33, 33); insert into books values (1004, 'A Cup of Java', 'Kumar', 44.44, 44); insert into books values (1005, 'A Teaspoon of Java', 'Kevin Jones', 55.55, 55); select * from books;8" dengan kata sandi "create database if not exists ebookshop; use ebookshop; drop table if exists books; create table books ( id int, title varchar(50), author varchar(50), price float, qty int, primary key (id)); insert into books values (1001, 'Java for dummies', 'Tan Ah Teck', 11.11, 11); insert into books values (1002, 'More Java for dummies', 'Tan Ah Teck', 22.22, 22); insert into books values (1003, 'More Java for more dummies', 'Mohammad Ali', 33.33, 33); insert into books values (1004, 'A Cup of Java', 'Kumar', 44.44, 44); insert into books values (1005, 'A Teaspoon of Java', 'Kevin Jones', 55.55, 55); select * from books;9"
// For Windows: assume that MySQL is installed in "c:\myWebProject\mysql" c: cd \myWebProject\mysql\bin mysql -u myuser -p // For macOS: assume that MySQL is installed in "/usr/local/mysql" cd /usr/local/mysql/bin ./mysql -u myuser -pJalankan pernyataan SQL berikut untuk membuat database dan tabel pengujian kami
create database if not exists ebookshop; use ebookshop; drop table if exists books; create table books ( id int, title varchar(50), author varchar(50), price float, qty int, primary key (id)); insert into books values (1001, 'Java for dummies', 'Tan Ah Teck', 11.11, 11); insert into books values (1002, 'More Java for dummies', 'Tan Ah Teck', 22.22, 22); insert into books values (1003, 'More Java for more dummies', 'Mohammad Ali', 33.33, 33); insert into books values (1004, 'A Cup of Java', 'Kumar', 44.44, 44); insert into books values (1005, 'A Teaspoon of Java', 'Kevin Jones', 55.55, 55); select * from books;Pengantar Pemrograman JDBC dengan Contoh
Program JDBC terdiri dari LIMA langkah berikut
- LANGKAH 1. Alokasikan objek 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 420, untuk menghubungkan ke server database
- LANGKAH 2. Alokasikan objek 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 421, di bawah 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 420 yang dibuat sebelumnya, untuk menyimpan perintah SQL
- LANGKAH 3. Tulis kueri SQL dan jalankan kueri, melalui 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 421 dan 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 420 dibuat
- LANGKAH 4. Memproses hasil kueri
- LANGKAH 5. Tutup 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42_1 dan 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 420 untuk membebaskan sumber daya
Kami akan mengilustrasikan pemrograman Database Java dengan contoh berikut
Contoh 1. PILIH SQL
Cobalah program JDBC berikut, yang mengeluarkan SQL 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 427 ke MySQL
Simpan program sebagai "1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 428" di direktori proyek Anda "// For Windows: assume that MySQL is installed in "c:\myWebProject\mysql" c: cd \myWebProject\mysql\bin mysqld --console // For macOS // Use graphical control at "System Preferences" -> MySQL -> Start|Stop9" (Windows) atau "// For Windows: assume that MySQL is installed in "c:\myWebProject\mysql" c: cd \myWebProject\mysql\bin mysql -u myuser -p // For macOS: assume that MySQL is installed in "/usr/local/mysql" cd /usr/local/mysql/bin ./mysql -u myuser -p 0" (macOS)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42Menyusun. Untuk mengkompilasi program
// Windows: The Java source directory is "c:\myWebProject" c: cd \myWebProject javac JdbcSelectTest.java // macOS: The Java source directory is "~/myWebProject" cd ~/myWebProject javac JdbcSelectTest.javaLari. Agak sulit untuk menjalankan program, karena Anda perlu menyertakan MySQL JDBC Driver di classpath (melalui opsi create database if not exists ebookshop; use ebookshop; drop table if exists books; create table books ( id int, title varchar(50), author varchar(50), price float, qty int, primary key (id)); insert into books values (1001, 'Java for dummies', 'Tan Ah Teck', 11.11, 11); insert into books values (1002, 'More Java for dummies', 'Tan Ah Teck', 22.22, 22); insert into books values (1003, 'More Java for more dummies', 'Mohammad Ali', 33.33, 33); insert into books values (1004, 'A Cup of Java', 'Kumar', 44.44, 44); insert into books values (1005, 'A Teaspoon of Java', 'Kevin Jones', 55.55, 55); select * from books;2) sebagai berikut. Ganti // Windows: The Java source directory is "c:\myWebProject" c: cd \myWebProject javac JdbcSelectTest.java // macOS: The Java source directory is "~/myWebProject" cd ~/myWebProject javac JdbcSelectTest.java _2 dengan nomor instalasi Anda
Anda harus MENYALIN dan MENYIMPAN perintah ini ke buku catatan, sehingga Anda tidak perlu mengetikkan perintah yang sangat panjang ini lagi dan lagi
create database if not exists ebookshop; use ebookshop; drop table if exists books; create table books ( id int, title varchar(50), author varchar(50), price float, qty int, primary key (id)); insert into books values (1001, 'Java for dummies', 'Tan Ah Teck', 11.11, 11); insert into books values (1002, 'More Java for dummies', 'Tan Ah Teck', 22.22, 22); insert into books values (1003, 'More Java for more dummies', 'Mohammad Ali', 33.33, 33); insert into books values (1004, 'A Cup of Java', 'Kumar', 44.44, 44); insert into books values (1005, 'A Teaspoon of Java', 'Kevin Jones', 55.55, 55); select * from books;_2 mencakup dua jalur yang dipisahkan oleh "// Windows: The Java source directory is "c:\myWebProject" c: cd \myWebProject javac JdbcSelectTest.java // macOS: The Java source directory is "~/myWebProject" cd ~/myWebProject javac JdbcSelectTest.java 4" (Windows) atau "// Windows: The Java source directory is "c:\myWebProject" c: cd \myWebProject javac JdbcSelectTest.java // macOS: The Java source directory is "~/myWebProject" cd ~/myWebProject javac JdbcSelectTest.java 5" (macOS). The "// Windows: The Java source directory is "c:\myWebProject" c: cd \myWebProject javac JdbcSelectTest.java // macOS: The Java source directory is "~/myWebProject" cd ~/myWebProject javac JdbcSelectTest.java _6" menunjukkan direktori saat ini (untuk menemukan // Windows: The Java source directory is "c:\myWebProject" c: cd \myWebProject javac JdbcSelectTest.java // macOS: The Java source directory is "~/myWebProject" cd ~/myWebProject javac JdbcSelectTest.java 7) diikuti dengan nama file full-path dari MySQL JDBC Driver JAR-file (yang saya meminta Anda untuk mencatat sebelumnya)
(Lewati Kecuali. ) Membaca ""
(Untuk Pengguna Eclipse IDE) Jika Anda menggunakan Eclipse IDE, periksa artikel Eclipse saya tentang cara menambahkan file JAR eksternal ke dalam proyek Eclipse
Membedah Program- Operasi JDBC dilakukan melalui objek "1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 420", "1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 421" dan "// For windows c: cd \myWebProject java -cp .;C:\myWebProject\mysql-connector-java-8.0.{xx}\mysql-connector-java-8.0.{xx}.jar JdbcSelectTest // For macOS cd ~/myWebProject // Need to use $HOME instead of ~ in the "java" command java -cp .:$HOME/myWebProject/mysql-connector-java-8.0.{xx}/mysql-connector-java-8.0.{xx}.jar JdbcSelectTest0" (didefinisikan dalam paket // For windows c: cd \myWebProject java -cp .;C:\myWebProject\mysql-connector-java-8.0.{xx}\mysql-connector-java-8.0.{xx}.jar JdbcSelectTest // For macOS cd ~/myWebProject // Need to use $HOME instead of ~ in the "java" command java -cp .:$HOME/myWebProject/mysql-connector-java-8.0.{xx}/mysql-connector-java-8.0.{xx}.jar JdbcSelectTest1). Namun, Anda tidak perlu mengetahui detailnya, tetapi hanya metode publik yang ditentukan dalam API (Application Program Interface). Anda juga tidak perlu menemukan kembali roda dengan membuat kelas-kelas ini sendiri (yang akan memakan waktu bertahun-tahun?. ). Komponen perangkat lunak "menggunakan kembali" adalah kekuatan utama OOP
- Perhatikan bahwa ada sedikit pemrograman yang terlibat dalam menggunakan pemrograman JDBC. Anda hanya perlu menentukan database-URL, menulis kueri SQL, dan memproses hasil kueri. Kode lainnya adalah semacam "template program JDBC standar". Sekali lagi, ini karena roda telah ditemukan
- Di Baris 7, kami mengalokasikan objek 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42_0 (disebut // For windows
c:
cd \myWebProject
java -cp .;C:\myWebProject\mysql-connector-java-8.0.{xx}\mysql-connector-java-8.0.{xx}.jar JdbcSelectTest
// For macOS
cd ~/myWebProject
// Need to use $HOME instead of ~ in the "java" command
java -cp .:$HOME/myWebProject/mysql-connector-java-8.0.{xx}/mysql-connector-java-8.0.{xx}.jar JdbcSelectTest3) melalui// For windows
c:
cd \myWebProject
java -cp .;C:\myWebProject\mysql-connector-java-8.0.{xx}\mysql-connector-java-8.0.{xx}.jar JdbcSelectTest
// For macOS
cd ~/myWebProject
// Need to use $HOME instead of ~ in the "java" command
java -cp .:$HOME/myWebProject/mysql-connector-java-8.0.{xx}/mysql-connector-java-8.0.{xx}.jar JdbcSelectTest4. Program Java menggunakan apa yang disebut database-URL untuk terhubung ke server
- Untuk MySQL. // For windows c: cd \myWebProject java -cp .;C:\myWebProject\mysql-connector-java-8.0.{xx}\mysql-connector-java-8.0.{xx}.jar JdbcSelectTest // For macOS cd ~/myWebProject // Need to use $HOME instead of ~ in the "java" command java -cp .:$HOME/myWebProject/mysql-connector-java-8.0.{xx}/mysql-connector-java-8.0.{xx}.jar JdbcSelectTest_5 berbentuk "// For windows c: cd \myWebProject java -cp .;C:\myWebProject\mysql-connector-java-8.0.{xx}\mysql-connector-java-8.0.{xx}.jar JdbcSelectTest // For macOS cd ~/myWebProject // Need to use $HOME instead of ~ in the "java" command java -cp .:$HOME/myWebProject/mysql-connector-java-8.0.{xx}/mysql-connector-java-8.0.{xx}.jar JdbcSelectTest6", dengan protokol // For windows c: cd \myWebProject java -cp .;C:\myWebProject\mysql-connector-java-8.0.{xx}\mysql-connector-java-8.0.{xx}.jar JdbcSelectTest // For macOS cd ~/myWebProject // Need to use $HOME instead of ~ in the "java" command java -cp .:$HOME/myWebProject/mysql-connector-java-8.0.{xx}/mysql-connector-java-8.0.{xx}.jar JdbcSelectTest7 dan sub-protokol // For Windows: assume that MySQL is installed in "c:\myWebProject\mysql" c: cd \myWebProject\mysql\bin mysqld --console // For macOS // Use graphical control at "System Preferences" -> MySQL -> Start|Stop8. // For windows c: cd \myWebProject java -cp .;C:\myWebProject\mysql-connector-java-8.0.{xx}\mysql-connector-java-8.0.{xx}.jar JdbcSelectTest // For macOS cd ~/myWebProject // Need to use $HOME instead of ~ in the "java" command java -cp .:$HOME/myWebProject/mysql-connector-java-8.0.{xx}/mysql-connector-java-8.0.{xx}.jar JdbcSelectTest_9 menentukan nomor port TCP server MySQL; . Dalam contoh kita, 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37_1" (dengan alamat IP khusus 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 372) adalah nama host untuk local loop-back; 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 373" adalah nomor port TCP server, dan create database if not exists ebookshop; use ebookshop; drop table if exists books; create table books ( id int, title varchar(50), author varchar(50), price float, qty int, primary key (id)); insert into books values (1001, 'Java for dummies', 'Tan Ah Teck', 11.11, 11); insert into books values (1002, 'More Java for dummies', 'Tan Ah Teck', 22.22, 22); insert into books values (1003, 'More Java for more dummies', 'Mohammad Ali', 33.33, 33); insert into books values (1004, 'A Cup of Java', 'Kumar', 44.44, 44); insert into books values (1005, 'A Teaspoon of Java', 'Kevin Jones', 55.55, 55); select * from books;6 adalah nama database
- Yang lain. Membaca ""
- Di Baris 13, kami mengalokasikan objek 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 421 (disebut 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 376) di dalam 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 420 yang dibuat pada langkah sebelumnya melalui 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 378
- Di Baris 16, kami menulis string perintah SQL SELECT (disebut 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 379)
- Untuk menjalankan perintah SQL, kami memanggil metode 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 580. Ini mengembalikan hasil kueri dalam objek // For windows c: cd \myWebProject java -cp .;C:\myWebProject\mysql-connector-java-8.0.{xx}\mysql-connector-java-8.0.{xx}.jar JdbcSelectTest // For macOS cd ~/myWebProject // Need to use $HOME instead of ~ in the "java" command java -cp .:$HOME/myWebProject/mysql-connector-java-8.0.{xx}/mysql-connector-java-8.0.{xx}.jar JdbcSelectTest_0 (disebut 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 582)
- // For windows c: cd \myWebProject java -cp .;C:\myWebProject\mysql-connector-java-8.0.{xx}\mysql-connector-java-8.0.{xx}.jar JdbcSelectTest // For macOS cd ~/myWebProject // Need to use $HOME instead of ~ in the "java" command java -cp .:$HOME/myWebProject/mysql-connector-java-8.0.{xx}/mysql-connector-java-8.0.{xx}.jar JdbcSelectTest_0 memodelkan tabel yang dikembalikan, yang dapat diakses melalui kursor baris. Kursor awalnya diposisikan sebelum baris pertama di // For windows c: cd \myWebProject java -cp .;C:\myWebProject\mysql-connector-java-8.0.{xx}\mysql-connector-java-8.0.{xx}.jar JdbcSelectTest // For macOS cd ~/myWebProject // Need to use $HOME instead of ~ in the "java" command java -cp .:$HOME/myWebProject/mysql-connector-java-8.0.{xx}/mysql-connector-java-8.0.{xx}.jar JdbcSelectTest0. Metode 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58_5 memindahkan kursor ke baris pertama. Anda kemudian dapat menggunakan 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 586 untuk mengambil nilai kolom untuk baris itu, di mana 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 587 sesuai dengan jenis kolom, seperti 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 588, 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 589, SYMPTOM: Can compile the JDBC program but Runtime Error ERROR MESSAGE: (Windows) No suitable driver found (macOS/Linux) NullPointerException PROBABLE CAUSES: MySQL JDBC Driver Connector/J was NOT (properly) installed. POSSIBLE SOLUTION: 1. Read "2.3 Install MySQL JDBC Driver" again, again and again... 2. You need to include MySQL JDBC driver via "cp" option to run your JDBC program: > java -cp .;path-to\mysql-connector-java-x.x.xx.jar JdbcClassName 3. For Tomcat, you may copy the driver JAR-file into Tomcat's "lib" directory.0 dan SYMPTOM: Can compile the JDBC program but Runtime Error ERROR MESSAGE: (Windows) No suitable driver found (macOS/Linux) NullPointerException PROBABLE CAUSES: MySQL JDBC Driver Connector/J was NOT (properly) installed. POSSIBLE SOLUTION: 1. Read "2.3 Install MySQL JDBC Driver" again, again and again... 2. You need to include MySQL JDBC driver via "cp" option to run your JDBC program: > java -cp .;path-to\mysql-connector-java-x.x.xx.jar JdbcClassName 3. For Tomcat, you may copy the driver JAR-file into Tomcat's "lib" directory.1
- Masalah while-loop 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58_5 berulang kali untuk memindahkan kursor ke baris berikutnya, dan memproses baris demi baris
- 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 585 mengembalikan SYMPTOM: Can compile the JDBC program but Runtime Error ERROR MESSAGE: (Windows) No suitable driver found (macOS/Linux) NullPointerException PROBABLE CAUSES: MySQL JDBC Driver Connector/J was NOT (properly) installed. POSSIBLE SOLUTION: 1. Read "2.3 Install MySQL JDBC Driver" again, again and again... 2. You need to include MySQL JDBC driver via "cp" option to run your JDBC program: > java -cp .;path-to\mysql-connector-java-x.x.xx.jar JdbcClassName 3. For Tomcat, you may copy the driver JAR-file into Tomcat's "lib" directory.4 pada baris terakhir dari // For windows c: cd \myWebProject java -cp .;C:\myWebProject\mysql-connector-java-8.0.{xx}\mysql-connector-java-8.0.{xx}.jar JdbcSelectTest // For macOS cd ~/myWebProject // Need to use $HOME instead of ~ in the "java" command java -cp .:$HOME/myWebProject/mysql-connector-java-8.0.{xx}/mysql-connector-java-8.0.{xx}.jar JdbcSelectTest0, yang mengakhiri while-loop
- Anda dapat menggunakan SYMPTOM: Can compile the JDBC program but Runtime Error ERROR MESSAGE: (Windows) No suitable driver found (macOS/Linux) NullPointerException PROBABLE CAUSES: MySQL JDBC Driver Connector/J was NOT (properly) installed. POSSIBLE SOLUTION: 1. Read "2.3 Install MySQL JDBC Driver" again, again and again... 2. You need to include MySQL JDBC driver via "cp" option to run your JDBC program: > java -cp .;path-to\mysql-connector-java-x.x.xx.jar JdbcClassName 3. For Tomcat, you may copy the driver JAR-file into Tomcat's "lib" directory._6 untuk mengambil semua jenis (1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 588, SYMPTOM: Can compile the JDBC program but Runtime Error ERROR MESSAGE: (Windows) No suitable driver found (macOS/Linux) NullPointerException PROBABLE CAUSES: MySQL JDBC Driver Connector/J was NOT (properly) installed. POSSIBLE SOLUTION: 1. Read "2.3 Install MySQL JDBC Driver" again, again and again... 2. You need to include MySQL JDBC driver via "cp" option to run your JDBC program: > java -cp .;path-to\mysql-connector-java-x.x.xx.jar JdbcClassName 3. For Tomcat, you may copy the driver JAR-file into Tomcat's "lib" directory.0, dll)
- Untuk portabilitas maksimum, // For windows c: cd \myWebProject java -cp .;C:\myWebProject\mysql-connector-java-8.0.{xx}\mysql-connector-java-8.0.{xx}.jar JdbcSelectTest // For macOS cd ~/myWebProject // Need to use $HOME instead of ~ in the "java" command java -cp .:$HOME/myWebProject/mysql-connector-java-8.0.{xx}/mysql-connector-java-8.0.{xx}.jar JdbcSelectTest_0 kolom dalam setiap baris harus dibaca dalam urutan kiri ke kanan, dan setiap kolom harus dibaca hanya sekali melalui metode // For Windows: assume that MySQL is installed in "c:\myWebProject\mysql" c: cd \myWebProject\mysql\bin mysqld --console // For macOS // Use graphical control at "System Preferences" -> MySQL -> Start|Stop00. Masalah // For Windows: assume that MySQL is installed in "c:\myWebProject\mysql" c: cd \myWebProject\mysql\bin mysqld --console // For macOS // Use graphical control at "System Preferences" -> MySQL -> Start|Stop_00 ke sel lebih dari sekali dapat memicu kesalahan aneh
- Dalam contoh ini, kami menggunakan fitur baru JDK 7 yang disebut try-with-resources, yang secara otomatis menutup semua sumber daya yang dibuka dalam klausa try, dalam kasus kami, objek 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 420 dan 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 421
Latihan. Ubah program di atas untuk mengeluarkan pernyataan 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 427 berikut dan tampilkan semua kolom yang diambil. Pastikan Anda mengubah pemrosesan // For windows c: cd \myWebProject java -cp .;C:\myWebProject\mysql-connector-java-8.0.{xx}\mysql-connector-java-8.0.{xx}.jar JdbcSelectTest // For macOS cd ~/myWebProject // Need to use $HOME instead of ~ in the "java" command java -cp .:$HOME/myWebProject/mysql-connector-java-8.0.{xx}/mysql-connector-java-8.0.{xx}.jar JdbcSelectTest_0 untuk hanya memproses kolom yang diambil (jika tidak, Anda akan mendapatkan kesalahan "Kolom tidak ditemukan")
- // For Windows: assume that MySQL is installed in "c:\myWebProject\mysql" c: cd \myWebProject\mysql\bin mysqld --console // For macOS // Use graphical control at "System Preferences" -> MySQL -> Start|Stop_06
- // For Windows: assume that MySQL is installed in "c:\myWebProject\mysql" c: cd \myWebProject\mysql\bin mysqld --console // For macOS // Use graphical control at "System Preferences" -> MySQL -> Start|Stop_07
Contoh 2. PEMBARUAN SQL
Untuk mengeksekusi SQL // For Windows: assume that MySQL is installed in "c:\myWebProject\mysql" c: cd \myWebProject\mysql\bin mysqld --console // For macOS // Use graphical control at "System Preferences" -> MySQL -> Start|Stop08, Anda harus memanggil metode // For Windows: assume that MySQL is installed in "c:\myWebProject\mysql" c: cd \myWebProject\mysql\bin mysqld --console // For macOS // Use graphical control at "System Preferences" -> MySQL -> Start|Stop09 dari objek 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 421, yang mengembalikan 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 588 yang menunjukkan jumlah catatan yang terpengaruh (Baris 19). Ingatlah bahwa untuk 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 427, kami menggunakan // For Windows: assume that MySQL is installed in "c:\myWebProject\mysql" c: cd \myWebProject\mysql\bin mysqld --console // For macOS // Use graphical control at "System Preferences" -> MySQL -> Start|Stop13, yang mengembalikan objek // For windows c: cd \myWebProject java -cp .;C:\myWebProject\mysql-connector-java-8.0.{xx}\mysql-connector-java-8.0.{xx}.jar JdbcSelectTest // For macOS cd ~/myWebProject // Need to use $HOME instead of ~ in the "java" command java -cp .:$HOME/myWebProject/mysql-connector-java-8.0.{xx}/mysql-connector-java-8.0.{xx}.jar JdbcSelectTest0 yang memodelkan tabel yang dikembalikan (Baris 25). SQL // For Windows: assume that MySQL is installed in "c:\myWebProject\mysql" c: cd \myWebProject\mysql\bin mysqld --console // For macOS // Use graphical control at "System Preferences" -> MySQL -> Start|Stop_15 tidak mengembalikan tabel, tetapi 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 588 menunjukkan jumlah catatan yang terpengaruh
Simpan program sebagai "// For Windows: assume that MySQL is installed in "c:\myWebProject\mysql" c: cd \myWebProject\mysql\bin mysqld --console // For macOS // Use graphical control at "System Preferences" -> MySQL -> Start|Stop17" di direktori proyek Anda "// For Windows: assume that MySQL is installed in "c:\myWebProject\mysql" c: cd \myWebProject\mysql\bin mysqld --console // For macOS // Use graphical control at "System Preferences" -> MySQL -> Start|Stop9" (Windows) atau "// For Windows: assume that MySQL is installed in "c:\myWebProject\mysql" c: cd \myWebProject\mysql\bin mysql -u myuser -p // For macOS: assume that MySQL is installed in "/usr/local/mysql" cd /usr/local/mysql/bin ./mysql -u myuser -p 0" (macOS)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37Lihat contoh sebelumnya tentang cara mengkompilasi dan menjalankan program ini. Arahkan ke file Java ini "// For Windows: assume that MySQL is installed in "c:\myWebProject\mysql" c: cd \myWebProject\mysql\bin mysqld --console // For macOS // Use graphical control at "System Preferences" -> MySQL -> Start|Stop_30"