Codeigniter-working-with-database
CodeIgniter-データベースの操作
他のフレームワークと同様に、データベースと頻繁にやり取りする必要があり、CodeIgniterはこの作業を簡単にします。 データベースと対話するための豊富な機能セットを提供します。
このセクションでは、CRUD(作成、読み取り、更新、削除)機能がCodeIgniterでどのように機能するかを理解します。 stud テーブルを使用して、 stud テーブルのデータを選択、更新、削除、および挿入します。
テーブル名:スタッド
roll_no
int(11)
name
varchar(30)
データベースへの接続
私たちは次の2つの方法でデータベースに接続できます-
- 自動接続-ファイルapplication/config/autoload.phpを使用して自動接続を行うことができます。 自動接続は、各ページのデータベースをロードします。 以下に示すように、データベースライブラリを追加するだけです-
- 手動接続-一部のページのみのデータベース接続が必要な場合は、手動で接続できます。 任意のクラスに次の行を追加して、データベースに手動で接続できます。
ここでは、すべてがデータベース構成ファイルapplication/config/database.phpに設定されているため、引数を渡していません。
レコードを挿入する
データベースにレコードを挿入するには、次の表に示すように、insert()関数を使用します-
Syntax | insert([$table = ''[, $set = NULL[, $escape = NULL]]]) |
Parameters |
|
Returns | TRUE on success, FALSE on failure |
Return Type | bool |
次の例は、 stud テーブルにレコードを挿入する方法を示しています。 $ dataはデータを設定した配列で、このデータを stud テーブルに挿入するには、この配列を2 ^ nd ^引数で挿入関数に渡すだけです。
レコードを更新する
データベースのレコードを更新するには、以下の表に示すように、* set()および where()関数とともに update()*関数を使用します。 * set()*関数は、更新するデータを設定します。
Syntax | set($key[, $value = ''[, $escape = NULL]]) |
Parameters |
|
Returns | CI_DB_query_builder instance (method chaining) |
Return Type | CI_DB_query_builder |
- where()*関数は、更新するレコードを決定します。
Syntax | where($key[, $value = NULL[, $escape = NULL]]) |
Parameters |
|
Returns | DB_query_builder instance |
Return Type | object |
最後に、* update()*関数はデータベース内のデータを更新します。
Syntax | update([$table = ''[, $set = NULL[, $where = NULL[, $limit = NULL]]]]) |
Parameters |
|
Returns | TRUE on success, FALSE on failure |
Return Type | bool |
レコードを削除する
データベース内のレコードを削除するには、次の表に示すようにdelete()関数が使用されます-
Syntax | delete([$table = '[, $where = '[, $limit = NULL[, $reset_data = TRUE]]]]) |
Parameters |
|
Returns | CI_DB_query_builder instance (method chaining) or FALSE on failure |
Return Type | mixed |
次のコードを使用して、 stud テーブルのレコードを削除します。 最初の引数はレコードを削除するテーブルの名前を示し、2番目の引数は削除するレコードを決定します。
レコードを選択する
データベース内のレコードを選択するには、次の表に示すように、 get 関数が使用されます-
Syntax | get([$table = ''[, $limit = NULL[, $offset = NULL]]]) |
Parameters |
|
Returns | CI_DB_result instance (method chaining) |
Return Type | CI_DB_result |
次のコードを使用して、データベースからすべてのレコードを取得します。 最初のステートメントは、「スタッド」テーブルからすべてのレコードをフェッチし、$ queryオブジェクトに保存されるオブジェクトを返します。 2番目のステートメントは、$ queryオブジェクトで* result()*関数を呼び出して、すべてのレコードを配列として取得します。
接続を閉じる
次のコードを実行することにより、データベース接続を手動で閉じることができます-
例
これは完全な例です。ここでは、上記のすべての操作が実行されます。 次の例を実行する前に、この章の冒頭で説明したようにデータベースとテーブルを作成し、 application/config/database.php に保存されているデータベース構成ファイルに必要な変更を加えます。
次に、ブラウザで次のURLにアクセスして、この例を実行します。 yoursite.comをURLに置き換えます。