>  기사  >  백엔드 개발  >  thinkphp5의 데이터베이스 작업 정보

thinkphp5의 데이터베이스 작업 정보

jacklove
jacklove원래의
2018-06-15 11:46:041813검색

1 문 추가, 삭제, 수정 및 확인

$result = Db::execute('insert into log(user_id, ip) values(1, 11231)');
dump($result);
$result = Db::query('select * from log');
echo &#39;<pre class="brush:php;toolbar:false">&#39;;
var_dump($result);


3.

Parameter Binding

Named Placeholder Binding

$str = &#39;insert into log(user_id, ip) values(?, ?)&#39;;
$result = Db::execute($str, [1, &#39;12312&#39;]);

$result = Db::query(&#39;select * from log where id = ?&#39;, [4]);

//占位符
Db::execute(&#39;insert into log(user_id, ip) values(:user_id, :ip)&#39;, [&#39;user_id&#39;=>12, &#39;ip&#39;=>&#39;5555&#39;]);

4. 쿼리 빌더


//添加:
Db::table(&#39;log&#39;)->insert([&#39;user_id&#39;=>1, &#39;ip&#39;=>&#39;654321&#39;]);

//更新
Db::table(&#39;log&#39;)
    ->where(&#39;id&#39;, 12)
    ->update([&#39;user_id&#39;=>123]);

//查询数据
$list = Db::table(&#39;log&#39;)
    ->where(&#39;id&#39;, 12)
    ->select();

//删除数据
Db::table(&#39;log&#39;)
    ->where(&#39;id&#39;, 10)
    ->delete();

테이블 쿼리 시 추가할 필요 없음 접두사 메서드:
Db::name(&#39;log&#39;)->insert([&#39;user_id&#39;=>44, &#39;ip&#39;=>5555]);

5 DB체인 작업

지원하는 메서드 연쇄 쿼리:


메서드 이름

설명

select

데이터베이스 쿼리

find6. 관련 권장 사항:
단일 레코드 쿼리

insert
기록 삽입

update
update Record

dalete
delete Record

쿼리 값

column
쿼리 열

chunk
포인트 블록 쿼리

count
집계 쿼리

사물 지원

//自动控制事物
Db::transaction(function (){
    Db::table(&#39;log&#39;)->delete(2);
    Db::table(&#39;log&#39;)->insert([&#39;user_id&#39;=>123]);
});

//手动控制事物的提交
//启动事物
Db::startTrans();
try {
    Db::table(&#39;log&#39;)
        ->where(2);
    Db::table(&#39;log&#39;)
        ->insert([&#39;user_id&#39; => 213]);
    Db::commit();
} catch (Exception $e){
    Db::rollback();
}

이 기사에서는 thinkphp5 데이터베이스 작업에 대해 설명합니다. 더 많은 관련 내용은 PHP 중국어 웹사이트에 주목하세요.

thinkphp 분산 데이터베이스에 대한 자세한 설명

ThinkPHP를 통해 데이터베이스를 연결하는 방법

thinkphp를 통해 여러 데이터베이스를 연결하는 방법

위 내용은 thinkphp5의 데이터베이스 작업 정보의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.