QQ登录

只需要一步,快速开始

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

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

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

823

主题

3

听众

4048

积分

我的地盘我做主

该用户从未签到

发帖功臣 元老勋章

跳转到指定楼层
1#
发表于 2005-1-26 12:36 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
<>  </P>
6 l7 ?6 ?9 n9 W5 G) P<>杨超 </P>% F6 T+ G- h( W/ z
<>  </P>
, a# Z, f# ]! S  S: L<>  随着数据库的广泛应用,数据库编程已经成为程序设计中发展迅猛的一支。 </P>. q/ _% X5 @$ e" A3 }4 x
<>C++ Builder在数据库开发方面具有的强大功能是无可比拟的,你甚至可以不 </P>
( e- d8 @" O7 _<>写一行程序就生成漂亮的数据库程序。 </P>
" p$ w0 [$ ^0 Y. V; O! J& w7 ?<>  </P>* {% C  c4 Y+ F1 P0 m1 W
<>  下面对C++Builder中的几个数据库VCL的使用技巧做一下介绍: </P>
3 S7 k/ k/ l. d7 b( `<>  </P>
8 I4 h+ }4 l, ?1 C9 l  N- X+ U4 C<>  一、DBGrid控件 </P>( I1 @1 b. m, ~
<>  </P>3 T. t' s& r% x
<>  1.设置DBGrid的字段显示宽度属性 </P>6 Q+ @( y; Z% i* i7 R, s  l! ?$ o
<>  </P>" C# G' W  v+ R. W
<>  为了在DBGrid中建立较小的列,你必须建立一个显示标题,它等于或小于字 </P>1 E% @7 P3 z  Y8 y9 u
<>段值。例如,你希望建立一个只有三个字符宽的列,你的列标题显示必须只有三 </P>; ^( b% o- ~1 `) {" z9 M. P( \0 e
<>个字符或更少。 </P>
+ Q2 |8 h4 m5 q, m* Y" D<>  </P>
/ ^7 c" L, }" \) e' f<>  2.改变DBGrid的显示字段及日期显示格式 </P>
: U2 ~5 c- e8 |" h) T<>  </P>
6 t. G" q4 D! C5 {: _. q) W( c<>  (1)双击DBGrid对应的Table1,进入字段编辑器。 </P>8 C+ Z7 S6 z0 y+ I9 W
<>  </P>( ]" a4 V0 e, i% Q& S" `
<>  (2)点右键出现选单选“Add Fields…" ,出现添加字段对话框,选择要添加 </P>5 H5 l% G; G: [* }
<>的字段(该字段将在运行时由DBGrid显示)然后点OK按钮。 </P>0 d% S: W5 b$ I' _7 l) F2 X8 l& U/ B
<>  </P>2 j! W1 y# n% ?4 U
<>  (3)假设添加了“日期”字段,点该字段,在属性表中的:DisplayLabel中 </P>3 n* D) ~" e+ A1 {  a
<>填入你希望DBGrid显示的字段名。如果原来字段名是英文的,这里用中文名后 </P>
+ J0 G2 W- p8 T1 W1 m2 L8 R1 u<>DBGrid将显示中文名。在DisplayFormat中填入:yyyy-mm-dd,以后日期将按 </P>3 j) ^' g+ u2 U( L/ t
<>1999-05-28格式显示。 </P>5 Z  N8 H. P) a$ q2 s, f
<>  </P>
/ Z# y+ e" J1 k8 Q4 A<>  二、Tquery控件 </P>7 K* }' t9 n! t! Z1 s# G
<P>  </P>; x/ @* Z( U2 n4 Z8 |$ ]
<P>  Tquery 控件是数据库编程中非常重要的一个控件,它负责通过BDE与数据库 </P>
! s! l( I$ v6 Y9 n<P>建立联系,通过SQL语句方便的建立查询。Query必须建立相应的SQL才能生效。 </P>5 Q! P1 s  \' m2 V) _/ V" s
<P>  </P>
, I/ X  @5 X. Y, c2 b: A<P>  </P>/ [3 e; |" B% B, Y2 n8 |
<P>  Tquery的参数设置如下: </P>9 |% D  f5 b, w3 c/ e1 F
<P>  </P>: \5 n- O6 H, A, Z8 b# G+ }) |( E0 H
<P>  (1)在SQL属性中:Select * from 表名 where 字段名=:变量名 </P>
# q1 X" i7 ]4 j* M  t3 |<P>  </P>
1 u) p; E. X6 E5 S4 q2 x4 Z<P>  跟在“ : "后面的是变量。这样写后,在参数属性中就可以修改该变量的数 </P>: p/ ~- v0 T1 p1 D' G, y7 X$ k
<P>据类型等。 </P>/ H9 s* T2 C# i# u* Y8 V2 O; Z( h* D4 d
<P>  </P>  t6 O7 r+ I3 K" I; F8 {
<P>  (2)对变量的赋值: </P>6 c6 N% n8 v1 K* j3 }
<P>  </P>! J5 A) q) h" j! P1 U+ j# k
<P>   Query1-〉Active=false; </P>
4 L6 D# x' j) Z; }7 l2 ~<P>  </P>, T; P+ K2 r" a: h2 J: v: o0 R
<P>   Query1-〉Params-〉Items[0]-〉AsString=Edit1-〉Text; </P>
8 I/ J1 L9 E0 s7 e<P>  </P>
1 e9 D+ x- U( b# e<P>   Query1-〉Active=true;//查找符合变量的记录 </P>' v: `" V/ {) @: S: ~
<P>  </P>$ F! J# S# L1 C4 z0 \' o1 a# d- n
<P>  (3)用DBGrid显示结果 </P>
- H$ }4 [: r2 O/ ]<P>  </P>
1 [! y2 D' H7 m. g<P>  DBGrid的DataSource与DataSource1连接,而DataSource1的DataSet与 </P>5 a9 Z. e, M* k/ x( c* ?! L
<P>Tquery1 连接。 </P>2 d# p5 _5 L; o& G( [/ G
<P>  </P>+ y" T$ p+ Z4 g" F* q
<P>  三、应用示例 </P>
3 R8 m  P! N0 C  d0 H$ z  n* \<P>  </P>: }9 b7 Q. b- P. _0 ]! B
<P>  通过Query控件嵌入SQL语句建立的查询比Table更简单、更高效。 </P>
* v, M. `3 E- U, x2 \. l( [, D, A<P>  </P>5 }) w+ y( f2 R1 g' _+ Q1 I
<P>  用一个简单的代码来说明如何建立查询程序: </P>
; R3 m. `" P% H! k  X  e<P>  </P>
- o: l; h* s: ~/ d<P>  例如,要建立一个检索表1中书名为book1的程序则在表单上放置DBGrid, </P>
7 Y$ E2 W0 ^5 A<P>DataSource,Query三个控件加入以下代码: </P>: }. t. K: N: r  E0 V
<P>  </P>
5 L- Q: b! `4 B9 M# i/ f<P>  DBGrid1-〉DataSource=DataSource1; </P>( S, i$ D$ d" h" E5 ?$ w
<P>  </P># }. _6 L! y' V9 `2 p$ o
<P>  DataSource1-〉DataSet=Tqery1; </P>
9 X  E! d7 b5 u$ }9 P* `8 V+ H<P>  </P>* f3 ^, `7 X/ _0 b  B2 l; o
<P>  Query1-〉Close(); </P>$ G1 c) ?) L3 y) v  u4 a4 d+ j2 k
<P>  </P>
' y) G7 N$ T9 a6 h) k% X$ L<P>  Query1-〉SQL-〉Clear(); </P>+ c" a& y/ V2 E# _5 `
<P>  </P>
9 D4 m% m! t% B. n<P>  Query1-〉SQL-〉Add(″Select * From 表 Where (书名=′book1′ ″ </P>
) k7 v( M' h7 F/ t- y1 _7 V+ }<P>); </P>5 a* i3 ~- j( x
<P>  </P>
! z0 X' g) s; U' l/ z<P>  Query1-〉ExecSQL(); </P>$ [. d2 t) d. ~6 [
<P>  </P>% R/ M" f1 v9 o  Z! Y
<P>  Query-〉Active=true; </P>
- K6 m9 X  c# O# v0 N# {4 U- f<P>  </P>5 {3 S% a, [" V( i% K
<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-7-1 23:39 , Processed in 0.367932 second(s), 52 queries .

回顶部