QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 3527|回复: 0
打印 上一主题 下一主题

用C++Builder 建立数据库VCL使用经验

[复制链接]
字体大小: 正常 放大
韩冰        

823

主题

3

听众

4048

积分

我的地盘我做主

该用户从未签到

发帖功臣 元老勋章

跳转到指定楼层
1#
发表于 2005-1-26 12:36 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
<>  </P>
6 O1 t9 K4 l7 {2 U8 [( B$ p" u<>杨超 </P>
; p. x  v+ k3 J, T9 a4 S<>  </P>6 x5 m. Q7 Z, X  e6 Z+ }
<>  随着数据库的广泛应用,数据库编程已经成为程序设计中发展迅猛的一支。 </P>" x2 V* w+ y+ F+ g8 V: l( x" I! \
<>C++ Builder在数据库开发方面具有的强大功能是无可比拟的,你甚至可以不 </P>& j1 q% u  z- `/ f4 _
<>写一行程序就生成漂亮的数据库程序。 </P>' [( n, \5 c# L; O; K/ L1 D: A
<>  </P>. r3 ?! |1 ~$ P+ h- P  A
<>  下面对C++Builder中的几个数据库VCL的使用技巧做一下介绍: </P>9 f+ v& h4 Z% A+ y  K
<>  </P>
4 Z3 P5 R. Y# z* g6 v+ o8 x<>  一、DBGrid控件 </P>
2 W, s, F5 d! y3 U/ J; u9 c<>  </P>0 {0 O3 h3 B$ e' [* V) r( y
<>  1.设置DBGrid的字段显示宽度属性 </P>
% r7 v, Y3 N( [! `& X<>  </P>- W5 C- ^6 Y4 l6 i- d
<>  为了在DBGrid中建立较小的列,你必须建立一个显示标题,它等于或小于字 </P>9 C% E# x0 Q3 n  N
<>段值。例如,你希望建立一个只有三个字符宽的列,你的列标题显示必须只有三 </P>7 s! E% N" X. {8 E) ]6 R9 k% c/ [
<>个字符或更少。 </P>6 r% |. M4 r* |# C' P
<>  </P>2 M( z4 E3 s4 i4 S: S4 N) }
<>  2.改变DBGrid的显示字段及日期显示格式 </P># `# ~2 e# t9 j' Y8 p; ~
<>  </P>0 m% }% W9 G6 |
<>  (1)双击DBGrid对应的Table1,进入字段编辑器。 </P>8 L( G$ T, k$ D6 Z% n1 \3 u
<>  </P>) v0 `# I2 d- r0 b+ N# l9 a3 f/ \
<>  (2)点右键出现选单选“Add Fields…" ,出现添加字段对话框,选择要添加 </P>7 E6 @" H9 ?% B" P- l: o! ?
<>的字段(该字段将在运行时由DBGrid显示)然后点OK按钮。 </P>
- _" p+ o# k9 q9 |# \<>  </P>
+ S! v, N8 a. B& {<>  (3)假设添加了“日期”字段,点该字段,在属性表中的:DisplayLabel中 </P>% v/ [/ `# D+ ]" U/ |; b: D/ @$ U# v
<>填入你希望DBGrid显示的字段名。如果原来字段名是英文的,这里用中文名后 </P>/ v% ^# y: ?6 k0 e2 L4 H# `- ]) U
<>DBGrid将显示中文名。在DisplayFormat中填入:yyyy-mm-dd,以后日期将按 </P>9 h/ p" ]% j, k: _
<>1999-05-28格式显示。 </P>; I# V- s+ b0 |# j& l! C+ {
<>  </P>
& F8 T( v) f6 _; i<>  二、Tquery控件 </P>
- w1 F3 l3 ~: g3 e& B7 v<P>  </P>% e% |* m, v2 E4 c. I
<P>  Tquery 控件是数据库编程中非常重要的一个控件,它负责通过BDE与数据库 </P>
4 ]6 b: L0 s& r, ~: X; G<P>建立联系,通过SQL语句方便的建立查询。Query必须建立相应的SQL才能生效。 </P>2 g6 c& K; X0 V, n! R6 @
<P>  </P>
7 Y2 c) i/ R+ Q6 S# Q7 E: l<P>  </P>& J" V: B  M9 S
<P>  Tquery的参数设置如下: </P>. }8 Z; b. L. V
<P>  </P>
/ ]' v% ?0 ^/ O0 ?2 h<P>  (1)在SQL属性中:Select * from 表名 where 字段名=:变量名 </P>' s! }9 ~' F. P# i8 {
<P>  </P>
' c5 Y/ ^$ b9 O4 H) S<P>  跟在“ : "后面的是变量。这样写后,在参数属性中就可以修改该变量的数 </P>! ~% {7 H+ u5 E7 ?* O% O
<P>据类型等。 </P>
1 n0 `# D, R4 [' U, r% \! M<P>  </P>0 }$ L$ m1 F. T5 F) r* c
<P>  (2)对变量的赋值: </P>
# x0 o4 h: r+ \9 e9 n<P>  </P>1 c) D& O. }6 ^8 K1 F; E
<P>   Query1-〉Active=false; </P>
& a+ ]  b& M5 S8 H. o3 W<P>  </P>  Y: ~8 O6 T6 R2 g
<P>   Query1-〉Params-〉Items[0]-〉AsString=Edit1-〉Text; </P>
2 _/ o' w  c, ?& u<P>  </P>1 B2 ?* M+ u. k. N+ c
<P>   Query1-〉Active=true;//查找符合变量的记录 </P>
& }9 [9 D6 X. @7 T' \3 [<P>  </P>5 m7 _8 I9 ?6 F1 i4 o' ~* a
<P>  (3)用DBGrid显示结果 </P>
3 ]; n' l5 [8 G/ G$ q. `! N<P>  </P>
3 s( W. ]/ A" N* c6 [  j<P>  DBGrid的DataSource与DataSource1连接,而DataSource1的DataSet与 </P>
$ o. t, w  ?% F0 g- U$ i( k<P>Tquery1 连接。 </P>& ~6 j) e2 y/ |$ I$ _
<P>  </P>, C" Q& \- i5 J* }" R
<P>  三、应用示例 </P>8 h2 Z4 ^/ w4 M2 h
<P>  </P>
0 d+ V! i' ?, D* s- ^<P>  通过Query控件嵌入SQL语句建立的查询比Table更简单、更高效。 </P>
  @: t8 H, S" Y<P>  </P>
