-
buildSql();返回SQL語句
where('字段名','表達式','查詢條件');
表達式 含義
EQ、=? ? ? ? 等于(=)?
NEQ、<>? 不等于(<>)?
GT、>? ? ? ? 大于(>)?
EGT、>=? ? 大于等于(>=)?
LT、<? ? ? ? ? ? ? ? ? ? 小于(<)?
ELT、<=? ? ? ? ? ? ? ? 小于等于(<=)?
LIKE? ? ? ? ? ? ? ? ? ? ? 模糊查詢?
[NOT] BETWEEN (不在)區間查詢?
[NOT] IN? ? ? ? ? ? (不在)IN 查詢( 'id','in' ,'1,5,8'( [1,5,8] ) )
[NOT] NULL 查詢字段是否(不)是NULL?
[NOT] EXISTS EXISTS查詢?
EXP 表達式查詢,支持SQL語法?
> time 時間比較?
< time 時間比較?
between time 時間比較?
notbetween time 時間比較?
<!-- Db::table? -->
Db::table('據庫名')->where()->buildSql();
<!-- Db::name 方法同上 -->
Db::name('不戴前置數據庫名')->where()->buildSql();
查看全部 -
方法都為返回影響數據的條數
where('字段名','表達式','查詢條件');
<!-- Db::table? -->
根據主鍵刪除
Db::table('據庫名')->delete(1);
條件刪除?
Db::table('據庫名')->where('key','<',value)->delete();
<!-- Db::name 方法同上 -->
Db::name('不戴前置數據庫名')->delete(1);
或者用SQL語句刪除Db::execute(sql語句)
二維數組[
? ? ? ?0 =>一維數組[key=>value,~~~]
? ? ? ?,~~~
? ? ? ? ? ? ? ]
查看全部 -
方法都為返回影響數據的條數
<!-- Db::table? -->
如果數據中包含主鍵,可以直接使用如果沒有要加上->where('id', 1):
Db::table('據庫名')->update($一維數組); ['key' => 'value','id'=>1]);
如不加第二個參數,默認值為1
支持延時更新,如果需要延時更新則傳入第三個參數幾秒
Db::table('據庫名')->where('id', 1)->setDec('key', 5);自減第二參數是減少的值
Db::table('據庫名') ->where('id', 1)->setInc('score',5);自增第二參數是增加的值
<!-- Db::name 方法同上 -->
Db::table('不戴前置數據庫名')->update($一維數組);
或者用SQL語句更新Db::execute(sql語句)
二維數組[
? ? ? ?0 =>一維數組[key=>value,~~~]
? ? ? ?,~~~
? ? ? ? ? ? ? ]
查看全部 -
<!-- Db::name -->
Db::name('不加前綴數據庫名')->insert($一維數組) 返回值是影響記錄的行數
Db::name('不加前綴數據庫名')->insertGetId($一維數組) 返回ID
Db::name('不加前綴數據庫名')->insertAll($二維數組)? 返回成功插入行數
<!-- Db::table 方法同上 -->
Db::table('據庫名')->insert($一維數組);
或者用SQL語句插入Db::execute(SQL語句)
二維數組[
? ? ? ?0 =>一維數組[key=>value]
? ? ? ? ? ? ? ]
查看全部 -
<!-- Db::query Db::execute -->
#使用sql語句方式查詢數據庫
$res = Db::query("select *from imooc_user";("select *from imooc_user where id=?",[1]);
$res =Db::execute("insert into imooc_user set username=?,password?,email=?",['imooc',md5('imooc'),'[email protected]']);
<!-- Db::table -->
#selsect 返回所有記錄 返回的結果是一個二維數組
#如果結果不存在 返回一個空數組
$res = Db::table('imooc_user')->select();
#find 返回一條記錄 返回的結果是一個一維數組
#如果結果不存在返回NULL
$res = Db::table('imooc_user')->find();
#value? 返回一條記錄 并且是每條記錄的某個字段值
#如果結果不存在 返回NULL
$res = Db::table('imooc_user')->value('username');
#column 返回一個一維數組 數組中的value值就是我們要獲取的列的值
#如果存在第二個參數 就返回這個數組并且用第二個參數的值作為key值
#如果不存在返回NULL
$res = Db::table('imooc_user')->column('username');
<!-- Db::name 也有同上的方法-->
$res = Db::name('user')->select();
<!-- db 也有同上的方法-->
如果沒有第三個參數每次就都會實例化一個
$res = db('user',[],false)->find();
查看全部 -
刪除數據
$db?=?Db::name('不加前綴的數據表名');
$res = $db->where([key=>value, key=>value, ***]或者1=1刪除全部)->delete(留空則用where,或者可以添加自增ID值刪除)? 返回影響行數
查看全部 -
更新數據
$db?=?Db::name('不加前綴的數據表名');
$db -> where([key => value, key => value, ***])->update([key => value, key => value, ***]) 返回影響行數
$db -> where([key => value, key => value, ***])->update(key => value)? 返回影響行數,與update不同的是,只更新一條數據
$db -> where([key => value, key => value, ***])->setInc('INT字段', 自增數值默認1) 返回影響行數
$db -> where([key => value, key => value, ***])->setDec('INT字段', 自減數值默認1) 返回影響行數
查看全部 -
添加數據
$db?=?Db::name('不加前綴數據庫名');
insert([key => value, key => value, ***]) 返回值是影響記錄的行數
insertGetId([key => value, key => value, ***]) 返回自增ID
insertAll($數組)? 返回成功插入行數,可和原數據長度作比較
查看全部 -
Db::table('數據庫表名')->對象名??????? 條件->where(key, value) 表名:查詢值? 不知能否添加條件判斷,還是只能原生添加?
select ();返回所有記錄 返回的結果是一個二維數組,不存在返回空數組
column(key, value) 返回列一維數組,key默認查詢名,若存在第二個參數,則進行鍵值映射,value查詢名,不存在返回空數組
find() 返回一條記錄,返回的結果是一個一維數組,不存在返回NULL
value() 返回一條記錄,并且是字條記錄的某個字段值,結果不存在返回NULL
Db::name('不需前綴的表名')??? 開發中一般使用這個? 其余參數同上
助手函數:db('不需前綴的表名')? 功能同上,只是這種使用方法每次使用都需要實例化
Db::content()? 數據庫連接(惰性連接)
Db::query("SQL語句???", [value1, value2, value3]) 數據庫語句(原生)
Db::execute("SQL語句???", [value1, value2, value3]) 數據庫插入語句,返回影響條數(原生)
查看全部 -
在新版本的框架中,還需添加這么一行:
Container::get('app',?[APP_PATH])->run()->send();
查看全部 -
上節課糾正: find返回的結果是 一維數組
查看全部 -
每一個模型文件都對應數據庫中的一張表
查看全部 -
Model的文件名 = 類名 = 數據表去掉前綴后的名字,
之后就可以通過這個Model類來操作相應的數據表
查看全部 -
1. Db類的鏈式方法會返回一個Db類,我們可以對他繼續使用Db鏈式方法
查看全部 -
1.執行Db::connect()并沒有正在地連接數據庫,只有在使用數據庫的時候才會連接
查看全部
舉報