Un site Web standard doit être indissociable des opérations de base de données. Dans ce cours, je travaillerai avec vous pour découvrir le mystère des opérations de données ThinkPHP5 et j'utiliserai volontiers ThinkPHP5 pour exploiter la base de données avec vous, rendant les opérations de base de données plus agréables. Utilisation de base
Requête de données
Db::query('select * from think_user where id=?',[8]);
Db::execute('insert into think_user (id, name) values (?, ?)',[8,'thinkphp']);Fonction AssistantSystème Une fonction d'assistant de base de données est fournie pour des requêtes plus pratiques :
Db::table('think_user')->where('id',1)->find();Remarque : L'utilisation de la fonction d'assistant de base de données se reconnectera à la base de données à chaque fois par défaut, tout en utilisant le Db::name ou La méthode Db::table est un singleton. Si la fonction db doit utiliser le même lien, vous pouvez transmettre le troisième paramètre, tel que
Db::table('think_user')->where('status',1)->select();
Utilisez la méthode d'insertion de la classe Db pour soumettre des données à la base de donnéesdb('user')->where('id',1)->find();
db('user')->where('status',1)->select();
Pour ajouter plusieurs éléments de données, transmettez simplement les données à ajouter directement à la méthode insertAll de la classe Db
db('user',[],false)->where('id',1)->find(); db('user',[],false)->where('status',1)->select();La méthode insertAll ajoute avec succès les données et renvoie le nombre d'éléments ajoutés avec succès Pieces
Fonction Assistant
$data = ['foo' => 'bar', 'bar' => 'foo']; Db::table('think_user')->insert($data);Update data
La méthode update renvoie le nombre de données affectées, si aucune donnée n'est modifiée, elle renvoie 0$data = [ ['foo' => 'bar', 'bar' => 'foo'],
['foo' => 'bar1', 'bar' => 'foo1'],
['foo' => 'bar2', 'bar' => 'foo2']
];
Db::name('user')->insertAll($data);
Mise à jour de la valeur d'un certain champ : la méthode setField renvoie le nombre des données concernées, si aucun champ de données n'est modifié, il renvoie 0
// 添加单条数据 db('user')->insert($data); // 添加多条数据 db('user')->insertAll($list);
Db::table('think_user')->where('id', 1)->update(['name' => 'thinkphp']);Mise à jour différée
Db::table('think_user')->where('id',1)->setField('name', 'thinkphp');
Supprimer les données自增或自减一个字段的值
// score 字段加 1
Db::table('think_user')->where('id', 1)->setInc('score');
// score 字段加 5
Db::table('think_user')->where('id', 1)->setInc('score', 5);
// score 字段减 1
Db::table('think_user')->where('id', 1)->setDec('score');
// score 字段减 5
Db::table('think_user')->where('id', 1)->setDec('score', 5);
Méthode de requête conditionnelle
Vous pouvez utiliser le où méthode pour effectuer une requête conditionnelle ET :
Db::table('think_user')->where('id', 1)->setInc('score', 1, 10);
// 根据主键删除 Db::table('think_user')->delete(1); Db::table('think_user')->delete([1,2,3]); // 条件删除 Db::table('think_user')->where('id',1)->delete(); Db::table('think_user')->where('id','<',10)->delete();
Requête mixte
Db::table('think_user') ->where('name','like','%thinkphp') ->where('status',1) ->find();. Expression de requête
L'expression de requête prend en charge la plupart des syntaxes de requête SQL et constitue également l'essence du langage de requête ThinkPHP, le format d'utilisation de l'expression de requête : Db::table('think_user')
->where('name','like','%thinkphp')
->whereOr('title','like','%thinkphp')
->find();
$result = Db::table('think_user')->where(function ($query) {
$query->where('id', 1)->whereor('id', 2);
})->whereOr(function ($query) {
$query->where('name', 'like', 'think')->whereOr('name', 'like', 'thinkphp');
})->select();
[Recommandation de didacticiel associée : thinkphp framework
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!