- 在线时间
- 0 小时
- 最后登录
- 2007-9-23
- 注册时间
- 2004-9-10
- 听众数
- 3
- 收听数
- 0
- 能力
- 0 分
- 体力
- 9975 点
- 威望
- 7 点
- 阅读权限
- 150
- 积分
- 4048
- 相册
- 0
- 日志
- 0
- 记录
- 0
- 帖子
- 1893
- 主题
- 823
- 精华
- 2
- 分享
- 0
- 好友
- 0

我的地盘我做主
该用户从未签到
 |
< > </P>
0 s, g F0 S8 M, T7 f+ I: z! _< >杨超 </P>
7 R. x; c" N% @; @< > </P>. P4 H& v M, k9 G
< > 随着数据库的广泛应用,数据库编程已经成为程序设计中发展迅猛的一支。 </P>% V. M) M4 ^$ C7 O% L9 `7 J) ~9 w# E
< >C++ Builder在数据库开发方面具有的强大功能是无可比拟的,你甚至可以不 </P>
% ^6 q4 T; O4 Q& c" r+ Y! `/ O1 X< >写一行程序就生成漂亮的数据库程序。 </P>
5 k) V2 H7 p2 M% E< > </P>
) Y$ t2 e3 @7 q% ]! q( z+ N< > 下面对C++Builder中的几个数据库VCL的使用技巧做一下介绍: </P>
0 m$ m& v. f- j3 M. j* u< > </P>
8 G1 ?$ L+ f) G# w8 g8 _2 j) g< > 一、DBGrid控件 </P>1 v1 v- y8 i& b6 `
< > </P>, k2 G P( E) E
< > 1.设置DBGrid的字段显示宽度属性 </P>, ], c1 R) Y, c3 G* ~0 V) ?
< > </P>7 }& P* J6 _* B4 t/ W1 z K( t7 d
< > 为了在DBGrid中建立较小的列,你必须建立一个显示标题,它等于或小于字 </P>
9 Z( m6 K8 n1 `< >段值。例如,你希望建立一个只有三个字符宽的列,你的列标题显示必须只有三 </P>
& J4 [+ l- o7 t* _5 B# Q5 k< >个字符或更少。 </P>
( S: j1 G7 ]) V< > </P>" [$ g; Z* M/ C
< > 2.改变DBGrid的显示字段及日期显示格式 </P>
; S6 N) ]7 F) ?1 T< > </P>
) K2 y) h, L+ {4 ^4 r9 Q5 `< > (1)双击DBGrid对应的Table1,进入字段编辑器。 </P>
6 O- t: l: [7 R* g5 ?, a< > </P>
* e/ d: E" D' x' x/ L< > (2)点右键出现选单选“Add Fields…" ,出现添加字段对话框,选择要添加 </P>! Z+ Z- X' p! r- k
< >的字段(该字段将在运行时由DBGrid显示)然后点OK按钮。 </P>* ^* F3 W. O" S# _3 y! s
< > </P>
+ m1 w0 N7 P3 c. \' Z: E, |6 q< > (3)假设添加了“日期”字段,点该字段,在属性表中的:DisplayLabel中 </P>. U. S, o4 V0 i2 Z
< >填入你希望DBGrid显示的字段名。如果原来字段名是英文的,这里用中文名后 </P>3 n0 }5 y" h* i% b* m( R) A/ M% G, W
< >DBGrid将显示中文名。在DisplayFormat中填入:yyyy-mm-dd,以后日期将按 </P>% A6 }& B8 Q( w" U! d9 I: T: y) y
< >1999-05-28格式显示。 </P>5 J, U @2 F3 D' @- f
< > </P>
: o& i9 y) u4 d r% \) e9 g' _1 l" @< > 二、Tquery控件 </P>
& y8 ~2 B( j- z<P> </P>
8 A. ]( u" ~' j<P> Tquery 控件是数据库编程中非常重要的一个控件,它负责通过BDE与数据库 </P>" n0 V4 q* i3 P" N- k5 i: P
<P>建立联系,通过SQL语句方便的建立查询。Query必须建立相应的SQL才能生效。 </P>
7 e3 ]9 R: v4 x' A: I/ y<P> </P>" {/ @& I/ ^1 ?9 c/ B
<P> </P>% P! |( R/ E: ~9 Z$ a6 o
<P> Tquery的参数设置如下: </P>
- x- g* y; a+ M, G<P> </P>
" N( T* p' L! c3 g9 Z" |! c+ N<P> (1)在SQL属性中:Select * from 表名 where 字段名=:变量名 </P>
2 {/ Q" u6 b4 p9 D<P> </P>: W+ g' S4 X9 f; }/ p( r
<P> 跟在“ : "后面的是变量。这样写后,在参数属性中就可以修改该变量的数 </P>, Q% u3 y) M0 l( p% T
<P>据类型等。 </P>
* l( ~' T _+ a# z9 T<P> </P>" r; \9 [( `- h( J# W: ^
<P> (2)对变量的赋值: </P>
1 F: o! j) [% L<P> </P>8 k( i! R9 [- | W& D' V$ j0 ~
<P> Query1-〉Active=false; </P>' g a) G ~8 k; v( _ `+ T9 \# a
<P> </P>0 V. M8 H# k2 z/ }
<P> Query1-〉Params-〉Items[0]-〉AsString=Edit1-〉Text; </P>2 _% @2 h7 t( Y/ n6 G) @$ V
<P> </P>
' y* _0 S! S* E6 u; ?& u _<P> Query1-〉Active=true;//查找符合变量的记录 </P>
& a3 P3 k' O1 P8 W1 J5 \, p<P> </P>
# n; J' R' V6 y! Q" p! @) n<P> (3)用DBGrid显示结果 </P>8 [9 w! g" u1 |/ _6 }# ]2 F9 r) x
<P> </P>) B$ F0 q: g T w+ ~2 A
<P> DBGrid的DataSource与DataSource1连接,而DataSource1的DataSet与 </P>: u5 M" j3 p" N3 u: ?
<P>Tquery1 连接。 </P>
, `7 P; @! j9 U; p/ s: U<P> </P>
% R2 M8 `6 W+ p/ r( g<P> 三、应用示例 </P>
' t, j4 f+ K0 C8 s/ d, X3 y<P> </P>
) Z$ O6 T/ x" a) R# O% n8 P% ~" A<P> 通过Query控件嵌入SQL语句建立的查询比Table更简单、更高效。 </P>3 m2 o/ d0 B1 m3 y q8 a% o
<P> </P>
( \/ r3 ?8 ]; A8 G<P> 用一个简单的代码来说明如何建立查询程序: </P>' c$ n) Q! ~* b& `
<P> </P>2 W- I/ d. p* P! r
<P> 例如,要建立一个检索表1中书名为book1的程序则在表单上放置DBGrid, </P>
3 e9 U" p. L# M9 {& i$ p' i<P>DataSource,Query三个控件加入以下代码: </P>
, z) G) }5 U, H<P> </P>
, ~: y y6 B9 \. W: Q<P> DBGrid1-〉DataSource=DataSource1; </P>
# m* o8 U ~4 G. _! x2 V' W1 h<P> </P>5 G2 [( i+ D0 ^6 F8 k
<P> DataSource1-〉DataSet=Tqery1; </P>
( r! A7 l& z: s& d( Y: u<P> </P>
; I' ?' u+ N# G8 |2 A7 }# l1 v<P> Query1-〉Close(); </P>) x, I) j! ?5 ^+ E8 q3 U* J
<P> </P>
# Y' K( ]; R; y1 k# n3 g<P> Query1-〉SQL-〉Clear(); </P>
2 u3 B2 R" _# T: X# K0 |<P> </P>+ V% j7 z+ S+ e% o
<P> Query1-〉SQL-〉Add(″Select * From 表 Where (书名=′book1′ ″ </P>% _3 S5 a$ w4 O& b
<P>); </P>
3 |! h/ d" x& [6 z% e<P> </P>2 Y- P- ^4 }9 M& y% ?) `9 L. B
<P> Query1-〉ExecSQL(); </P>& ]! L9 X/ k5 m$ t2 E
<P> </P>6 Y, X% O( l* t* D
<P> Query-〉Active=true; </P>
" m" f! h( e2 u- T. \<P> </P>0 F, H* Y, n5 G: ]- I
<P> 你就可以在生成的表格中看到所有名称为book1的记录。 </P> |
zan
|