facebook twitter hatena line email

「Php/codeigniter/db」の版間の差分

提供: 初心者エンジニアの簡易メモ
移動: 案内検索
行53: 行53:
 
が空になってないか確認する。
 
が空になってないか確認する。
  
 +
==SQLの実行==
 +
参照
 +
$this->db->query("select * from users");
 +
 +
挿入
 +
$this->db->query("insert into users(code, name, age) values('taro', 'taro!', 10);");
 +
$this->db->query("insert into users(code, name, age) values('jiro', 'jiro!', 8);");
 +
 +
$this->db->query("insert into users(code, name, age) values('jiro', 'jiro!', 8);");
 +
 +
使用したtable定義
 +
<pre>
 +
drop table users;
 +
create table users(
 +
id int(11) unsigned NOT NULL AUTO_INCREMENT,
 +
code varchar(15),
 +
name varchar(15),
 +
age int(11) unsigned,
 +
PRIMARY KEY(id),
 +
UNIQUE KEY `code` (`code`)
 +
);
 +
</pre>
 
==公式==
 
==公式==
 
https://codeigniter.jp/user_guide/3/database/connecting.html
 
https://codeigniter.jp/user_guide/3/database/connecting.html

2024年11月10日 (日) 03:24時点における版

db自動接続

application/config/autoload.php

- $autoload['libraries'] = array();
+ $autoload['libraries'] = array('database');

手動接続

以下でデフォルトのdbに接続

$this->load->database();

db設定

application/config/database.php

以下デフォルト設定

$db['default'] = array(
	'dsn'	=> '',
	'hostname' => 'localhost',
	'username' => '',
	'password' => '',
	'database' => '',
	'dbdriver' => 'mysqli',
	'dbprefix' => '',
	'pconnect' => FALSE,
	'db_debug' => (ENVIRONMENT !== 'production'),
	'cache_on' => FALSE,
	'cachedir' => '',
	'char_set' => 'utf8',
	'dbcollat' => 'utf8_general_ci',
	'swap_pre' => '',
	'encrypt' => FALSE,
	'compress' => FALSE,
	'stricton' => FALSE,
	'failover' => array(),
	'save_queries' => TRUE
);

PDOを使う場合は以下の通りdnsを設定する

'dsn'	=> 'mysql:host=localhost;dbname=mydatabase',

usernameと、passwordと、databaseを設定する。

'username' => '',
'password' => '',
'database' => '',

"No database selected"とエラーが出る場合

application/config/database.php

'database' => ,

が空になってないか確認する。

SQLの実行

参照

$this->db->query("select * from users");

挿入

$this->db->query("insert into users(code, name, age) values('taro', 'taro!', 10);");
$this->db->query("insert into users(code, name, age) values('jiro', 'jiro!', 8);");
$this->db->query("insert into users(code, name, age) values('jiro', 'jiro!', 8);");

使用したtable定義

drop table users;
create table users(
id int(11) unsigned NOT NULL AUTO_INCREMENT,
code varchar(15),
name varchar(15),
age int(11) unsigned,
PRIMARY KEY(id),
UNIQUE KEY `code` (`code`)
);

公式

https://codeigniter.jp/user_guide/3/database/connecting.html