, b) D& X" h4 ]. ~$ }<P>  用一个简单的代码来说明如何建立查询程序: </P>. m' q! [9 M# `0 |" T; O9 |* s
<P>  </P>
4 Z4 W- [) h- `& h. S<P>  例如,要建立一个检索表1中书名为book1的程序则在表单上放置DBGrid, </P>
& b) [& m0 l; e7 L<P>DataSource,Query三个控件加入以下代码: </P>
! r5 l, X3 z9 z/ S$ H<P>  </P>9 B% l* V7 G8 v: E8 A  u6 O) c0 }
<P>  DBGrid1-〉DataSource=DataSource1; </P>
6 I1 e* ]& i: C3 C* h<P>  </P>
/ W' G4 o3 H4 J5 m2 U" x3 @8 R<P>  DataSource1-〉DataSet=Tqery1; </P>
! C4 o+ U! r: {0 n/ @8 H<P>  </P>
+ E0 A  g  ^" `6 y+ g<P>  Query1-〉Close(); </P>
1 F% k% u' ]1 K- N* d5 O% ?/ X) D<P>  </P>
+ j+ \6 _: q+ ]7 k8 j6 ^<P>  Query1-〉SQL-〉Clear(); </P>
5 |5 [  n  e( f! Y<P>  </P>
8 p8 D" J6 K. j1 Z7 f' E/ c<P>  Query1-〉SQL-〉Add(″Select * From 表 Where (书名=′book1′ ″ </P>/ V/ c/ B1 N9 [7 Z2 k
<P>); </P>* I% s* C" C0 H' B
<P>  </P>
0 [' c! u8 F. ]2 a& g. O1 [<P>  Query1-〉ExecSQL(); </P>5 _- H) {, A9 z7 O
<P>  </P># E% }; y! j  j+ y- ]( b
<P>  Query-〉Active=true; </P>
$ b+ L3 X4 O0 m) z( D- B: O4 n<P>  </P>
/ ~- j. F$ R6 j  t<P>  你就可以在生成的表格中看到所有名称为book1的记录。 </P>
zan
转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
您需要登录后才可以回帖 登录 | 注册地址

qq
收缩
  • 电话咨询

  • 04714969085
fastpost

关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

手机版|Archiver| |繁體中文 手机客户端  

蒙公网安备 15010502000194号

Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

GMT+8, 2026-7-17 23:06 , Processed in 0.306964 second(s), 52 queries .

回顶部