១១
កញ្ញា

របៀប​ប្រើ​ប្រាស់ 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)

ខាងក្រោម​នេះ​ជា​យោបល់​ផ្សេងៗ​របស់​អ្នកទស្សនា