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

我的地盘我做主
该用户从未签到
 |
< > </P>0 A$ s/ H1 N7 `' g6 L
< >杨超 </P>
5 i5 Q4 G3 a7 @$ u8 Y9 D< > </P>
3 A4 @1 w3 ?- U! @% K< > 随着数据库的广泛应用,数据库编程已经成为程序设计中发展迅猛的一支。 </P>
9 c( v4 Q# X0 |7 X" s8 R8 q< >C++ Builder在数据库开发方面具有的强大功能是无可比拟的,你甚至可以不 </P>
$ w, q/ B" g& [8 c3 p- T4 C1 V< >写一行程序就生成漂亮的数据库程序。 </P>6 q* s8 A1 d& j7 ?
< > </P>
! e7 l# H. m- r; d# F2 |1 f9 d< > 下面对C++Builder中的几个数据库VCL的使用技巧做一下介绍: </P>
* f5 H0 c4 v* {4 }5 l; `3 N6 Y< > </P>% w% F! Q9 }) y+ R
< > 一、DBGrid控件 </P>- J2 C% K# i7 P0 p3 m. I T& G
< > </P>
9 X7 U' f2 x: \. C< > 1.设置DBGrid的字段显示宽度属性 </P>* H( d: _8 F. j! Q
< > </P>1 g, L. W. X, K4 [4 `
< > 为了在DBGrid中建立较小的列,你必须建立一个显示标题,它等于或小于字 </P>; q5 v: E, s1 Q. p8 r; k5 E" l" x( h
< >段值。例如,你希望建立一个只有三个字符宽的列,你的列标题显示必须只有三 </P>3 b7 [9 L6 V/ ~
< >个字符或更少。 </P>' A. f1 A X: b- B* ^
< > </P>6 c4 y! X# t; N& t1 Q" L
< > 2.改变DBGrid的显示字段及日期显示格式 </P>
) [) D% e, @ x< > </P>$ W+ B2 t! t. o; p1 J6 Z% I
< > (1)双击DBGrid对应的Table1,进入字段编辑器。 </P>
, \8 H* _1 d- `6 p! w- Q< > </P>
/ V! L& ^) S, f6 F0 C< > (2)点右键出现选单选“Add Fields…" ,出现添加字段对话框,选择要添加 </P>) m7 F! D5 I+ R2 Z. ?% {6 i) U! `, Q
< >的字段(该字段将在运行时由DBGrid显示)然后点OK按钮。 </P>
3 E# ]- I; {' W' p' y< > </P>
! p' S* x- g# n. h! M< > (3)假设添加了“日期”字段,点该字段,在属性表中的:DisplayLabel中 </P>
1 ?; c/ A& N# f/ s) [< >填入你希望DBGrid显示的字段名。如果原来字段名是英文的,这里用中文名后 </P>
A1 Y$ d P& D0 g& h< >DBGrid将显示中文名。在DisplayFormat中填入:yyyy-mm-dd,以后日期将按 </P>4 c6 e. r; r ~/ \
< >1999-05-28格式显示。 </P>+ O, e+ K% w5 C$ ~
< > </P>2 r7 }6 ?, P! D- k7 c! `# J
< > 二、Tquery控件 </P>
3 \8 h X' [! T' t% T I<P> </P> F0 A D0 d5 r" w2 I4 c. H3 _
<P> Tquery 控件是数据库编程中非常重要的一个控件,它负责通过BDE与数据库 </P>7 H0 ~7 X1 U o- B( C3 _
<P>建立联系,通过SQL语句方便的建立查询。Query必须建立相应的SQL才能生效。 </P>
4 t) `$ V5 @* D# R: d<P> </P>" e; ~$ Z" D. h4 b6 J; Y2 M2 y
<P> </P>
# x i7 F6 ^: W<P> Tquery的参数设置如下: </P> D) U9 g M1 C7 E# j- A
<P> </P>; k& u( m1 n2 V6 \# R
<P> (1)在SQL属性中:Select * from 表名 where 字段名=:变量名 </P>
* L( J3 Q& J1 l5 n3 I2 e<P> </P>
: [( `$ p* q9 |3 \<P> 跟在“ : "后面的是变量。这样写后,在参数属性中就可以修改该变量的数 </P>
% O( r! r; w2 Z4 O<P>据类型等。 </P>
- Y8 z. E0 ^ A! X; ]! m/ V<P> </P>
9 l- D& n3 A1 d<P> (2)对变量的赋值: </P>$ u$ C1 S9 c9 @( [: c; v
<P> </P>
) {( Z8 C: {' g; `! \<P> Query1-〉Active=false; </P>8 O$ I5 _5 Y5 D0 Y# F( ]
<P> </P>
$ @0 Z1 N: W& K0 e<P> Query1-〉Params-〉Items[0]-〉AsString=Edit1-〉Text; </P>
+ o! _1 O" D7 L# l<P> </P>
4 F: }1 G+ h/ y( {<P> Query1-〉Active=true;//查找符合变量的记录 </P>6 W) F# K1 I0 Z* i9 ~8 P$ c/ v
<P> </P>
. e; \3 Z6 y- a+ I2 X8 k<P> (3)用DBGrid显示结果 </P>
- f. ?* ~7 K, u/ \<P> </P>- j) H( w# N& p( }; P/ _# u
<P> DBGrid的DataSource与DataSource1连接,而DataSource1的DataSet与 </P>
' v4 u, K" U* L: Z X2 O<P>Tquery1 连接。 </P>
7 n7 |' G2 n5 s9 D% r: P9 l<P> </P>2 \4 J2 C8 o5 N# W
<P> 三、应用示例 </P>
9 E3 X- o! b- T' R5 b: k<P> </P>7 |( g( C+ Y5 b& P6 I
<P> 通过Query控件嵌入SQL语句建立的查询比Table更简单、更高效。 </P>
- C6 E' G2 i/ J<P> </P>; b1 p" ]4 k w& ~: P+ r: c- Z
<P> 用一个简单的代码来说明如何建立查询程序: </P>
( c' p3 N6 c2 A- y. v U% f T<P> </P>, R3 ~2 A, G1 |" \! ]+ U1 B
<P> 例如,要建立一个检索表1中书名为book1的程序则在表单上放置DBGrid, </P>
( C5 `8 t* |# \9 E<P>DataSource,Query三个控件加入以下代码: </P>
4 \2 F7 d3 E- F3 U% V# ]3 b$ L<P> </P>
% m6 n# N% E3 Y6 l<P> DBGrid1-〉DataSource=DataSource1; </P>
+ m- j% }& w. d$ E M' [. N<P> </P>
9 |+ |( |* x; J- @0 I<P> DataSource1-〉DataSet=Tqery1; </P> s7 S0 ?. U* X
<P> </P>
9 d0 I2 X0 ?8 F" j' r% x0 t<P> Query1-〉Close(); </P>. N: o$ R! }( D# M* u% F
<P> </P># [; F2 Z( t+ h4 y/ `! M
<P> Query1-〉SQL-〉Clear(); </P>
- Y9 Z6 p! P2 g8 w0 X% A<P> </P>+ ^* D/ G3 h X6 q
<P> Query1-〉SQL-〉Add(″Select * From 表 Where (书名=′book1′ ″ </P>
4 ^/ U( G9 k+ x1 h' L<P>); </P> E6 K' w# g" ~( L. v3 J8 q( N4 b& T
<P> </P>
5 _- X* N# n# w( y<P> Query1-〉ExecSQL(); </P>
% Q2 [, ?1 K/ ]<P> </P>
v) z3 Y5 h% ^) l9 r<P> Query-〉Active=true; </P>6 A! W% r( R; ?" V
<P> </P>( m0 D; n$ n! ]" `
<P> 你就可以在生成的表格中看到所有名称为book1的记录。 </P> |
zan
|