កញ្ញា
របៀបប្រើប្រាស់ Java JDBC ជាមួយ Sql Server
JDBC មកពីពាក្យ Java Database Connectivity មានន័យថាការភ្ជាប់ Application របស់ Java ជាមួយ RDBMS ណាមួយ ដូច ជា Oracle, Ms Access ,SqlServer ជាដើម ។ នៅក្នុងអត្តបទនេះ អាន-ANT សូមធ្វើការបង្ហាញពីរបៀបភ្ជាប់ Application Java ជា Sql Server ។ តើហេតុអ្វីយើងត្រូវការភ្ជាប់ Application ជា Database ? តើវាផ្ដល់ផលប្រយោជន៍អ្វីខ្លះ? ចម្លើយគឺខ្លី សម្រាប់ Developer គឺ ដើម្បីទាញទន្និន័យមកធ្វើការ Manipulate (data,update,delete,select) នោះឯងចំពោះ User គឺធ្វើរបាយការណ៍ រក្សាទុកឯកសារ វិភាគទន្និយ បញ្ចូលទន្និន័យជាដើម ដែលទិន្និន័យទាំងអស់នោះត្រូវបាន maintain ដាច់ដោយឡែក ដោយពពួកកម្មវិធី RDBMS (Relational Database Management System) ។
យើងនឹងធ្វើការបង្កើតកម្មវិធី Java Application ដែលដំណើរជាលក្ខណៈ Console (screen ខ្មៅ បង្ហាញតែទិន្នន័យ តែសម្រស់អត់ស្អាត) មុនអាចសិក្សានិងបង្កើត Application បានទាមទារឲ្យដំឡើង Require មួយចំនួនដូចជា JDK ,Netbean,Sqlserver នឹង Driver សម្រាប់ ភ្ជាប់ Database របស់ SqlServer ឈ្មោះ sqljdbc4-2.0 ។
1. JDK ដើម្បី Download → link : http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
2. Netbean ដើម្បី Download → link : https://netbeans.org/downloads/index.html
3. Driver ដើម្បី Download → link : http://www.java2s.com/Code/Jar/s/Downloadsqljdbc420jar.htm
1- តើអ្នកមានឆ្ងល់ទេតើហេតុអ្វី ? យើងត្រូវការ Driver រាល់ការ Connection ទៅកាន់ពពួក RDBMS ដទៃលើកលែងតែ Ms Access ដែលមិនត្រូវការ Driver ដំឡើងបន្ថែម (ព្រោះ Driver វាមានស្រាប់)
2- Driver នឹងអីគេទៅ? ចម្លើយ ទី 1 គឺ ដោយសារជា Software ពីរផ្សេង នៅក្នុងក្រុមហ៊ុនដាច់ដោយឡែកដែល Java របស់ Oracle រីឯ ពពួក RDBMS ដូចជា Sqlserver របស់ Microsoft ។ រីឯចម្លើយ ទី2 គឺ អានឹងអីគេ គឺថា…Adapter គ្រឿងសម្រួល (ផ្ទុកសំនុំ Class សម្រាប់ភ្ជាប់ Database) សម្រាប់ដំណើរការ Connection ។ សម្រាប់ Sql Server យើងប្រើ Driver sqljdbc4-2.0 សម្រាប់ RDMS ផ្សេងទៀត ដូចជា mysql ត្រូវការ Driver ឈ្មោះ mysql-connector-java-** ។
♦ ការដំឡើងកម្មវិធីសម្រាប់សរសេរកូដ Java
មុនយើងអាចសរសេរកូដ Java ទាមទារឲ្យយើង Install JDK បន្ទាប់មក Install Netbean ចំណុចនេះសូមធ្វើការដំឡើងដោយខ្លួនឯង ។
♦ ការបង្កើត Project Java នៅក្មុង Netbean
ការបង្កើត Project គឺ ដើម្បី Develop Application សូមអនុវត្តន៍ជំហានដូចខាងក្រោម៖
ចូលទៅកាន់ File → ចុច New Project (ctrl+shift+n) ៖
ជ្រើសរើស Java → Java Application បន្ទាប់មកចុច → Next៖
បន្ទាប់ធ្វើការដាក់ឈ្មោះ Project ទីតាំងបន្ទាប់មកចុច Finish ៖
បន្ទាប់ចុច Finish Netbean នឹង Generate Class JavaJDBC ជាប្រភេទ File java ដូចខាងក្រោម៖
JavaJDBC៖
Import Driver ‘sqljdbc4-2.0’ ចូលក្នុងProject
ដើម្បីអាចប្រើប្រាស់ Class ដើម្បី Connect ទៅកាន់ Sql Server បានទាមទារឲ្យធ្វើការ Import Jar File “sqljdbc4-2.0” ។ សូមអនុវត្តន៍ជំហានដូចខាងក្រោម៖
Right+Click លើ Libraries → Add JAR/Folder ៖
ស្វែងរក Jar File ឈ្មោះ sqljdbc4-2.0 បន្ទាប់មកចុច Open ៖
ដើម្បីប្រាកដថា ការ Import ជោគជ័យ ឬ អត់ សូមចុចលើ Libraries ពិនិត្យមើលថាមាន File ដូចខាងក្រោម ឬនៅ៖
ការ Import ជោគជ័យលុះត្រាតែមាន File jar ដូចខាងលើ ។
ការសរសេរកូដ Connection Database
ដើម្បីអាច Connection ទៅកាន់ Database នៃ Sql Server អនុវត្តន៍ជំហានដូខាងក្រោម៖
Load Driver
ប្រើប្រាស់ Class.ForName () ដើម្បី Load Driver ដោយប្រើ Config String (“com.microsoft.sqlserver.jdbc.SQLServerDriver”) មានស្រាប់សម្រាប់តែ Driver SqlServer ក្នុងចំណុចនេះវាទាមទារ Try catch ឈ្មោះ ClassNotFoundException ដើម្បីបោះ Message នៅពេលគ្មាន Driver ។ សូមកុំព្យាយាមសរសេរកូដ ឬ Copy Past កូដបន្តទៅទៀតបើចំណុចនេះមិនដំណើរ ព្រោះវាជាជំហានដំបូងនៃដំណើរការ Connection ។
បើសិនជាការ Config នេះបានជោគជ័យវាគ្មាន Error កើតឡើងទេ ។
Connection ទៅកាន់ SqlServer
ដើម្បីអាចធ្វើការ Connect ទៅកាន់ Databse បានប្រើប្រាស់ Class Connection នឹងបង្កើត Object Connection ដូចខាងក្រោម៖
Connection con = DriverManager.getConnection (url) ;
ដែល url បញ្ជាក់ path នៃ Database ៖
jdbc:sqlserver://localhost:1433;DatabaseName=AntDB;UserName=sa;Password=T123@gi;
ទម្រង់ Path ខាងលើសម្រាប់ Connection ទៅកាន់ Localhost Port 1433 Database ឈ្មោះ AntDB UserName ឈ្មោះ sa និង Password T123@gi
ចំណុចខាងលើនេះវាទាមទារ Try Catch ឈ្មោះ SqlExecption ដើម្បីចាប់ Error ទាក់ទងនឹង Connection ។ សូមកុំព្យាយាម សរសេរកូដ ឬ Copy Past កូដបន្តទៅទៀតបើចំណុចនេះមិនដំណើរ ព្រោះវាជាជំហាន នៃដំណើរការConnection ។ បើគ្មានError ទេយើងនឹងទទួលបានលទ្ធផលដូចខាងក្រោម៖
ទាញទិន្និន័យពី Database
យើងប្រើប្រាស់ Statement Class សម្រាប់ Execute Sql Command ។ យើងធ្វើការទាញទិន្និន័យពី table village ដែលមាន Fields (village_code,village_name) ៖
ទម្រង់បង្កើត object នៃ Class Statement សម្រាប់ Execute Command Sql ។
executeQeury () ជា method សម្រាប់ Read ទិន្និន័យពី Database ។
getResultSet () ជា Method returnObject ResultSet ដែលមានមុខងារផ្ទុកទន្និន័យជាលក្ខណៈ Row/Column បណ្តោះអាសន្ននៅលើ Ram ។ ខាងលើជាដំណើរការ Read ទន្និន័យពី Column 1 និង Column 2 ពី Database ។ ដំណើរការខាងលើនឹងទទួលលទ្ធផលដូចខាងក្រោម៖
ចំណាំ៖ អ្នកត្រូវប្រាកដថាបានបង្កើត Database និង table ដែលមានផ្ទុកទិន្នន័យរួចរាល់ដែលមានឈ្មោះ ជាពិសេស Username និង Password ដូចឧទាហរណ៍ខាងលើ នៅក្នុង SQL Server នោះទើបអាចដំណើរការកូដខាងលើបាន (Ex: Databse Name = AntDB , Table Name = village,….) ។ មួយវិញទៀត អ្នកក៏អាចធ្វើការ Execute Script Code របស់ Database AntDB នៅក្នុង SQL Server របស់អ្នក ដោយ download នៅទីនេះ ដើម្បីធ្វើការបង្កើត Database បានផងដែរ ។
♦ រៀបរៀងអត្ថបទដោយ៖ លោក អូន ហ៊ិនស៊ី
♦ សម្រាប់វគ្គសិក្សា Java Beginning តម្លៃ ៧០ដុល្លា http://training.antkh.com/java_beginning.aspx
♦ សូមចូលរួមជាសមាជិក ANT Training Group ដើម្បីតាមដានសម្មភាពប្រចាំថ្ងៃជាមួយអាន-ANT
♦ ចុច Like គេហទំព័រ www.antkh.com ដើម្បីទទួលបានអត្ថបទថ្មីៗដែលទាក់ទងនឹងបច្ចេកវិទ្យារៀងរាល់ថ្ងៃ
♦ សម្រាប់ស្នាដៃសិស្សដែលបានបញ្ចប់វគ្គសិក្សានៅអាន-ANT កន្លងមក http://training.antkh.com/achievements/
មតិ និងយោបល់ទៅលើអត្ថបទនេះ (តាម Facebook)
ខាងក្រោមនេះជាយោបល់ផ្សេងៗរបស់អ្នកទស្សនា