QQ登录

只需要一步,快速开始

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

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

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

823

主题

3

听众

4048

积分

我的地盘我做主

该用户从未签到

发帖功臣 元老勋章

跳转到指定楼层
1#
发表于 2005-1-26 12:36 |只看该作者 |正序浏览
|招呼Ta 关注Ta
<>  </P>
; s9 I1 {7 @; L" }% S$ G<>杨超 </P>
4 a( X- n+ a; ^9 w<>  </P>6 P* ?5 q  Q1 ^& c
<>  随着数据库的广泛应用,数据库编程已经成为程序设计中发展迅猛的一支。 </P>
3 y& y2 C$ a7 U8 k. W7 J% D<>C++ Builder在数据库开发方面具有的强大功能是无可比拟的,你甚至可以不 </P>: l. ]5 S/ U, L; Z  @1 k* X
<>写一行程序就生成漂亮的数据库程序。 </P>
& `3 X* l5 K9 V4 n<>  </P>6 Z2 {( Q4 S8 g8 x/ K0 ]
<>  下面对C++Builder中的几个数据库VCL的使用技巧做一下介绍: </P>( S+ d( F5 x- m* w' g: _
<>  </P>) x" s8 B0 G7 Q% A
<>  一、DBGrid控件 </P>
0 C1 {2 V1 C: F2 i1 ]& `<>  </P>
: G3 C: t& e) e# y. h<>  1.设置DBGrid的字段显示宽度属性 </P>
8 z% [/ P# r0 z+ r9 k<>  </P>
4 w/ H4 u  q/ D6 |) F<>  为了在DBGrid中建立较小的列,你必须建立一个显示标题,它等于或小于字 </P>, Y/ |2 d" N& T/ _9 ~. ]2 n
<>段值。例如,你希望建立一个只有三个字符宽的列,你的列标题显示必须只有三 </P>5 `0 d! L8 f; N+ I0 m9 V* V3 `
<>个字符或更少。 </P>7 s3 S" l% ~% k, c  m0 P! K
<>  </P>
; H$ I7 a1 b0 C. t+ r5 R8 U<>  2.改变DBGrid的显示字段及日期显示格式 </P>
; G" u( d3 |  V4 y' B6 [<>  </P>
, _! E- R9 v: F' Q<>  (1)双击DBGrid对应的Table1,进入字段编辑器。 </P>/ P; v, `! c+ n) j) Y+ \
<>  </P>
# m) s/ S6 q0 H/ c8 _! j4 {; h<>  (2)点右键出现选单选“Add Fields…" ,出现添加字段对话框,选择要添加 </P>
6 }2 I# s. y: U* e7 v0 {  K$ c0 E( o<>的字段(该字段将在运行时由DBGrid显示)然后点OK按钮。 </P>
7 a8 c/ h& ~- N* M<>  </P>
' B; B* }% r5 O- @6 j; b<>  (3)假设添加了“日期”字段,点该字段,在属性表中的:DisplayLabel中 </P>
! ^/ p/ l6 E8 k# Z) n<>填入你希望DBGrid显示的字段名。如果原来字段名是英文的,这里用中文名后 </P>
3 f* U* d2 |* @$ u6 k/ V$ \<>DBGrid将显示中文名。在DisplayFormat中填入:yyyy-mm-dd,以后日期将按 </P>
: |( b  t! U$ X<>1999-05-28格式显示。 </P>
( T3 [) a7 R& A# L7 @<>  </P>
, j- }" }7 i2 x: L3 u) N<>  二、Tquery控件 </P>+ a0 z' W$ I) Y: w5 ~; o
<P>  </P>4 H3 j& V% T  |) `8 u, s6 N- h
<P>  Tquery 控件是数据库编程中非常重要的一个控件,它负责通过BDE与数据库 </P>
# G' m9 `& C8 g9 C$ o- [4 Q) W. M<P>建立联系,通过SQL语句方便的建立查询。Query必须建立相应的SQL才能生效。 </P>
3 Z' R; e+ a$ G: w5 ~% T& D<P>  </P>
5 L8 D: f2 a, f4 v. O; o7 Q<P>  </P>
9 [; e  U, q( N<P>  Tquery的参数设置如下: </P>
/ l- z( T& I- _8 r# d1 |. t; ]<P>  </P>. T9 p+ d' M+ {; g( K$ k
<P>  (1)在SQL属性中:Select * from 表名 where 字段名=:变量名 </P>+ s; J& O) J  r# s& j2 a
<P>  </P>
6 v! }: E0 D) X) I& p2 V<P>  跟在“ : "后面的是变量。这样写后,在参数属性中就可以修改该变量的数 </P>
: C4 R3 }7 s$ b- v<P>据类型等。 </P>
2 h" Z% j8 c7 v# U<P>  </P>* h5 E- |6 W( F7 x/ q- B1 Z) ^- c$ D
<P>  (2)对变量的赋值: </P>
5 R* Q3 R, v8 |1 \) k- a+ P. H" {<P>  </P>3 u( V/ c/ \) @( {6 O- R( Y
<P>   Query1-〉Active=false; </P>
7 h4 n4 c& V% r& X4 }7 d. J) x1 c<P>  </P>6 y0 b3 S  H9 R( g
<P>   Query1-〉Params-〉Items[0]-〉AsString=Edit1-〉Text; </P>
$ I8 }5 ~; n: Q8 V( c<P>  </P>6 e& `% |2 Z; k' ]6 t9 V
<P>   Query1-〉Active=true;//查找符合变量的记录 </P>
  l# V2 H8 s7 o5 v$ q<P>  </P>( h) [- Z( J3 ^8 \- t
<P>  (3)用DBGrid显示结果 </P>
3 E6 p( M; q8 O6 v; S<P>  </P>" d) H+ F, S* x/ y/ j: h9 [
<P>  DBGrid的DataSource与DataSource1连接,而DataSource1的DataSet与 </P>
) A' [1 ]- e( {<P>Tquery1 连接。 </P>; T; a2 x% W0 V0 b& @
<P>  </P># V6 t% U+ D$ |5 `3 N
<P>  三、应用示例 </P>, J: F8 q) K) s  r
<P>  </P>
4 R: z. @" F1 [<P>  通过Query控件嵌入SQL语句建立的查询比Table更简单、更高效。 </P>6 F$ i2 V( `- m9 G
<P>  </P>4 l6 X9 P2 }( X
<P>  用一个简单的代码来说明如何建立查询程序: </P>
3 }: Z0 R! j8 a<P>  </P>
$ u- k" K3 V( R* y+ F<P>  例如,要建立一个检索表1中书名为book1的程序则在表单上放置DBGrid, </P>
4 x; G' Q7 q7 R. {<P>DataSource,Query三个控件加入以下代码: </P>8 o5 D& B% k0 t* R" i: X6 e
<P>  </P>
) ^7 A0 }+ `# e<P>  DBGrid1-〉DataSource=DataSource1; </P>
3 S" `" U7 Y% z( e6 g<P>  </P>
  b+ M+ a% r6 Y$ z7 F7 a% B<P>  DataSource1-〉DataSet=Tqery1; </P>
. f+ o6 P, C7 F8 k0 ^2 `% h  M<P>  </P>3 X- \; T3 T. ]1 ^+ G+ v" }' J( G7 N
<P>  Query1-〉Close(); </P>
, G0 a2 e) c) E$ n8 P<P>  </P>
1 P5 z5 n2 r; x2 x& |* S<P>  Query1-〉SQL-〉Clear(); </P>% F2 ^" A$ }6 E+ U7 u) s
<P>  </P>
- c& l& m! D& S' y- c& n  H<P>  Query1-〉SQL-〉Add(″Select * From 表 Where (书名=′book1′ ″ </P>
6 o  Z9 `' @# y9 d3 ~( n5 g: l<P>); </P>0 }& D3 r2 g! }( F
<P>  </P>4 ]+ d! M. `( I( v
<P>  Query1-〉ExecSQL(); </P>  v4 a7 _. p2 Z
<P>  </P>
4 f, w. [7 _; r8 V  l<P>  Query-〉Active=true; </P>
& c$ f/ \1 z/ U<P>  </P>
! C2 y# s, O. r- F<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 23:47 , Processed in 0.636838 second(s), 53 queries .

回顶部