QQ登录

只需要一步,快速开始

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

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

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

823

主题

3

听众

4048

积分

我的地盘我做主

该用户从未签到

发帖功臣 元老勋章

跳转到指定楼层
1#
发表于 2005-1-26 12:36 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
<>  </P>
( a2 K3 e  L2 {<>杨超 </P>' h& P. {. k  B2 I
<>  </P>
" Q' u& P( a: F5 h/ t; a<>  随着数据库的广泛应用,数据库编程已经成为程序设计中发展迅猛的一支。 </P>- P3 t  H- w3 n$ o2 A
<>C++ Builder在数据库开发方面具有的强大功能是无可比拟的,你甚至可以不 </P># p" k) s: Z1 p; f: ]) G
<>写一行程序就生成漂亮的数据库程序。 </P>) \1 y6 `2 |" O' U1 x7 P7 b+ e5 u( G3 R
<>  </P>( U- Q+ \* r$ b( q8 C" m$ R
<>  下面对C++Builder中的几个数据库VCL的使用技巧做一下介绍: </P>* k; X  D0 O9 h! J( I* ^8 J
<>  </P>$ G( j: f4 p. t) ]! y
<>  一、DBGrid控件 </P>9 W! E, s. r4 w* Y  k8 d" e
<>  </P>
0 a. w; h8 c* U; m$ \/ ~<>  1.设置DBGrid的字段显示宽度属性 </P>
2 r" ]( u: y* M& p9 A<>  </P>( w: }/ b: x2 |" i! E6 S7 p7 A% e
<>  为了在DBGrid中建立较小的列,你必须建立一个显示标题,它等于或小于字 </P>; o& F% S% w  F7 a. J8 i
<>段值。例如,你希望建立一个只有三个字符宽的列,你的列标题显示必须只有三 </P>
! S3 r& V: _9 k3 W: S; E<>个字符或更少。 </P>
% e- L6 p* V0 ^<>  </P>
9 E$ H% d! t7 F$ `! W- h* N2 H<>  2.改变DBGrid的显示字段及日期显示格式 </P>
5 `8 s: ^  `1 e5 `" e<>  </P>6 C" S% D3 |8 K  O3 ]
<>  (1)双击DBGrid对应的Table1,进入字段编辑器。 </P>
4 @9 J+ e# K) t) z& z<>  </P>8 p) p; Z* t* m/ O" I
<>  (2)点右键出现选单选“Add Fields…" ,出现添加字段对话框,选择要添加 </P>
2 p2 O. W$ a8 d; h4 c" s4 N<>的字段(该字段将在运行时由DBGrid显示)然后点OK按钮。 </P>
4 E1 c/ H0 Z. o" k! i/ ]<>  </P>
0 B/ x2 m+ v" O* s<>  (3)假设添加了“日期”字段,点该字段,在属性表中的:DisplayLabel中 </P>
  ^  W# X: q+ L" K$ F<>填入你希望DBGrid显示的字段名。如果原来字段名是英文的,这里用中文名后 </P>
4 y) W& F; M8 i# `, L0 M# Y  Y<>DBGrid将显示中文名。在DisplayFormat中填入:yyyy-mm-dd,以后日期将按 </P>) Z; n* {0 v7 w3 H' {
<>1999-05-28格式显示。 </P>; h. a' N# s6 j7 }
<>  </P>8 }( F0 F8 k& p8 Z2 T( E1 `. P
<>  二、Tquery控件 </P>& q( }, ?! f9 C% W2 A
<P>  </P>
/ v5 f& J; ?1 J# Q: @  N7 U<P>  Tquery 控件是数据库编程中非常重要的一个控件,它负责通过BDE与数据库 </P>
3 W- K( W/ H( F0 U& ^<P>建立联系,通过SQL语句方便的建立查询。Query必须建立相应的SQL才能生效。 </P>5 x) W( t, x, O% [% Q7 y
<P>  </P>
- F$ c5 _6 |" S. H<P>  </P>
+ n3 {+ t) i! [$ d7 x9 S) t<P>  Tquery的参数设置如下: </P>8 ^5 t* T! ]$ r; j7 h# {# ~, g7 i
<P>  </P>* i% M1 Q$ y5 G. c& k
<P>  (1)在SQL属性中:Select * from 表名 where 字段名=:变量名 </P>
, C2 F8 f; X$ J# Y  G! ^3 @* w1 X<P>  </P>8 e1 J) V$ }+ T7 }! Q
<P>  跟在“ : "后面的是变量。这样写后,在参数属性中就可以修改该变量的数 </P>9 o: T* c- y  Q0 e
<P>据类型等。 </P>( q. p" M+ n5 j3 q0 [  B
<P>  </P>% i- ?7 q, c% _' T+ o
<P>  (2)对变量的赋值: </P>7 r, a" I; c- {0 _# t" ~
<P>  </P>: M8 r% E. T( l/ s6 }
<P>   Query1-〉Active=false; </P># ^* X: W: n' {; Y1 L6 j( S) Y
<P>  </P>
+ y# p7 q( k, z# K9 k% w' I<P>   Query1-〉Params-〉Items[0]-〉AsString=Edit1-〉Text; </P>
4 a2 ~3 l' `, g! Y<P>  </P>; v( \- C  m/ K$ Z8 I- b1 ]$ N; y# A
<P>   Query1-〉Active=true;//查找符合变量的记录 </P>9 l. Z7 E" [' N6 J2 w0 [
<P>  </P>
* n: E, l7 B6 @3 I, v; Z" z<P>  (3)用DBGrid显示结果 </P>
7 z8 C# }$ v2 }) w' m, o& ~6 ~<P>  </P>
: f+ R! J/ Y- V! H6 E<P>  DBGrid的DataSource与DataSource1连接,而DataSource1的DataSet与 </P>0 R% T7 h& k0 R5 D8 U7 k/ E" O; G
<P>Tquery1 连接。 </P>
, C8 G1 ~$ R, }; v1 K, a% K<P>  </P>. Z0 o/ J+ G0 U' W  ~
<P>  三、应用示例 </P>: T9 @( ^' \' C( [  \- u" r
<P>  </P>
$ I1 A. C! r9 k* S+ K' b0 f<P>  通过Query控件嵌入SQL语句建立的查询比Table更简单、更高效。 </P>8 C) i; p. F* q; T
<P>  </P>3 H* v7 Q0 l+ j3 F1 O
<P>  用一个简单的代码来说明如何建立查询程序: </P>6 w$ d# k2 f* e3 B& F
<P>  </P>4 m% I/ m; s% a: ~
<P>  例如,要建立一个检索表1中书名为book1的程序则在表单上放置DBGrid, </P>
9 M5 ?! R. [  t3 {5 y& y<P>DataSource,Query三个控件加入以下代码: </P>
( a+ \' U, \9 ]% q- ?! f<P>  </P>
- Y- w4 H9 Q" H( d3 w- f3 P<P>  DBGrid1-〉DataSource=DataSource1; </P>' b: E+ e$ A; x( e
<P>  </P>+ y* v# _3 @9 T# b# u
<P>  DataSource1-〉DataSet=Tqery1; </P>7 m* |6 H- d3 M) Q; e
<P>  </P>
6 B3 [/ X/ i% `<P>  Query1-〉Close(); </P>' S- D% R7 A' t% k5 e
<P>  </P>
5 s# V7 O5 e) w6 j- ^( J<P>  Query1-〉SQL-〉Clear(); </P>) }' W: T) ~2 J: o
<P>  </P>: i; v& d3 n( ^" U) e3 I
<P>  Query1-〉SQL-〉Add(″Select * From 表 Where (书名=′book1′ ″ </P>1 ~4 a* {5 Y( v+ ~  F: S# W; e
<P>); </P>
/ @- M& @; ]- [4 `8 ?" R8 J7 F<P>  </P>7 _1 {1 f$ h1 o  A% P
<P>  Query1-〉ExecSQL(); </P>6 d% y* C. a& h# O1 @8 `2 j% S' H0 ~$ b" l
<P>  </P>- d+ P9 L/ c+ P
<P>  Query-〉Active=true; </P>% k. h6 v$ Y# Y9 I6 n4 B
<P>  </P>
5 W' H+ O2 P3 f' q! Y$ S<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-8 22:02 , Processed in 0.364037 second(s), 52 queries .

回顶部