数据表插入: ( I. j7 @7 Z0 m- M
方法: ; c$ B2 N4 k+ X. i: i8 Z
DB::insert() ' f! `( ?0 X+ U0 U3 ^3 M
参数: 3 A/ W( j, L8 s' Y
$table:插入数据的表
8 @) o/ L6 z- ]( d$data:插入的数据,字段对应值
! x) k: J' g& ~& O; F- o" C1 s$ ^$return_insert_id:是否返回插入数据的ID
- U. N6 m8 k* J( }6 C" m9 ]) J% Z3 P$replace:是否使用replace into(当原始表中存在不重复数据就插入,存在就更新) ; p( d# ~9 Y6 J- p' j8 M, @
$silent:操作失败是否不提示
+ I# d( e# J. t6 m0 T, n$ ?$ T: t; Y; u! f. q8 m; \
实例 / ? H v/ W7 x4 z# I0 I0 z3 O
DB::insert('test_db',array( + @* N; l- z+ {# z5 G0 |
'name' => 'ppc',
% c* Y K$ ^7 ]( O),true,true); , i% g! {- C, M
' Y6 {9 m! Y5 _" P$ s数据表删除: ( ?1 m9 i' z# ?; o2 _
方法: / S B, W2 A. J! Y0 h; l$ b# |$ B
DB::delete() ' F3 p8 U N1 z: h X9 ?
参数:
0 q8 P3 L/ B( |1 R$table:删除数据的表
0 J3 Y: W8 Z: V. O8 U0 H' g$ g9 K) O$condition:删除的条件
/ c, E1 j1 |( k4 ^" X$ L) |$limit:删除满足条件的条目数
0 t$ C6 @, q9 T( a2 o$unbufered:是否使用无缓存查询
7 y1 C9 |5 [' f. Q3 `3 X; _1 y; Y! f' n) o0 ^' ^
实例: ) v. H0 K. d: i* Q8 y6 [8 B2 V
DB::delete('test_db','id>2',1,true);m * B# m$ [& w4 A. m
# v, r- U- z; m' d0 o
数据表更新:
5 S& n5 B9 f5 V方法: ) Q. ]% |7 e* ^8 k" F( m
DB::update()
$ E; G! N( O$ b) H( B7 i参数:
; ?0 K' T$ y! Q$table:更新数据的表 2 S4 D' L( J! y8 m
$data:更新的数据,字段对应值
7 ^; @' u5 \8 P8 e/ W, q9 G$condition:更新的条件
/ Y$ ?6 D4 l! e6 S2 T7 x+ l) N$unbufered:是否使用无缓存查询
" e5 L: H9 m! J7 A0 M# c3 V" p2 y$low_priority:是否采用无锁表更新 4 T6 ~; g5 g2 G3 W Y9 l$ O
% ]" @5 z& K7 w$ M数据表查询(单条):
7 i$ w* Q+ N5 s9 T& p方法: : D- D+ ?! o) f2 s# w8 w$ u
DB::fetch_first() 2 ^5 n) Q2 H; K& r+ z& O
参数:
% W8 ^+ C" I6 ?1 |6 K/ c$sql:查询数据的SQL语句 * L: T1 g7 ^0 a' c1 W
$arg:绑定查询的参数
6 ^: S7 V7 ^- R4 o$silent:查询失败是否不提示 ! F! l' u& o- x; }1 e- T
实例: , v `8 T5 n+ s& W# q( v
$id = $_GET['id'];
( S* }0 f7 G) O! d7 ^DB::fetch_first('select * from %t where id=%d',array(
2 E* Q; u6 T. `. N'test_db',$id ! S9 N( l8 d0 L& {* t* W7 f) O
)); " p4 y( z: _" Z% K7 q
G4 {4 F0 r( ]% {4 k2 J5 HDB::fetch_first('select * from %t where name=%s',array(
( r y( o# ^5 N, I'test_db','ccc'
, p: H7 q* R0 B));
* F9 B: r0 ~# i4 B4 U# I' t3 W9 u' K0 f# D! [- f
) H4 ?# Q# L- G; a T) q$ L6 u0 E9 }5 v" @" O7 r- s
数据表查询(多条): ; c; r2 _$ w, X+ z9 H4 @& [2 H' x. p
方法: ) L0 q8 h @4 L8 T e, U
DB::fetch_all() ( j( i x* A, g2 p9 D
参数:
8 S9 y/ [8 a/ z$sql:查询数据的SQL语句 7 v$ s+ ~* R( _
$arg:绑定查询的参数 & |* D9 V1 @* R) H, t2 T x# |
$keyfield:一维索引的字段名称 ! L2 Q; b& F: A; @$ v9 E
$silent:查询失败是否不提示 7 u3 H. e- X8 X5 J( w4 |5 j' i, f
实例: ' m, J. B1 O! ~' X& y
DB::fetch_all('select * from %t where id >= %d AND id<=%d',array( + l$ C6 Z7 a1 @3 y8 x
'test_db',7,10 ! O2 E) l2 I7 E; c/ m- d/ U
));
7 i" y6 g/ o; @# j h/ w. T- A" a
DB::fetch_all('select * from %t where id IN (%n)',array( 6 b& ]: \8 ~; H9 X3 l. L- h
'test_db',array(1,2,3,4,5) ) {1 `4 U- ~% {- R: f
));
0 h; M: r& }( L* T4 W/ @! r' M% O& n
数据表查询(单字段) 常用于统计查询: ; s# n6 Y( Y {7 T
方法:
& o3 T- Q% }4 |1 |3 b# z) [DB::result_first()
: w/ z% o! X6 s* V$ Y) I* ^参数:
F0 w! X7 F% z- d6 x+ x$sql:查询数据的SQL语句 # c8 p) B2 W( U* L. d, E" a
$arg:绑定查询的参数
- }# L M7 Y# ?9 q* M/ W2 b$silent:查询失败是否不提示 ; G+ r7 m: H! k6 m4 p' ?
实例:
# ^6 a2 p) v: rDB::result_first('select name from %t where id=%d',array( 7 B& `; A2 }! @
'test_db',1
; V/ X# T( Q0 j+ B3 }. l, y4 s+ Z)); : U0 p/ q" P" Q3 I+ C
# f% \. R# i0 v; u4 V$ t4 bDB::result_first('select max(id) from %t',array(
4 {( X2 @$ r9 M+ [8 i+ |- r5 H'test_db'
/ g1 `/ b7 X1 G3 I0 Z$ d6 ?9 p)); ! e% v& i" ^/ u/ G$ a0 L: v
* S4 {) k' S- n t* ~# @1 u1 F3 o- p; `数据库自定义query 5 z* e' D+ B6 M6 q+ d# B
方法:
+ k& B/ ]) i. v3 t- oDB::query() l& f9 m3 M5 O6 r6 d5 D3 _
参数:
1 ?9 f; [3 q* [$sql:自定义SQL语句 ! z$ o$ z& m2 |; I
$arg:需要绑定的数据
3 u0 d G4 s1 X2 U3 T$silent:执行SQL失败时,是否不提示
- s; j5 d! u( C: v) R, L e: N$unbufered:是否使用无缓存查询
4 E% U/ m" d2 @' K实例: 9 f8 T/ C, V3 g
$query = DB::query("select * from %t where id IN (%n)",array( ) U% l& w# @3 e. c4 R7 T6 Y/ q
'test_db',array(1,2,3)
9 ~# D" P; ?% z; d/ c));
. E! q y; A+ O. Zdebug($query); 8 h# S. ]" a$ L: M8 X* F' ]
2 ?- V& \7 d& E7 S" c7 \
删除
" c+ o4 d3 ?& j9 i& HDB::query("delete from %t where id = %id",array( 9 d9 g1 l4 q8 `" [- j7 e3 r6 A
'test_db',11 1 d S/ O+ a/ d6 v) G B2 K
));
6 g- B* j9 B1 |0 |) O1 ?% S. p# @9 I5 r7 y" A4 H6 O1 m2 z, \$ a
n# y) i3 `" X8 p5 x1 ^
资源集转换结果集
% R7 U% j( o9 `# Z方法: , I' h; f- F/ n$ I$ @
DB::fetch()
4 P/ M; y" Z% P' }/ v% m参数: 9 H. c4 S( c" X8 D' Q+ \1 |1 h
$resourceid:数据库查询的query资源
, A( G3 ?5 Q/ }& |. T# U3 f$type:数组类型 9 a9 o* s" H+ @% a& a
实例:
: d$ g2 J: a* I; X3 `4 o" m0 i查询 * i0 k8 ~& J5 i. {4 C$ g
$query = DB::query("select * from %t where id IN (%n)",array(
, ~" p4 e" H! L7 B'test_db',array(1,2,3) 3 @$ \) b* i' N
));
1 }% D$ Y9 u* w* p; j swhile($res = DB::fetch($query)){ 5 d; Z x/ q3 s
$result[] = $res;
+ `2 }1 Y6 {* ^; s4 L0 b}
# C# T3 d1 y; h8 O; idebug($query);
?8 \& i6 t/ n r$ g) a3 ^
+ V9 K. Z8 T3 G; r- A* `, s- |: m# h单字段资源集转换结果集(一般用于查看获取统计值)
3 S, }* u. Y5 w5 i方法:
( R, |4 `: K9 _. CDB::result()
9 o5 B3 h9 d1 y1 ^参数:
9 g" P4 r3 M' x! o% Q2 W$resourceid:数据库查询的query资源
: ]0 o4 S/ H) _6 Y$row:指定行的第一个字段
) y- O7 _+ H( C$ n实例:
/ p2 S; {: c7 `( F$query = DB::query("select count(*) from %t where id < %id order by id",array( : W0 ^( b! M$ ?' U' d9 R5 v
'test_db',10
, M6 E0 y8 d& j));
( F- Q6 h0 a* D; c$data = DB::result($query,1); 8 i& g& E& A w% \1 P, t- M" d
T5 u% z8 K2 L' \常用实例:
# A, Y( h* x6 Z8 a- n+ h$ Q$query = DB::query("select count(*) from %t where id > %d",array(
2 F1 X: W# F4 W1 L8 Q7 W'test_db',7 & x; x; M+ B8 \$ o) }2 i
)); 2 W1 ?0 E8 p: c4 g9 N
$data = DB::result($query,0);
$ W* A' v3 f3 G/ ^- w6 e( oecho $data;
. S1 s& u. Q4 m2 P2 C6 d4 `* Y& V2 o2 f2 U# f* t% }
资源集行数计算(不适合统计太多的资源,速度慢) " D; t% N) P: [( A" w% D9 C/ j
方法:
4 v& D3 ~# E7 `1 |% b9 i. n$ rDB::num_rows() + U; I$ R- I' {0 y
参数:
4 B1 S3 ~8 E1 J5 O$resourceid:数据库查询的query资源
2 [1 K4 b" O1 y/ `* Q实例:
8 U, T$ O) Z( e5 A2 l& s7 c% F" ^$query = DB::query("select * from %t where id > %d",array( : @% i. \/ [1 Z2 r! |" t- _
'test_db',7 ) q/ T! V5 X) `; v4 j, k1 e7 f
)); $ E1 X9 b2 e/ w9 X2 F
$data = DB::num_rows($query);
% C% p. m% U7 a+ _( A: R7 Xecho $data; % C* G4 K' F( R9 C3 |6 ?2 T
7 t q7 I `* Q. g' W资源集资源释放 / x/ c2 U, c0 K
方法:
+ `( C+ U1 C, \0 C* tDB::free_result()
; J* f) o8 b2 l6 W" l2 |* H# W1 [参数:
+ a+ H9 @" [# T' y- Z( N3 z6 p2 `$query:执行SQL语句的query资源
) F& S+ o4 N' x8 }" u: ~6 U$query = DB::query("select count(*) from %t where id > %d",array(
! L% e6 [% S! {. S* V'test_db',7 0 |1 R$ A+ ?0 I. G
)); / S; U, G* v0 N2 v% U
$data = DB::result($query,0);
2 d3 ]4 a. j' B) IDB::free_result($query);
- f, F" c" x* V) _echo $data; # V9 {. s8 ~9 S5 z
8 A0 L3 D& u" \% z按字段排序 " g( M& e4 F" a% R) G
方法: 7 u& u$ D3 i& F# O$ `
DB: rder()
$ t* F* r+ Z( b6 @2 {参数: : B! ]$ i% y$ Q/ F c3 l2 H( T. G
$field:需要排序的字段 # o8 t; v/ Q, t& K4 m6 z6 _
$order:排序方式 % v. V' x9 M' K4 n# p i
实例:
, l5 g6 j& `, e) b( v% t$query = DB::query("select * from %t where id > %d order by".DB: rder('id','desc'),array( 9 G! ^2 h* H# e7 ^! y& Z$ D
'test_db',7
: @! `3 f5 T4 @) f: K)); % h8 t! @( q( K! D/ n2 p/ @
$data = DB::result($query,0);
4 ?; B( W* A# R0 i ?DB::free_result($query); $ [: Q* d {! X; J# O$ x: R6 k0 M
echo $data; ! X& D w) G1 |2 Y2 \0 A, W9 z
y1 g7 E" W( z取值区间设定 6 a2 W( P) A/ |, i" `- Z4 ~" X
方法: * ^/ r. |: X* ~- d, M% v+ G; F# M
DB::query()
3 n; L; o3 v" x$ S# S参数:
P2 ]4 V. {2 g; F/ y! b6 z, W. _$start:开始的索引值
8 r2 J; I5 x7 Y' U$limit:条目数
- h# x& M/ D, r% V& E$query = DB::query("select * from %t where id > %d order by".DB: rder('id').DB::limit(0,3),array( 9 W) d; T5 o" f2 ^7 }. ?
'test_db',7
) ?# L1 i$ B3 C- ]( Y" t" })); $ I* K4 y& B+ Q' y
, P5 @+ z5 } r* Z字段拼接
& r3 c5 ~( e: `! _/ x( @方法: / T7 _- {+ }; y$ A6 v
DB::implode() ! g' X2 ~' V8 G# B; E: H7 t0 R3 |) c
参数:
; m. Q0 U) F2 A; i2 H% K$array:需要拼接的字段数组
( b* Y" H$ j, T, I$glue:字段拼接的字符串 . \6 _# ~% I% f2 A9 v. o: Q8 r2 I
实例: 5 a. U5 G$ \ B1 Q- o' V9 Y
echo DB::implode(array('id' => 10,'name' => 'ddd'),'and'); + {( L; ^, @9 i! J4 x
+ _- q! K0 F0 a
应用: , P$ A' v0 N. J$ C O; b
DB::query("update %t set".DB::implode(array(
! v; R7 x1 c" B" w+ ]" }5 {3 O'name' => 'ddd', " z+ a# }, {5 R, K& |
'id' => 22 2 ^( `8 ~' }7 n& N u' i8 m
)).'where id=%d',array( ' C! x( y8 }8 Y! t3 x" j* e& ~
'test_db',
9 H1 D& x! k5 I O, H10,
3 s3 T) a% }+ M3 x! Y)
3 P! J4 [" C* C# Z, y+ E); ! X6 C0 k+ V* ^4 f) C
+ X9 j/ t2 `- F3 B0 h
字段数据设定
) |! C1 p- _6 {. J9 d方法: . D/ x# q* L$ h' }& l ], g Y" n8 c
DB::field() 9 ^3 L; k" c1 r) l$ h
参数: 8 k1 t! S* v1 c4 w* G& _# W: }
$field:需要排序的字段
# }0 G( y8 p4 G( e6 W% a* C- s7 }$val:字段对应的值
, `* P1 q* [. H% j$glue:连接字段与值的类型 7 J/ `) ^) o8 }, z2 i/ ^
实例: / A) k, H ]# u, f2 x
DB::field('id', 99, '='); / x) |# C6 S1 t: H+ T$ O: ]3 Q
9 v H5 v J2 w- f应用(把3改成99): + {% b, U- ?% X& G% H8 ^
DB::query("update %t set ".DB::field('id', '99', =)." where id=%d",array(
/ n) g" W7 W% d+ ^7 w5 Qarray('test_db', 3);
# B0 x- T8 p" `% H% ~! U)); / J0 o( m b, ~
|
|