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

我的地盘我做主
该用户从未签到
 |
< > </P>
6 r/ Y$ ]6 |1 j4 M& _3 U< >杨超 </P>, C' R& a4 D' h$ ?9 K) H% G
< > </P>
7 S! S/ ]5 X; _1 U4 c$ k< > 随着数据库的广泛应用,数据库编程已经成为程序设计中发展迅猛的一支。 </P># I* V5 \! G1 ^1 f+ y W; Y
< >C++ Builder在数据库开发方面具有的强大功能是无可比拟的,你甚至可以不 </P>0 V) p4 f# G4 p" C, {* ^% ]5 r; e
< >写一行程序就生成漂亮的数据库程序。 </P>; \3 k0 W5 @' s8 F
< > </P>/ a& c( x% @8 [3 T7 ]
< > 下面对C++Builder中的几个数据库VCL的使用技巧做一下介绍: </P>
+ a& `- X+ @3 x, a7 m< > </P>
6 Y9 [( o3 ~# m0 m' @< > 一、DBGrid控件 </P>" V& `( b8 r6 p" _7 H
< > </P>
2 M% s4 T. d8 j& ^9 a< > 1.设置DBGrid的字段显示宽度属性 </P>
4 L! _8 ?! V) [0 Q0 m% X% H< > </P>
0 o& C+ Z3 [" g7 ?< > 为了在DBGrid中建立较小的列,你必须建立一个显示标题,它等于或小于字 </P>
9 ^4 C0 v4 a7 d6 \3 y+ {< >段值。例如,你希望建立一个只有三个字符宽的列,你的列标题显示必须只有三 </P>: Q( O. F9 q0 t8 a Z% J4 f
< >个字符或更少。 </P>
) p9 m" u+ D6 a( L1 Q2 [< > </P>
7 B, N O" f9 a. L$ o) P o< > 2.改变DBGrid的显示字段及日期显示格式 </P>
* J8 z& u, [: e( W h6 m< > </P>& G8 B4 I+ `6 ~) h( ^; v' Q* d
< > (1)双击DBGrid对应的Table1,进入字段编辑器。 </P>
6 F! L5 c E& B< > </P>
6 U: \0 V# g* n& B< > (2)点右键出现选单选“Add Fields…" ,出现添加字段对话框,选择要添加 </P>
; F/ Y+ Y% q: S- t5 `< >的字段(该字段将在运行时由DBGrid显示)然后点OK按钮。 </P>
7 i3 i3 R! i8 L4 W. x/ I% I/ }$ E< > </P>
" a) {1 e+ |3 _- u< > (3)假设添加了“日期”字段,点该字段,在属性表中的:DisplayLabel中 </P>% T6 I; V! a/ r# J1 W
< >填入你希望DBGrid显示的字段名。如果原来字段名是英文的,这里用中文名后 </P>* Z1 ]+ ~9 p4 |0 c* @ v
< >DBGrid将显示中文名。在DisplayFormat中填入:yyyy-mm-dd,以后日期将按 </P>; z) R- _1 Y) t( y2 d& S
< >1999-05-28格式显示。 </P>3 W; [0 _, S2 m
< > </P>
3 j' |) k! ^8 S1 @% D< > 二、Tquery控件 </P>+ E5 E7 d7 z' u! w* L$ ~ w
<P> </P>
' Y! L4 _/ _% _<P> Tquery 控件是数据库编程中非常重要的一个控件,它负责通过BDE与数据库 </P>
6 i2 F. n& q* W) l<P>建立联系,通过SQL语句方便的建立查询。Query必须建立相应的SQL才能生效。 </P>" ^# H+ N6 [0 F3 E
<P> </P> y, s+ S# Y8 {( C
<P> </P>6 z" j; I# F# F
<P> Tquery的参数设置如下: </P>
. o6 U L/ r4 q/ V% M<P> </P>
: i3 x8 y) y9 D<P> (1)在SQL属性中:Select * from 表名 where 字段名=:变量名 </P>
6 I9 V+ `$ d0 l, u' |<P> </P>) M1 ?& s" s! p5 g8 D: t9 G
<P> 跟在“ : "后面的是变量。这样写后,在参数属性中就可以修改该变量的数 </P>! }" e, d: @+ R F4 T- P4 k
<P>据类型等。 </P>+ `1 ^" O x) S0 |1 M/ E/ D" M
<P> </P>
, x1 n5 g9 { t" Q<P> (2)对变量的赋值: </P>! w7 z) y8 `( A! q, Z$ f
<P> </P>" Y2 A% H8 K# M! J8 b/ F& e
<P> Query1-〉Active=false; </P>& X7 H0 \+ m: Q! [4 L
<P> </P>
/ j; Z) z8 e- {0 u<P> Query1-〉Params-〉Items[0]-〉AsString=Edit1-〉Text; </P>
% \' i) i" z$ M/ h3 F<P> </P>
; }3 P2 n8 u# s2 u<P> Query1-〉Active=true;//查找符合变量的记录 </P> {3 j1 _/ B# }% o% p% \
<P> </P>
# N- |# V* s: `<P> (3)用DBGrid显示结果 </P>8 V2 @& ?# q4 b5 Z# v6 j7 S
<P> </P>7 V0 F9 g+ E( N( s
<P> DBGrid的DataSource与DataSource1连接,而DataSource1的DataSet与 </P>
8 a: S0 N7 E; k4 X/ ~2 ?<P>Tquery1 连接。 </P># t2 u" W8 ]( u6 k& V
<P> </P>
4 ?7 o T w ^* I8 Y; T<P> 三、应用示例 </P>% Q x) }. G2 B" X
<P> </P>
, ?( t: O4 ~ f8 `, M) b' T( N<P> 通过Query控件嵌入SQL语句建立的查询比Table更简单、更高效。 </P>
1 Y: C0 z' |8 ^4 f<P> </P>
$ K1 _# u: J3 J) d% z<P> 用一个简单的代码来说明如何建立查询程序: </P>
$ p# |/ c# Q) b0 Q* c<P> </P>
4 h. a" Y9 \" q9 }<P> 例如,要建立一个检索表1中书名为book1的程序则在表单上放置DBGrid, </P>% I5 @# s0 d# V f
<P>DataSource,Query三个控件加入以下代码: </P>; m( R. t- L% O& _( ?
<P> </P>
" H% l$ D/ L3 x<P> DBGrid1-〉DataSource=DataSource1; </P>
% N' i' L* O* Z |7 l<P> </P>
/ n6 U* Q( E/ }) {6 Z$ d# j<P> DataSource1-〉DataSet=Tqery1; </P>! K2 D) N9 p# \. L l
<P> </P>
& `6 o( v4 q& f( ]! ?<P> Query1-〉Close(); </P>
( { G- ~. x7 O5 C1 D; y<P> </P>
9 g$ D4 ?* w" [8 m& `$ Y9 \8 v' L X<P> Query1-〉SQL-〉Clear(); </P>
' y1 }& m; k+ ~ m9 O9 ^7 i% A<P> </P>
$ t5 ?! E9 C( W% F$ L<P> Query1-〉SQL-〉Add(″Select * From 表 Where (书名=′book1′ ″ </P>9 t- X, O j; ?9 _+ H- g( Y5 P$ {
<P>); </P>
, L5 n# }3 @8 a" o7 @4 G; }3 f2 D1 s+ n# O<P> </P>
0 H7 \1 }) t9 L% u9 O$ l, i<P> Query1-〉ExecSQL(); </P>: y+ s7 X2 f6 Y$ l0 T2 C6 l8 L
<P> </P>
# i! [' z% @/ c. o% Q) E<P> Query-〉Active=true; </P>
3 ]" x' s, ? b1 B0 W% r<P> </P>
% w9 k0 ~/ S {2 B4 J% {& V# `* t+ u# r<P> 你就可以在生成的表格中看到所有名称为book1的记录。 </P> |
zan
|