Langkah 6: Database Proyek 
Saya telah memilih MySQL sebagai DBMS saya, tapi ingat bahwa Kohana juga mendukung MSSQL, MySQLi, PostgreSQL, PDOSqlite.
Membuat database yang disebut "cd_collection" atau memilih nama yang
Anda sukai, dan menjalankan SQL berikut melalui phpMyAdmin atau alat
untuk menangani administrasi MySQL.
| 01 02 03 04 05 06 07 08 09 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 59 | <span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">CREATE TABLE `albums` (</span> CREATE TABLE `albums` (</span>  <span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">`id` int(11) NOT NULL auto_increment,</span> `Id` int (11) NOT NULL auto_increment,</span>  <span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">`name` varchar(50) collate utf8_bin NOT NULL,</span> `Name` varchar (50) menyusun utf8_bin NOT NULL,</span>  <span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">`author` varchar(50) collate utf8_bin NOT NULL,</span> `Author` varchar (50) menyusun utf8_bin NOT NULL,</span>  <span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">`genre_id` int(11) NOT NULL,</span> `Genre_id` int (11) NOT NULL,</span>  <span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">PRIMARY KEY (`id`),</span> PRIMARY KEY (`id`),</span>  <span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">KEY `genre_id` (`genre_id`)</span> KEY `genre_id` (` genre_id`)</span><span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin AUTO_INCREMENT=19 ;</span> ) ENGINE = InnoDB DEFAULT CHARSET = utf8 Collate = utf8_bin AUTO_INCREMENT = 19;</span><span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">INSERT INTO `albums` (`id`, `name`, `author`, `genre_id`) VALUES</span> INSERT INTO `albums` (` id`, `name`,` author`, `genre_id`) VALUES</span><span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">(2, 'Lines, Vines And Trying Times', 'Jonas Brothers', 16),</span> (2, 'Lines, Vines dan Mencoba Times', 'Jonas Brothers', 16),</span><span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">(3, 'The END', 'The Black Eyed Peas', 16),</span> (3, 'The END', 'The Black Eyed Peas', 16),</span><span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">(4, 'Relapse', 'Eminem', 18),</span> (4, 'Relapse', 'Eminem', 18),</span><span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">(5, 'Monuments And Melodies', 'Incubus', 1),</span> (5, 'Monumen Dan Melodies', 'Incubus', 1),</span><span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">(6, 'Thriller', 'Michael Jackson', 16),</span> (6, 'Thriller', 'Michael Jackson', 16),</span><span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">(7, 'Back in Black', 'AC/DC', 4),</span> (7, 'Back in Black', 'AC / DC', 4),</span><span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">(8, 'The Dark Side of the Moon', 'Pink Floyd', 4),</span> (8, 'The Dark Side of the Moon', 'Pink Floyd', 4),</span><span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">(9, 'Bat out of Hell', 'Meat Loaf', 4),</span> (9, 'Bat dari Neraka', 'Meat Loaf', 4),</span><span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">(10, 'Backstreet Boys', 'Millennium', 16),</span> (10, 'Backstreet Boys', 'Millenium', 16),</span><span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">(11, 'Rumours', 'Fleetwood Mac', 4),</span> (11, 'Rumor', 'Fleetwood Mac', 4),</span><span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">(12, 'Come on Over', 'Shania Twain', 16),</span> (12, 'Ayo Over', 'Shania Twain', 16),</span><span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">(13, 'Led Zeppelin IV', 'Led Zeppelin', 4),</span> (13, 'Led Zeppelin IV', 'Led Zeppelin', 4),</span><span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">(14, 'Jagged Little Pill', 'Alanis Morissette', 4),</span> (14, 'Jagged Little Pill', 'Alanis Morissette', 4),</span><span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">(15, 'Sgt. Pepper''s Lonely Hearts Club Band', 'The Beatles', 16),</span> (15, 'Sgt. Pepper Lonely Hearts Club Band', 'The Beatles', 16),</span><span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">(16, 'Falling into You', 'C√©line Dion', 16),</span> (16, 'Jatuh ke Anda', 'C√ © garis Dion', 16),</span><span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">(17, 'Music Box', 'Mariah Carey', 16),</span> (17, 'Music Box', 'Mariah Carey', 16),</span><span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">(18, 'Born in the USA', 'Bruce Springsteen', 4);</span> (18, 'Lahir di Amerika Serikat', 'Bruce Springsteen', 4);</span><span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">CREATE TABLE `genres` (</span> CREATE TABLE `genres` (</span>  <span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">`id` int(11) NOT NULL auto_increment,</span> `Id` int (11) NOT NULL auto_increment,</span>  <span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">`name` varchar(50) collate utf8_bin NOT NULL,</span> `Name` varchar (50) menyusun utf8_bin NOT NULL,</span>  <span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">PRIMARY KEY (`id`),</span> PRIMARY KEY (`id`),</span>  <span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">UNIQUE KEY `name` (`name`)</span> KUNCI UNIK `name` (` name`)</span><span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin AUTO_INCREMENT=22 ;</span> ) ENGINE = InnoDB DEFAULT CHARSET = utf8 Collate = utf8_bin AUTO_INCREMENT = 22;</span><span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">INSERT INTO `genres` (`id`, `name`) VALUES</span> INSERT INTO `genres` (` id`, `name`) VALUES</span><span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">(1, 'Alternative Rock'),</span> (1, 'Alternatif Rock'),</span><span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">(2, 'Blues'),</span> (2, 'Blues'),</span><span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">(3, 'Classical'),</span> (3, 'Klasik'),</span><span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">(4, 'Rock'),</span> (4, 'Rock'),</span><span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">(5, 'Country'),</span> (5, 'Negara'),</span><span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">(6, 'Dance'),</span> (6, 'Dance'),</span><span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">(7, 'Folk'),</span> (7, 'Folk'),</span><span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">(8, 'Metal'),</span> (8, 'Logam'),</span><span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">(9, 'Hawaiian'),</span> (9, 'Hawaii'),</span><span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">(10, 'Imports'),</span> (10, 'Impor'),</span><span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">(11, 'Indie Music'),</span> (11, 'Indie Music'),</span><span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">(12, 'Jazz'),</span> (12, 'Jazz'),</span><span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">(13, 'Latin'),</span> (13, 'Latin'),</span><span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">(14, 'New Age'),</span> (14, 'New Age'),</span><span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">(15, 'Opera'),</span> (15, 'Opera'),</span><span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">(16, 'Pop'),</span> (16, 'Pop'),</span><span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">(17, 'Soul'),</span> (17, 'Soul'),</span><span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">(18, 'Rap'),</span> (18, 'Rap'),</span><span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">(20, 'Soundtracks'),</span> (20, 'Soundtrack'),</span><span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">(21, 'World Music');</span> (21, 'World Music');</span><span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">ALTER TABLE `albums`</span> ALTER TABLE `albums`</span>  <span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">ADD CONSTRAINT `genre_inter_relational_constraint` FOREIGN KEY (`genre_id`) REFERENCES `genres` (`id`) ON DELETECASCADE ON UPDATE CASCADE;</span> ADD CONSTRAINT `genre_inter_relational_constraint` FOREIGN KEY (` genre_id`) REFERENSI `genres` (` id`) ON DELETECASCADE ON UPDATE CASCADE;</span> | 
Seperti yang Anda lihat, SQL menciptakan dua tabel, album dan genre, dan Mempopulai mereka dengan beberapa data. Pernyataan SQL lalu menambahkan kendala untuk asing kunci "genre_id".
Struktur database sangat sederhana dan tidak memerlukan banyak penjelasan.

Sekarang, Anda harus memberitahu Kohana dimana database Anda berada dan bagaimana untuk mengaksesnya. Mengedit global file konfigurasi sistem / config / database.php sebagai berikut
| 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 | <span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">$config['default'] = array</span> $ Config ['default'] = array</span><span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">(</span> (</span>    <span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">'benchmark'=> TRUE,</span> 'Patokan'=> TRUE,</span>    <span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">'persistent'=> FALSE,</span> 'Gigih'=> SALAH,</span>    <span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">'connection'=> array</span> 'Koneksi'=> array</span>    <span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">(</span> (</span>        <span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">'type'=> 'mysql',</span> 'Jenis'=> 'mysql',</span>           <span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">'user'=> 'root',</span> 'User'=> 'root',</span>          <span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">'pass'=> 'root',</span> 'Pass'=> 'root',</span>          <span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">'host'=> 'localhost',</span> 'Host'=> 'localhost',</span>            <span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">'port'=> FALSE,</span> 'Pelabuhan'=> SALAH,</span>               <span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">'socket'=> FALSE,</span> 'Socket'=> SALAH,</span>                <span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">'database'=> 'cd_collection'</span> 'Database'=> 'cd_collection'</span>    <span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">),</span> ),</span>    <span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">'character_set'=> 'utf8',</span> 'Character_set'=> 'utf8',</span>    <span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">'table_prefix'=> '',</span> 'Table_prefix'=> '',</span>    <span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">'object'=> TRUE,</span> 'Objek'=> TRUE,</span>    <span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">'cache'=> FALSE,</span> 'Cache'=> SALAH,</span>    <span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">'escape'=> TRUE</span> 'Melarikan diri'=> BENAR</span><span class="notranslate"onmouseover="_tipon(this)"onmouseout="_tipoff()"><span class="google-src-text"style="direction: ltr; text-align: left">);</span> );</span> | 
Kode ini memberitahu Kohana untuk terhubung ke database MySQL yang
disebut "cd_collection" di localhost dengan username "root" dan password
"root". Anda harus mengubah pengaturan ini sesuai dengan konfigurasi server database Anda.
  Kohana: The Swift PHP Framework Langkah 7: Buat Controller 
Kohana: The Swift PHP Framework
Kohana: The Swift PHP Framework Langkah 10: Final Thoughts
Kohana: The Swift PHP Framework Langkah 9: Buat Proyek View
Kohana: The Swift PHP Framework Langkah 8: Buat Model Project
Kohana: The Swift PHP Framework Langkah 7: Buat Controller
Kohana: The Swift PHP Framework Langkah 6: Database Proyek
Kohana: The Swift PHP Framework Langkah 5: pertama Kohana Proyek Anda
Kohana: The Swift PHP Framework Langkah 4: Konfigurasi Kohana
Kohana: The Swift PHP Framework Langkah 3: Instalasi Kohana
Kohana: The Swift PHP Framework Langkah 2: Men-download Kohana
Kohana: The Swift PHP Framework Langkah 1: Apa Kohana?
 
Tidak ada komentar:
Posting Komentar
Silahkan tulis komentar anda disini, bisa berupa: Pertanyaan, Saran, atau masukan/tanggapan.