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

我的地盘我做主
该用户从未签到
 |
< > </P>6 n8 g, o2 G& E9 x! b* s( L( {
< >杨超 </P>
+ v! X0 u a9 m. D* t- i< > </P>
2 g# F- T/ u( @' q! Y< > 随着数据库的广泛应用,数据库编程已经成为程序设计中发展迅猛的一支。 </P>1 J! {+ G# N6 |- B K6 v! Y. o
< >C++ Builder在数据库开发方面具有的强大功能是无可比拟的,你甚至可以不 </P>
4 _; ?) D7 p: z! w< >写一行程序就生成漂亮的数据库程序。 </P>
& i! [: k( x1 u! S+ T* I< > </P>
: I5 Z' n/ j# N9 V! a< > 下面对C++Builder中的几个数据库VCL的使用技巧做一下介绍: </P>
+ v8 i) _/ C& I< > </P>
2 _9 \' [# R/ |4 U- g< > 一、DBGrid控件 </P>
2 c& l4 y1 f4 [" u+ ^! X5 M9 ]0 X< > </P>1 _: x6 C- ^3 ^ Y, d! i
< > 1.设置DBGrid的字段显示宽度属性 </P>
& r/ ?% t* l1 f< > </P>/ k* F! l$ N. }: ]% Y
< > 为了在DBGrid中建立较小的列,你必须建立一个显示标题,它等于或小于字 </P>, @2 i0 p& @' P3 b
< >段值。例如,你希望建立一个只有三个字符宽的列,你的列标题显示必须只有三 </P>9 r7 G( [! X# A9 @% G, O7 P
< >个字符或更少。 </P>
6 B# e0 |+ y5 E) f* ]& R, ~< > </P>
9 e( U/ J+ E9 Q2 A- ], X) s; g< > 2.改变DBGrid的显示字段及日期显示格式 </P>+ t9 v; f2 e0 |
< > </P>
2 r$ y- o2 g& f k. i$ H< > (1)双击DBGrid对应的Table1,进入字段编辑器。 </P>' M( {% c6 g+ M6 U- T3 g9 m
< > </P>
0 K B1 i" a& v2 D5 `% C, G# H< > (2)点右键出现选单选“Add Fields…" ,出现添加字段对话框,选择要添加 </P>4 _* a7 c! \1 e
< >的字段(该字段将在运行时由DBGrid显示)然后点OK按钮。 </P>7 U( G7 `" s) E, ]6 b9 h
< > </P>
7 a6 B; z% K) g/ f* W( u" S; L: c< > (3)假设添加了“日期”字段,点该字段,在属性表中的:DisplayLabel中 </P>. t) a% W$ S; x# q3 _/ i1 D
< >填入你希望DBGrid显示的字段名。如果原来字段名是英文的,这里用中文名后 </P>
9 j7 X) ~% O y s+ E* _; t< >DBGrid将显示中文名。在DisplayFormat中填入:yyyy-mm-dd,以后日期将按 </P>. b8 e8 v/ P9 Z' i _
< >1999-05-28格式显示。 </P>
! f! L! U- o! i/ U4 Y) K5 s. n< > </P>
5 K# o1 ]- B8 f" `/ z6 r% R< > 二、Tquery控件 </P>
, n. B# o8 u% R" Z/ |& z<P> </P>
3 x4 c" B/ s/ Z" i/ y* `<P> Tquery 控件是数据库编程中非常重要的一个控件,它负责通过BDE与数据库 </P>
! y7 b3 T/ ^( h: n. p4 a<P>建立联系,通过SQL语句方便的建立查询。Query必须建立相应的SQL才能生效。 </P>
# ?& Q9 U. H$ A# m! H% V! f& h<P> </P>
' Y$ e9 s8 |4 x( E0 _<P> </P>
9 e9 B' t0 z/ M8 `3 p M- K0 P<P> Tquery的参数设置如下: </P>
: F, Q; \. a- W& F- O p. c<P> </P>$ C. {( ?- @5 c, b5 |4 b4 p
<P> (1)在SQL属性中:Select * from 表名 where 字段名=:变量名 </P>/ Y+ |* \ P1 Y5 l0 R7 \
<P> </P>
- c( \; f* F+ V b4 C( G v4 T<P> 跟在“ : "后面的是变量。这样写后,在参数属性中就可以修改该变量的数 </P>& e' [, E3 T$ {4 h3 i- z% l8 }
<P>据类型等。 </P>
f* E, _" L$ U<P> </P>
7 @; q3 B" v* R, u) Y+ W<P> (2)对变量的赋值: </P>
% d D* ]& N; Z" `& x3 n3 t7 h6 _<P> </P>% h1 f" d/ S7 t& W5 I; d: C) Z
<P> Query1-〉Active=false; </P>" |/ y" D. v. w; W' g
<P> </P>7 H6 k' J6 D6 k( m# Y- v
<P> Query1-〉Params-〉Items[0]-〉AsString=Edit1-〉Text; </P>
( e3 A1 y7 Y, |$ w' U<P> </P>
- O5 Z& U1 d7 {9 r<P> Query1-〉Active=true;//查找符合变量的记录 </P>3 d& X- H+ z" i& H& ?, ?
<P> </P>
! t9 f, n/ d( L4 F! ]3 A<P> (3)用DBGrid显示结果 </P>/ A7 X" }( @* }, H/ U& b& u2 Z! ^/ l
<P> </P>0 R2 R# Z4 P% I; P
<P> DBGrid的DataSource与DataSource1连接,而DataSource1的DataSet与 </P>
, [6 P5 y' K% s- \% F<P>Tquery1 连接。 </P>
: v, d* ~- A" u- L( K$ I+ l<P> </P>
2 q! |: X3 ?) m6 W<P> 三、应用示例 </P>+ b: m* W+ h6 J" j9 A: C
<P> </P>8 g! e6 C! d- d" {
<P> 通过Query控件嵌入SQL语句建立的查询比Table更简单、更高效。 </P>
' t5 ~: Q' D' a$ E! t' r% ]<P> </P>
8 b* y) K" n0 Q$ `$ H1 n% X4 s<P> 用一个简单的代码来说明如何建立查询程序: </P>: U* \" h6 D. ^$ z2 p6 l
<P> </P>. T+ @6 A, d. X b9 Q
<P> 例如,要建立一个检索表1中书名为book1的程序则在表单上放置DBGrid, </P>9 j- ]8 y2 V" x
<P>DataSource,Query三个控件加入以下代码: </P># y# V; C5 F4 C+ _. }
<P> </P>' W6 F) v- m, B# ?' l l
<P> DBGrid1-〉DataSource=DataSource1; </P>
( z/ `! G+ W0 t+ G4 `1 ?: D<P> </P>% ?: c! h0 q9 c$ E4 Y: ?
<P> DataSource1-〉DataSet=Tqery1; </P>0 M6 W2 T# O2 Y2 x0 k, A6 z
<P> </P>
1 }1 j8 {2 j$ D: |$ A<P> Query1-〉Close(); </P> \0 K; R3 O& n: v
<P> </P>& N" N3 I- z7 G
<P> Query1-〉SQL-〉Clear(); </P>
3 {5 [, @- j; |6 ~( }* l8 C7 k# q<P> </P>' G6 u$ Q( S9 a( }6 ~- P( z
<P> Query1-〉SQL-〉Add(″Select * From 表 Where (书名=′book1′ ″ </P>
6 q' d' \9 h1 X6 Q; g<P>); </P>! {$ T% g2 M# Z& f& Q
<P> </P>: C" c/ `- i5 m4 A
<P> Query1-〉ExecSQL(); </P>
( ?( p% e$ m) ^* V<P> </P>, S' q; u; }/ I7 a" e
<P> Query-〉Active=true; </P># o. y3 l1 ~3 N* K& @
<P> </P>8 B7 Q; b: i' b% F9 E5 T
<P> 你就可以在生成的表格中看到所有名称为book1的记录。 </P> |
zan
|