QQ登录

只需要一步,快速开始

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

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

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

823

主题

3

听众

4048

积分

我的地盘我做主

该用户从未签到

发帖功臣 元老勋章

跳转到指定楼层
1#
发表于 2005-1-26 12:36 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
<>  </P>
/ K- P- h+ X6 F1 L% y; O) p<>杨超 </P>) k* B# z4 o% }7 D) I& |
<>  </P>+ g+ P" T3 c) w& Q2 w8 w. r
<>  随着数据库的广泛应用,数据库编程已经成为程序设计中发展迅猛的一支。 </P>5 x; X7 V$ r* `' k+ x, w5 M
<>C++ Builder在数据库开发方面具有的强大功能是无可比拟的,你甚至可以不 </P>0 P$ V/ ~6 A" O+ c7 w) ]8 @
<>写一行程序就生成漂亮的数据库程序。 </P>/ J) C# U8 A& R  z( }! ~) Z
<>  </P>0 u* V( N8 B3 v' {7 \* u
<>  下面对C++Builder中的几个数据库VCL的使用技巧做一下介绍: </P>
  K  a( C8 N3 z5 d, k( j7 _0 v6 o<>  </P>( y$ Y% n5 k$ S6 A0 [8 s9 `3 G2 N
<>  一、DBGrid控件 </P>
; y- N2 H' a& _<>  </P>
0 A4 n/ B% K! a( U4 L& M! o5 A$ D' @<>  1.设置DBGrid的字段显示宽度属性 </P>9 j0 B2 O1 B+ j9 y7 @' N
<>  </P>  Y. C) l! y* E& X' y4 t6 c; I
<>  为了在DBGrid中建立较小的列,你必须建立一个显示标题,它等于或小于字 </P>% J5 T1 P+ ]# Z4 i, N
<>段值。例如,你希望建立一个只有三个字符宽的列,你的列标题显示必须只有三 </P>
2 s- B1 t8 R6 `$ p' R, ?) o<>个字符或更少。 </P>
7 l$ R: H& A. ?7 S<>  </P>
9 s# x. H* y; _% F$ F+ Z' z<>  2.改变DBGrid的显示字段及日期显示格式 </P>% p- F! G3 `$ ]' |- W9 h) m
<>  </P>( x5 d. e" [: k# A& W9 s4 N
<>  (1)双击DBGrid对应的Table1,进入字段编辑器。 </P>
8 M  x+ u6 d3 [. v0 E& T" d<>  </P>) g5 I" d# b" f2 Z, c4 Z
<>  (2)点右键出现选单选“Add Fields…" ,出现添加字段对话框,选择要添加 </P>" v, G6 Q3 [; ]+ Y7 u) u
<>的字段(该字段将在运行时由DBGrid显示)然后点OK按钮。 </P>
( q+ p- Z( B# T: w# a<>  </P>
9 R9 d( O4 R+ {4 T. n<>  (3)假设添加了“日期”字段,点该字段,在属性表中的:DisplayLabel中 </P>
1 v' s5 J, t) P$ Z1 k2 b<>填入你希望DBGrid显示的字段名。如果原来字段名是英文的,这里用中文名后 </P>" [" s: R8 }1 C) w# I: f5 w
<>DBGrid将显示中文名。在DisplayFormat中填入:yyyy-mm-dd,以后日期将按 </P>
7 @" E0 Q3 k8 s<>1999-05-28格式显示。 </P>% E- Q: f1 F' u4 z% k
<>  </P>
) p. `- F0 J# f5 O' R, }/ D<>  二、Tquery控件 </P>: u8 p6 u6 c# @# M. c5 m- ^4 k
<P>  </P>
. R$ f# v" t" f: C7 o) Q9 ?<P>  Tquery 控件是数据库编程中非常重要的一个控件,它负责通过BDE与数据库 </P>
& M2 Q0 P* c/ X<P>建立联系,通过SQL语句方便的建立查询。Query必须建立相应的SQL才能生效。 </P>; I& X3 d% u$ A' z6 O
<P>  </P>0 K2 J/ [% D, n3 P; @% E: v
<P>  </P>
% S; q2 I- c1 O* L8 _<P>  Tquery的参数设置如下: </P>
- v! A& j, J+ |8 Q& q) a: q<P>  </P>; j6 t, R; C% @
<P>  (1)在SQL属性中:Select * from 表名 where 字段名=:变量名 </P>
( _! P  t( f( r& J% P<P>  </P>
% M, l, r# ?+ H, H7 h<P>  跟在“ : "后面的是变量。这样写后,在参数属性中就可以修改该变量的数 </P>4 M" U. w( R& q9 q4 ~: q
<P>据类型等。 </P>
  ?; Y6 M! q% C% ~5 n6 V) w<P>  </P>
2 f; x+ m. P* E7 I/ C3 h  ^<P>  (2)对变量的赋值: </P>
! z1 N& z  z  x, ~! L) u: t/ M<P>  </P>  M$ ?) G$ ?3 H' `- ]
<P>   Query1-〉Active=false; </P>
7 D$ w  n/ Q  x* U) [0 L<P>  </P>
' C; u# H6 o, V4 l. d4 r<P>   Query1-〉Params-〉Items[0]-〉AsString=Edit1-〉Text; </P>
9 f$ k$ p9 s- k4 L# ?! i7 ]. k<P>  </P>
: j5 u4 H  K: ~<P>   Query1-〉Active=true;//查找符合变量的记录 </P>
' Y, J" |3 P- R2 M5 ^<P>  </P>2 s8 I( }+ T/ U8 s% q
<P>  (3)用DBGrid显示结果 </P>
  b. m9 x5 _) B7 J9 f<P>  </P>
* O3 m8 \8 q8 S- l$ X% M<P>  DBGrid的DataSource与DataSource1连接,而DataSource1的DataSet与 </P>1 X  }; h' v7 U7 m& M+ z' ]" X
<P>Tquery1 连接。 </P>' {; X, L% m2 f, E1 E
<P>  </P>! Q9 h9 B3 H% p3 S) ?
<P>  三、应用示例 </P>
1 F" G7 u7 Q* v' ]8 ?# }<P>  </P>" c  r2 m( g: T' s" L
<P>  通过Query控件嵌入SQL语句建立的查询比Table更简单、更高效。 </P>
; V7 _) Y' U, C<P>  </P>! T; w& h- a: w* o( Q* A' }
<P>  用一个简单的代码来说明如何建立查询程序: </P>  S; h3 Z  W4 I8 e6 m
<P>  </P>
* G) p' j, A) p& u& P$ {<P>  例如,要建立一个检索表1中书名为book1的程序则在表单上放置DBGrid, </P>
3 h7 v; T: ]+ x; k8 k+ c2 Y( f<P>DataSource,Query三个控件加入以下代码: </P>0 m0 \9 ]5 _' t: Y& c* S
<P>  </P>
; O; x# ]2 f  A  G4 E( I6 a, r<P>  DBGrid1-〉DataSource=DataSource1; </P>. e4 a9 H/ o& ?4 e
<P>  </P>+ H+ q* ~4 B1 P& b7 i4 V
<P>  DataSource1-〉DataSet=Tqery1; </P>+ z* @; J  r& C3 w9 I% \. j
<P>  </P>
- s* ]& {! o! O) l% n/ y0 V; U<P>  Query1-〉Close(); </P>
# G$ O# `9 w- s<P>  </P>
0 p7 c3 {% {, M! p( A$ \3 z<P>  Query1-〉SQL-〉Clear(); </P>
5 v! u+ ~0 H1 R. o<P>  </P># L  ^" q- C$ v" @: W3 b
<P>  Query1-〉SQL-〉Add(″Select * From 表 Where (书名=′book1′ ″ </P>
- D$ Y% K3 i4 U4 |* Z: g<P>); </P>( s+ [  F- G5 d
<P>  </P>
% j5 w& y6 D" T% H* i<P>  Query1-〉ExecSQL(); </P>
9 x5 t2 Q, J* z7 Y, H0 s<P>  </P>7 V% p$ W7 I: _4 Y5 ]
<P>  Query-〉Active=true; </P>% m" w. Y  Q+ K0 h& Z
<P>  </P>
# \- J) J0 l7 U; a1 G3 a5 L" [8 D<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, 2025-5-12 02:11 , Processed in 0.302911 second(s), 51 queries .

回顶部