QQ登录

只需要一步,快速开始

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

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

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

823

主题

3

听众

4048

积分

我的地盘我做主

该用户从未签到

发帖功臣 元老勋章

跳转到指定楼层
1#
发表于 2005-1-26 12:36 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
<>  </P>$ N" W# {, B3 q6 P' u% R+ G
<>杨超 </P>/ d8 W/ x# O0 y) L  q+ Y
<>  </P>( f) N- p2 T4 f4 l
<>  随着数据库的广泛应用,数据库编程已经成为程序设计中发展迅猛的一支。 </P>' F1 x! p4 t6 V6 C- S6 S
<>C++ Builder在数据库开发方面具有的强大功能是无可比拟的,你甚至可以不 </P>, h8 D3 k9 u, M1 h# Z
<>写一行程序就生成漂亮的数据库程序。 </P>( \' x. I: }) i/ _8 ~
<>  </P>
" X8 ^9 X  V7 \2 d9 m1 E* Z<>  下面对C++Builder中的几个数据库VCL的使用技巧做一下介绍: </P>* c! ~. L7 x: @' b( I
<>  </P>, j3 C8 q1 K5 Z" l7 \/ f
<>  一、DBGrid控件 </P>) Z) N$ j5 Z/ k) w- x
<>  </P>
: H% f% ~# _% K& ?3 F" F<>  1.设置DBGrid的字段显示宽度属性 </P>8 K. A4 G$ T. _/ C" |9 z6 i% I
<>  </P>
5 _6 {# L+ a( ~: p4 I<>  为了在DBGrid中建立较小的列,你必须建立一个显示标题,它等于或小于字 </P>9 s4 |4 K$ K* H3 L1 k0 y! ~7 |
<>段值。例如,你希望建立一个只有三个字符宽的列,你的列标题显示必须只有三 </P>: N1 h& X4 Q; Y9 J7 ]. A' V+ C2 |. j
<>个字符或更少。 </P>
6 D! J! @: u; w' t<>  </P>
( b& G3 g' t( h. b& g" Z<>  2.改变DBGrid的显示字段及日期显示格式 </P>
  n1 [8 z; q3 G- z<>  </P>
* _2 H8 T, U6 {9 Q<>  (1)双击DBGrid对应的Table1,进入字段编辑器。 </P>
6 r0 b5 I2 I( }: l/ ~<>  </P>& m2 J2 U( K4 _! D
<>  (2)点右键出现选单选“Add Fields…" ,出现添加字段对话框,选择要添加 </P>
8 [( v9 t; `( I* A& [, V<>的字段(该字段将在运行时由DBGrid显示)然后点OK按钮。 </P>$ \( ]4 |4 v' m% x% e8 F' i6 {5 g
<>  </P>' {- z% y. H3 e; [- p4 ^% ]6 ]
<>  (3)假设添加了“日期”字段,点该字段,在属性表中的:DisplayLabel中 </P>
' p2 d3 Z8 u! G* i7 o- N<>填入你希望DBGrid显示的字段名。如果原来字段名是英文的,这里用中文名后 </P>
4 }+ V. n6 p! N& v+ U9 h' ^<>DBGrid将显示中文名。在DisplayFormat中填入:yyyy-mm-dd,以后日期将按 </P>9 `3 O4 D% Z! j9 X$ b6 ~% E
<>1999-05-28格式显示。 </P>! X5 R8 I* R, l& ]6 p7 o0 e
<>  </P>
2 w+ }1 B  z7 X<>  二、Tquery控件 </P>( D; [& P0 d: q8 y. e3 F
<P>  </P>
0 H0 `# [9 G8 `# m# a! S% z2 F<P>  Tquery 控件是数据库编程中非常重要的一个控件,它负责通过BDE与数据库 </P>! b! `6 f. X" C/ Z; P+ u
<P>建立联系,通过SQL语句方便的建立查询。Query必须建立相应的SQL才能生效。 </P>& n; w3 t) ?7 u/ d$ U( ~0 r4 [) {
<P>  </P>( z) _! s4 K, a
<P>  </P>- r" o7 {- z3 Y, q
<P>  Tquery的参数设置如下: </P>
3 T) s# p0 w5 j! Z' A8 t0 N" t) J5 ?6 k$ N<P>  </P>
3 W5 W- S) {' E<P>  (1)在SQL属性中:Select * from 表名 where 字段名=:变量名 </P>% H) d# o/ [2 d# T, Q0 `9 l
<P>  </P>
: _! S- q) R' p; {<P>  跟在“ : "后面的是变量。这样写后,在参数属性中就可以修改该变量的数 </P># [9 _7 p. f% Q; U1 a
<P>据类型等。 </P>
0 H2 i* _& P" R- h# P<P>  </P>
2 P3 I" r  f, [" S! S<P>  (2)对变量的赋值: </P>
% U5 D4 p7 g& ]$ n8 {2 x  \0 g% N5 a<P>  </P>& Z! [. W( ~" h2 \. ^
<P>   Query1-〉Active=false; </P>1 j, w1 t8 I7 M- U7 |5 [( I
<P>  </P>
' B2 p6 k4 x8 U8 j/ c2 u  @3 q<P>   Query1-〉Params-〉Items[0]-〉AsString=Edit1-〉Text; </P>
0 i( x; a5 ^! F( o4 ]8 L7 Z8 `<P>  </P>" ~  n/ g8 K- Z! V8 R. }
<P>   Query1-〉Active=true;//查找符合变量的记录 </P>- g; x  N$ }; a3 y& j! f
<P>  </P>6 e0 e) @# k7 ?: e# J
<P>  (3)用DBGrid显示结果 </P>
( p( V; Z3 o4 j4 c/ P<P>  </P>
( _8 G7 l% i- x: F<P>  DBGrid的DataSource与DataSource1连接,而DataSource1的DataSet与 </P>5 O9 ]0 j; J: w6 o; }
<P>Tquery1 连接。 </P># L+ r6 s. h- g' H5 x4 L7 l
<P>  </P>
! L! N* d6 h5 _& ?4 g$ I! S9 k<P>  三、应用示例 </P>  m3 I8 X3 ]; I
<P>  </P>
: f9 F, w. u/ s% Y1 O0 ~6 O/ P/ q<P>  通过Query控件嵌入SQL语句建立的查询比Table更简单、更高效。 </P>
% A. U1 P$ J( Y$ W% s5 {<P>  </P>
# G! }* D& ~% V  n" j<P>  用一个简单的代码来说明如何建立查询程序: </P>. }2 F5 J1 ~5 _' e4 g( B4 m7 n
<P>  </P>5 T+ [5 S) g4 ~4 j! `5 \
<P>  例如,要建立一个检索表1中书名为book1的程序则在表单上放置DBGrid, </P>
( r! V! F1 I1 f, w8 S% i<P>DataSource,Query三个控件加入以下代码: </P>  D  {" ~; f# D$ T
<P>  </P>& z; {6 }2 ~$ O$ Q) W6 T8 k5 x7 r
<P>  DBGrid1-〉DataSource=DataSource1; </P>% [* k; s0 Q% t6 ~
<P>  </P>" ~0 V8 V/ z& @6 K: S4 C
<P>  DataSource1-〉DataSet=Tqery1; </P>4 V  U5 h! s& M9 \' q
<P>  </P>
1 p  U# }) Y. o3 N+ ]<P>  Query1-〉Close(); </P>. S! G$ e4 m0 c% t# h
<P>  </P>' H. h5 K0 e" ^  o
<P>  Query1-〉SQL-〉Clear(); </P>
/ C& E5 A' `9 L: N0 l<P>  </P>
* x7 _& s8 w! G<P>  Query1-〉SQL-〉Add(″Select * From 表 Where (书名=′book1′ ″ </P>
0 L3 {9 d3 O5 K& s; h; d<P>); </P>& o2 c% m* b, }" U* k
<P>  </P>8 s8 N) _8 M2 q% ~! o. R  l2 C+ z
<P>  Query1-〉ExecSQL(); </P>: ^4 E. g# g1 i: q- o% }
<P>  </P>
! [2 i- K$ H/ v  x# b1 D<P>  Query-〉Active=true; </P>
# G% c; k& P% B6 a! o5 N# ~<P>  </P>
6 |! \& A: x0 P5 k0 `<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-4-19 10:25 , Processed in 0.519466 second(s), 52 queries .

回顶部