QQ登录

只需要一步,快速开始

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

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

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

823

主题

3

听众

4048

积分

我的地盘我做主

该用户从未签到

发帖功臣 元老勋章

跳转到指定楼层
1#
发表于 2005-1-26 12:36 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
<>  </P>4 T. ~" o% p9 j
<>杨超 </P>
" G  y- z4 r, K0 u<>  </P>( N$ ^* @: a9 y, h, \# K0 R; C
<>  随着数据库的广泛应用,数据库编程已经成为程序设计中发展迅猛的一支。 </P>
5 {: W. Y# Q, y( M' x7 V; g2 n" _<>C++ Builder在数据库开发方面具有的强大功能是无可比拟的,你甚至可以不 </P>
2 f% E0 q9 {6 Y4 b2 c2 N3 H9 M<>写一行程序就生成漂亮的数据库程序。 </P>$ N5 a/ q8 p) U, I4 u3 c  {! e
<>  </P># `3 J+ U6 b6 N* u
<>  下面对C++Builder中的几个数据库VCL的使用技巧做一下介绍: </P>7 N4 k: {1 C  W' t
<>  </P>% U) a4 [' g" F8 e  a( K- z
<>  一、DBGrid控件 </P>. T7 n6 p# O5 a# i
<>  </P>3 L- {7 _5 t+ d5 \3 ?; L+ U$ ]
<>  1.设置DBGrid的字段显示宽度属性 </P>8 e4 [+ W, M  Y- o
<>  </P>
$ o2 Q* W8 |/ r2 x2 B, I3 H<>  为了在DBGrid中建立较小的列,你必须建立一个显示标题,它等于或小于字 </P>
3 s  z$ Z: M% t3 X<>段值。例如,你希望建立一个只有三个字符宽的列,你的列标题显示必须只有三 </P>, Q1 j- u9 D7 h- F* {  H  a
<>个字符或更少。 </P>1 f8 b6 |( n) \  X3 U$ n' L
<>  </P>
) n. L3 |& B; E, j( N<>  2.改变DBGrid的显示字段及日期显示格式 </P>; u: i2 j$ L; z
<>  </P>
, N' F5 @) z8 x0 v7 D" t<>  (1)双击DBGrid对应的Table1,进入字段编辑器。 </P>; ?3 @& u( N( v( @2 z4 G
<>  </P>
) l' w; m. W8 ]. v7 Z<>  (2)点右键出现选单选“Add Fields…" ,出现添加字段对话框,选择要添加 </P>
3 E+ t4 E; q* ~, |# Q& ]<>的字段(该字段将在运行时由DBGrid显示)然后点OK按钮。 </P>" D. V8 @+ x6 x9 I& K5 t6 b
<>  </P>
. t$ M4 V$ [3 w* p<>  (3)假设添加了“日期”字段,点该字段,在属性表中的:DisplayLabel中 </P>% O4 F# S7 ]# p& }# g
<>填入你希望DBGrid显示的字段名。如果原来字段名是英文的,这里用中文名后 </P>5 V. d3 I  S# D# \% W
<>DBGrid将显示中文名。在DisplayFormat中填入:yyyy-mm-dd,以后日期将按 </P>
) Z' f4 u4 o- a; r6 t" Y<>1999-05-28格式显示。 </P>: O8 c3 N3 c' z" o- D5 b' R# ?4 @& g) `
<>  </P>: ]- L7 x3 T  T; k! N) M" O
<>  二、Tquery控件 </P>% r3 |) x" A- P( ]
<P>  </P>+ c3 v  f7 \& z  r" M4 o6 j
<P>  Tquery 控件是数据库编程中非常重要的一个控件,它负责通过BDE与数据库 </P>8 \" \6 o; c2 y* P
<P>建立联系,通过SQL语句方便的建立查询。Query必须建立相应的SQL才能生效。 </P>4 G' S  x% r% B* H' p1 @* W
<P>  </P>. Q  G6 ^+ T/ p$ s
<P>  </P>  s) j7 H( M" Y1 z$ Q4 J
<P>  Tquery的参数设置如下: </P>" N( `6 U0 a2 _0 n7 }5 p5 \
<P>  </P>$ A6 G3 c0 X  ?! G1 J
<P>  (1)在SQL属性中:Select * from 表名 where 字段名=:变量名 </P>
$ W9 N" W% c/ P. V1 p<P>  </P>2 x* O* ?% A% O6 t7 F
<P>  跟在“ : "后面的是变量。这样写后,在参数属性中就可以修改该变量的数 </P>+ |6 `& V# ^; l  g7 T' F
<P>据类型等。 </P>
+ G1 m" ~" h' B$ l<P>  </P>
  E+ U; |( `" D- W. ^<P>  (2)对变量的赋值: </P>$ T8 i% {+ h4 t* W# F# X" H) G
<P>  </P>
- u% a9 Y! d) }, Q3 h<P>   Query1-〉Active=false; </P>
: n6 F. @# `% u<P>  </P>
6 ^* q8 C2 v" Y* s% t<P>   Query1-〉Params-〉Items[0]-〉AsString=Edit1-〉Text; </P>
$ g6 f. J! S4 t' P/ {# I, h" K<P>  </P>
" y9 S8 \* s! T: H, y<P>   Query1-〉Active=true;//查找符合变量的记录 </P>
0 n9 h/ j2 S5 ^<P>  </P>0 c  r$ y1 T( v! @& [) _
<P>  (3)用DBGrid显示结果 </P>, N+ C7 K: L' t9 u8 f/ J: ?
<P>  </P>4 P" j1 M$ ?& P, O
<P>  DBGrid的DataSource与DataSource1连接,而DataSource1的DataSet与 </P>1 L1 W+ m; b* l7 z3 o
<P>Tquery1 连接。 </P>
9 d( _/ N5 u- {2 f: R7 Z4 V$ m! b<P>  </P>
" {2 u8 H& ]4 ]2 P0 W<P>  三、应用示例 </P>- o' d+ D2 H" a/ `+ Z) `0 R
<P>  </P>0 n2 }9 Y" N% |* j! I: t
<P>  通过Query控件嵌入SQL语句建立的查询比Table更简单、更高效。 </P>  V1 B; O4 D7 H& }" S
<P>  </P>
6 d  Y9 K. r$ I/ N<P>  用一个简单的代码来说明如何建立查询程序: </P>/ R9 H3 z5 H& f0 b
<P>  </P>
, I% y( Y2 Z0 ^, N, e<P>  例如,要建立一个检索表1中书名为book1的程序则在表单上放置DBGrid, </P>
% {8 N  J) x& I! G<P>DataSource,Query三个控件加入以下代码: </P>
% @. P- r. ~/ K7 s; ^<P>  </P>' X5 ~8 i: ^! Q, o
<P>  DBGrid1-〉DataSource=DataSource1; </P>
4 {; T+ R; F/ \- T4 p* N- G<P>  </P>
( w1 v' c1 e8 o& `5 u2 h* O6 L<P>  DataSource1-〉DataSet=Tqery1; </P>
+ v/ w/ X, l3 A# ?9 w! O! {1 a8 a0 M<P>  </P>% }& C! @% p9 J- k  H4 j) f6 z- e
<P>  Query1-〉Close(); </P>& g2 w  S+ P: q2 z) A5 K
<P>  </P>
$ W/ A9 f, V# e. _( v$ d/ Y* d; I<P>  Query1-〉SQL-〉Clear(); </P>
- i$ p' A2 ]  L5 Z, }. v<P>  </P>
5 Z& G; [8 y$ n8 |9 ?' B7 r<P>  Query1-〉SQL-〉Add(″Select * From 表 Where (书名=′book1′ ″ </P>
* W& q6 Z9 t' Y! \) h: g<P>); </P># k. x# O+ f, O
<P>  </P>& @' ?$ F% {7 S7 N
<P>  Query1-〉ExecSQL(); </P>
+ f  J5 l7 ]) H7 k6 `8 }<P>  </P>
$ V1 a, b  U" s* P( ?$ A<P>  Query-〉Active=true; </P>
' b, g5 v" }- \<P>  </P>% C  ~# l$ v  L
<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-8-9 00:34 , Processed in 0.449666 second(s), 52 queries .

回顶部