QQ登录

只需要一步,快速开始

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

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

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

823

主题

3

听众

4048

积分

我的地盘我做主

该用户从未签到

发帖功臣 元老勋章

跳转到指定楼层
1#
发表于 2005-1-26 12:36 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
<>  </P>9 |6 x& z; l8 J
<>杨超 </P>+ n! O& o% n# ?4 a5 m- ?
<>  </P>1 h+ y0 b: P& h  ^
<>  随着数据库的广泛应用,数据库编程已经成为程序设计中发展迅猛的一支。 </P>
7 z9 j% d- U5 @6 D8 r: e& f<>C++ Builder在数据库开发方面具有的强大功能是无可比拟的,你甚至可以不 </P>
7 @+ w2 U, R7 f: A* i6 C% r5 c3 x<>写一行程序就生成漂亮的数据库程序。 </P>
6 K4 K+ ^7 X0 o1 X8 u) y% N0 H4 B<>  </P>
$ t: E; ^! |( \1 X9 ^7 F- E0 ]! z<>  下面对C++Builder中的几个数据库VCL的使用技巧做一下介绍: </P>
; m2 N8 j8 J+ R, @  @<>  </P>
$ s" O. ^% e2 h5 |<>  一、DBGrid控件 </P>
- s: Z; g& S9 H. l<>  </P>2 H% h& E3 J5 m% s2 g$ b
<>  1.设置DBGrid的字段显示宽度属性 </P>  F) \9 W. a3 |- G4 q
<>  </P>
& P  H4 d6 r: u) {<>  为了在DBGrid中建立较小的列,你必须建立一个显示标题,它等于或小于字 </P>2 k3 W! t7 K4 D6 Z7 h
<>段值。例如,你希望建立一个只有三个字符宽的列,你的列标题显示必须只有三 </P>
! ?7 C! U* i0 D# M+ W% B7 O<>个字符或更少。 </P>! L8 ]) H2 A% |5 G7 l( F" F
<>  </P>( z7 h2 ^( ^$ j9 I0 U8 `
<>  2.改变DBGrid的显示字段及日期显示格式 </P>
$ `) f  R4 A9 m& U2 V<>  </P>
- j. {/ Q- ?7 l. F% S! D1 X<>  (1)双击DBGrid对应的Table1,进入字段编辑器。 </P>" [$ F* t5 w% K( P
<>  </P>" U' J( L& A2 L  l. c/ p
<>  (2)点右键出现选单选“Add Fields…" ,出现添加字段对话框,选择要添加 </P>% [; I3 m2 Z. L0 M/ {  m1 n
<>的字段(该字段将在运行时由DBGrid显示)然后点OK按钮。 </P>
1 |0 t7 k: I7 h) @<>  </P>- B; Z2 A! U; z2 `7 W, ~7 C
<>  (3)假设添加了“日期”字段,点该字段,在属性表中的:DisplayLabel中 </P>) p  r7 X% e8 _3 E1 _6 p
<>填入你希望DBGrid显示的字段名。如果原来字段名是英文的,这里用中文名后 </P>
. W# g" a6 e& k1 h<>DBGrid将显示中文名。在DisplayFormat中填入:yyyy-mm-dd,以后日期将按 </P>2 K- h$ J7 y7 ^
<>1999-05-28格式显示。 </P>( Z5 u+ ^' j! Y3 W$ u# y+ M/ J1 [! J
<>  </P>8 P! Y7 r+ w3 {# G) I- x2 N1 y# i
<>  二、Tquery控件 </P>
9 x0 I- w2 ~8 L6 T& T8 W& `<P>  </P>
6 d* S1 k8 F  S7 @, j: |0 F6 R0 B/ a<P>  Tquery 控件是数据库编程中非常重要的一个控件,它负责通过BDE与数据库 </P>6 c& w3 g8 |& B% ]5 t, b
<P>建立联系,通过SQL语句方便的建立查询。Query必须建立相应的SQL才能生效。 </P>
: N+ Y; t4 ?% v2 I' j" B6 ]<P>  </P>
$ G: o! c1 [9 w& W7 X<P>  </P>
% C6 E1 ^3 |9 f' x+ I<P>  Tquery的参数设置如下: </P>0 r9 J! F3 P4 @: J. M
<P>  </P>
9 ?. l! G- U, M6 d! [; b<P>  (1)在SQL属性中:Select * from 表名 where 字段名=:变量名 </P>% @* J3 W. S% ?% ?
<P>  </P># S6 Q. }- M% G! q
<P>  跟在“ : "后面的是变量。这样写后,在参数属性中就可以修改该变量的数 </P>
8 i7 Z7 Z; k4 b- f. [<P>据类型等。 </P>6 P- A( a( ]" g. Y; K& y& M
<P>  </P>
! K8 x; r+ ]" ~<P>  (2)对变量的赋值: </P>. _( A8 }5 E) r) a, c
<P>  </P>4 @7 q/ u& r0 D
<P>   Query1-〉Active=false; </P>4 x3 Q- |! X0 s. e3 j+ a5 p
<P>  </P>& |. i" a, J( c% Y
<P>   Query1-〉Params-〉Items[0]-〉AsString=Edit1-〉Text; </P># F9 I8 x& O/ g& Z6 H
<P>  </P>
8 g& u6 ^" Z! o% z' e6 G6 E! ~9 E<P>   Query1-〉Active=true;//查找符合变量的记录 </P>2 D6 U5 Y0 V0 ^5 B8 e0 J
<P>  </P>9 r& K+ {, c0 N& U) E
<P>  (3)用DBGrid显示结果 </P>
6 p% V. e7 k6 a# Y( d: _9 y' d$ F<P>  </P>
& \+ O' ]+ X4 T# t7 f<P>  DBGrid的DataSource与DataSource1连接,而DataSource1的DataSet与 </P>
% s# K) m4 q! _: h- F<P>Tquery1 连接。 </P>6 q$ F/ R' M3 @) C* h' A$ c
<P>  </P>
/ C8 i; N) t$ t<P>  三、应用示例 </P>
1 E. P4 v7 J: [7 G! X2 X<P>  </P>
+ l0 J3 A  t! l7 w<P>  通过Query控件嵌入SQL语句建立的查询比Table更简单、更高效。 </P>
# ?! _7 T  _  w* W9 B. s; T3 t<P>  </P>
1 V. m/ X$ Q" }2 e<P>  用一个简单的代码来说明如何建立查询程序: </P>- x6 x) I- T3 d8 D/ w0 m& Z( r
<P>  </P>7 O. M0 H( s7 n2 ~. \
<P>  例如,要建立一个检索表1中书名为book1的程序则在表单上放置DBGrid, </P>
1 b( W5 L8 l( u4 Y<P>DataSource,Query三个控件加入以下代码: </P>* ?! S% D% R- ?! w/ J0 y
<P>  </P>
0 ~- V) s) m# @& X* A+ I# a<P>  DBGrid1-〉DataSource=DataSource1; </P>4 M3 k9 P6 P' N
<P>  </P>- w1 Y% N1 u1 w& t" e
<P>  DataSource1-〉DataSet=Tqery1; </P>2 O/ A" S% S  |) Y+ @/ V3 r/ B
<P>  </P>
9 ~' R5 V  s7 g7 ], S, [: K<P>  Query1-〉Close(); </P>+ R+ n) g6 _9 z6 |2 @2 B4 f% O
<P>  </P>8 i4 \% B5 F( p
<P>  Query1-〉SQL-〉Clear(); </P>
- O& |% s  |9 Y# b, p' C* {- q<P>  </P>, Q) s8 w+ P$ P. e! L, W
<P>  Query1-〉SQL-〉Add(″Select * From 表 Where (书名=′book1′ ″ </P>" F! ]8 \& X. v; n& z- o7 _
<P>); </P>: f& K8 e( W. M. v
<P>  </P>
& ^0 @7 z/ a4 J% s; s9 Q5 L<P>  Query1-〉ExecSQL(); </P>
6 T( w0 q! u2 q9 h: u9 }<P>  </P>, E# j4 K2 S5 L3 f$ s
<P>  Query-〉Active=true; </P>4 _0 o' L9 L! k& D
<P>  </P>2 F  I; X2 [+ p% ]+ h7 N2 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-6-12 00:31 , Processed in 0.375436 second(s), 52 queries .

回顶部