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

我的地盘我做主
该用户从未签到
 |
< > </P>3 l2 E/ N( P9 E5 c, S W' l( H
< >杨超 </P>: X, }, M' T# H8 K4 ~
< > </P>2 Y- i) |" y9 M
< > 随着数据库的广泛应用,数据库编程已经成为程序设计中发展迅猛的一支。 </P>3 L0 l$ M R$ ]2 p! N+ N% S5 n6 v
< >C++ Builder在数据库开发方面具有的强大功能是无可比拟的,你甚至可以不 </P> d; P8 i" {2 V3 t
< >写一行程序就生成漂亮的数据库程序。 </P>
$ B P/ [; E7 m& I7 S( Y< > </P>6 y5 D# ~ }8 @0 I! V
< > 下面对C++Builder中的几个数据库VCL的使用技巧做一下介绍: </P>( z% h1 R* L7 c$ k
< > </P>$ ~# a! V+ D6 G
< > 一、DBGrid控件 </P>
7 i3 g+ g. ^+ e. ~6 R* T4 c/ ?" w6 b: M! ]< > </P>
- Z6 C3 l6 K/ b% y& v< > 1.设置DBGrid的字段显示宽度属性 </P>
% Z6 R, c, x: s2 b- ~) R3 q% L6 a< > </P>
1 _4 n- a* i* ~! ]8 l. t/ f* R< > 为了在DBGrid中建立较小的列,你必须建立一个显示标题,它等于或小于字 </P>
6 }( E' z/ w, f% t) W8 @$ E< >段值。例如,你希望建立一个只有三个字符宽的列,你的列标题显示必须只有三 </P>
K9 a( s! s. r5 `< >个字符或更少。 </P>0 H& o. u* S% E
< > </P>
) I R% b7 d. L< > 2.改变DBGrid的显示字段及日期显示格式 </P>' z3 \: i- P ?9 q+ c+ X5 X
< > </P>
9 U* m1 [. R6 w% w< > (1)双击DBGrid对应的Table1,进入字段编辑器。 </P>
# T0 } y4 ?8 K/ C" A. v< > </P>& e: C1 n: N6 ?
< > (2)点右键出现选单选“Add Fields…" ,出现添加字段对话框,选择要添加 </P>' D1 W# v! s" d- y# \5 i& @
< >的字段(该字段将在运行时由DBGrid显示)然后点OK按钮。 </P>
5 r& z4 {5 k) `1 v5 {< > </P>
6 e: Y+ j, Q4 ^8 m" L< > (3)假设添加了“日期”字段,点该字段,在属性表中的:DisplayLabel中 </P>, U+ \! n: a$ D7 [7 T; p5 C0 A
< >填入你希望DBGrid显示的字段名。如果原来字段名是英文的,这里用中文名后 </P>6 m3 s4 w1 S8 h" w+ Y& x. Q
< >DBGrid将显示中文名。在DisplayFormat中填入:yyyy-mm-dd,以后日期将按 </P>0 V4 S; Y0 }: P8 t6 a
< >1999-05-28格式显示。 </P>' G1 [- c7 {# f' E' E
< > </P>- ]' |3 Q' z0 X
< > 二、Tquery控件 </P>2 U2 h7 v: b+ d* x
<P> </P>
( p( o5 I( C1 w0 ~) X& ^2 k<P> Tquery 控件是数据库编程中非常重要的一个控件,它负责通过BDE与数据库 </P>3 O8 _4 r! o: b) P6 l9 D. j9 X& t
<P>建立联系,通过SQL语句方便的建立查询。Query必须建立相应的SQL才能生效。 </P>1 [6 T; W/ j, \
<P> </P># R% g4 r4 d+ R: W6 k
<P> </P>7 x$ E/ }8 h: {* F! d. u
<P> Tquery的参数设置如下: </P>
4 [% I _- k9 D8 c; q$ {<P> </P>6 v; C" C0 H0 m R3 R# E" M, ]
<P> (1)在SQL属性中:Select * from 表名 where 字段名=:变量名 </P>: ]; a% W1 C2 c4 |( x) h7 v1 n
<P> </P>
: R0 k4 `' f# {" p% S @<P> 跟在“ : "后面的是变量。这样写后,在参数属性中就可以修改该变量的数 </P>% @! Y% M' I, X' x
<P>据类型等。 </P>9 B9 @: I% F7 w- h' c
<P> </P>
( b) `- c0 }8 x6 V0 q3 ~9 z<P> (2)对变量的赋值: </P>' r7 X$ o4 q# E3 s1 o
<P> </P>+ l/ @# o4 D2 ~7 }% w
<P> Query1-〉Active=false; </P>/ k" o f* s+ Q M
<P> </P>* n3 d& P+ p6 B
<P> Query1-〉Params-〉Items[0]-〉AsString=Edit1-〉Text; </P>. F6 U9 C0 ]8 \ }
<P> </P>
7 l% s: M# {6 L4 b X<P> Query1-〉Active=true;//查找符合变量的记录 </P>- r( n' T9 a2 l( G* a3 ?
<P> </P>
1 _4 i; e) h3 ]1 m, l<P> (3)用DBGrid显示结果 </P>8 s: |$ x6 X+ ?. P7 Z) A
<P> </P>8 y- P+ r9 E( _/ ^* y3 m7 A7 i
<P> DBGrid的DataSource与DataSource1连接,而DataSource1的DataSet与 </P>
9 |) c5 B: i/ [<P>Tquery1 连接。 </P>/ ?( Q8 v# J4 E* p R! Z/ M; W
<P> </P>
# l+ x4 `2 j8 O3 O" o# J+ @# A# h6 p<P> 三、应用示例 </P>1 P% h8 Q* o4 Y5 k9 Q; _9 S' c, e
<P> </P>
2 `1 g Q Y/ c<P> 通过Query控件嵌入SQL语句建立的查询比Table更简单、更高效。 </P>* h$ m; S9 a1 J
<P> </P>" k6 r" c% V+ x3 s7 Z
<P> 用一个简单的代码来说明如何建立查询程序: </P># `6 Y* p: _ n% e! w+ }9 e
<P> </P>% A6 {3 w( S! B# V
<P> 例如,要建立一个检索表1中书名为book1的程序则在表单上放置DBGrid, </P>
5 z, c2 H2 d v& X! P( r+ N<P>DataSource,Query三个控件加入以下代码: </P>
% k' F$ D8 `8 [2 x5 o8 A<P> </P>
' L3 Z: p/ U$ Z<P> DBGrid1-〉DataSource=DataSource1; </P>
4 D. W b; c1 C* S<P> </P>
+ L' D; P" W+ w: s; S<P> DataSource1-〉DataSet=Tqery1; </P>
2 J$ _2 X7 u6 p1 L8 o0 a<P> </P>
7 t9 P1 W! J1 r2 @8 T" O: o+ L<P> Query1-〉Close(); </P>
* O. E/ ^$ ~7 D V4 V" r<P> </P>
( N" h" T$ U9 ?9 y2 d; G<P> Query1-〉SQL-〉Clear(); </P>
9 N4 V" O4 ~1 g/ \: W. p<P> </P>
* ?6 q. [: Z, x; ]. x: s" I, C<P> Query1-〉SQL-〉Add(″Select * From 表 Where (书名=′book1′ ″ </P>
2 o$ h O0 x6 d9 d$ x" F6 p<P>); </P>
, q) D" j- _, U" p<P> </P>
5 {1 ?" q9 F9 l% @7 }3 j<P> Query1-〉ExecSQL(); </P>8 I8 Q# T+ B9 W1 G+ L
<P> </P>) d7 \0 W. _5 f0 ^, L. `
<P> Query-〉Active=true; </P>
U6 e& B5 A# C8 m q<P> </P>
8 K9 G* I& I+ M: Q* g<P> 你就可以在生成的表格中看到所有名称为book1的记录。 </P> |
zan
|