Rumah >rangka kerja php >ThinkPHP >Apakah kaedah mengendalikan pangkalan data dalam Thinkphp5.0?
Kendalian pertanyaan
Db::query('select * from think_user where id=?',[8]);
Kendalian tulis
Db::execute('insert into think_user (id, name) values (?, ?)',[8,'thinkphp']);
Data pertanyaan
cari mengembalikan rekod, dan hasil yang dikembalikan ialah tatasusunan satu dimensi Jika hasilnya tidak wujud, NULL adalah dikembalikan
Db::table('think_user')->where('id',1)->find();
pilih mengembalikan semua rekod, dan hasil yang dikembalikan ialah tatasusunan dua dimensi Jika hasilnya tidak wujud, tatasusunan kosong dikembalikan
Db::table('think_user')->where('status',1)->select();
db('user')->where('id',1)->find(); db('user')->where('status',1)->select();
Nota: Menggunakan fungsi db assistant akan menyambung semula ke pangkalan data setiap kali secara lalai, semasa menggunakan Db ::name atau kaedah Db::table akan Singleton. Jika fungsi db perlu menggunakan pautan yang sama, anda boleh memasukkan parameter ketiga, seperti
db('user',[],false)->where('id',1)->find(); db('user',[],false)->where('status',1)->select();
Tambah data
Gunakan kaedah sisipan kelas Db untuk menambah data ke pangkalan data Hantar data$data = ['foo' => 'bar', 'bar' => 'foo']; Db::table('think_user')->insert($data);
Tambah berbilang keping data
Tambahkan berbilang keping data Hanya hantar data untuk ditambahkan terus kaedah insertAll kelas Db$data = [ ['foo' => 'bar', 'bar' => 'foo'], ['foo' => 'bar1', 'bar' => 'foo1'], ['foo' => 'bar2', 'bar' => 'foo2'] ]; Db::name('user')->insertAll($data);insertAll kaedah menambah data dengan jayanya dan mengembalikan bilangan item yang berjaya ditambahkan
Fungsi Penolong
// 添加单条数据 db('user')->insert($data); // 添加多条数据 db('user')->insertAll($list);
Db::table('think_user')->where('id', 1)->update(['name' => 'thinkphp']);Mengemas kini nilai medan: Kaedah setField mengembalikan bilangan data yang terjejas, jika tiada medan data diubah suai, mengembalikan 0
Db::table('think_user')->where('id',1)->setField('name', 'thinkphp');
自增或自减一个字段的值 // 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);Lengah Kemas Kini
Db::table('think_user')->where('id', 1)->setInc('score', 1, 10);
di mana
Anda boleh menggunakan kaedah where untuk DAN pertanyaan bersyarat:// 根据主键删除 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();
kaedah whereOr
Db::table('think_user') ->where('name','like','%thinkphp') ->where('status',1) ->find();
Pertanyaan bercampur
di mana kaedah dan di manaAtau Kaedah sering perlu dicampur bersama dalam keadaan pertanyaan yang rumit Berikut ialah contoh: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();
where('字段名','表达式','查询条件'); whereOr('字段名','表达式','查询条件');
Atas ialah kandungan terperinci Apakah kaedah mengendalikan pangkalan data dalam Thinkphp5.0?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!