QQ登录

只需要一步,快速开始

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

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

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

823

主题

3

听众

4048

积分

我的地盘我做主

该用户从未签到

发帖功臣 元老勋章

跳转到指定楼层
1#
发表于 2005-1-26 12:36 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
<>  </P>
4 B0 t4 j# `$ M! O. L: s<>杨超 </P>
0 a+ g1 N, s8 M<>  </P>/ ~  H: j# h3 {' p
<>  随着数据库的广泛应用,数据库编程已经成为程序设计中发展迅猛的一支。 </P>1 B" i( G% V- V9 C9 K# G) E$ Y
<>C++ Builder在数据库开发方面具有的强大功能是无可比拟的,你甚至可以不 </P># z- O4 \- E: ?) [: o
<>写一行程序就生成漂亮的数据库程序。 </P>
8 b( c$ V1 Y, A  `1 E! ^; N<>  </P>
) b2 Y4 I. T8 b% E" k6 w3 V<>  下面对C++Builder中的几个数据库VCL的使用技巧做一下介绍: </P>
. W# \! P9 Q* X0 o<>  </P>
, V! L* O' ^8 }" Q<>  一、DBGrid控件 </P>
8 Q3 W% l" q0 B1 V- s: T9 v2 |& X<>  </P>
5 U5 C  t9 e9 M<>  1.设置DBGrid的字段显示宽度属性 </P>
% o0 R4 \. j, T  n& u<>  </P>* [! e2 j; V2 m+ p; P4 ]$ H
<>  为了在DBGrid中建立较小的列,你必须建立一个显示标题,它等于或小于字 </P>4 a' {$ |7 S  C+ w) f+ Z; M
<>段值。例如,你希望建立一个只有三个字符宽的列,你的列标题显示必须只有三 </P>, m) x3 q: y# R. }/ |- n, J3 p3 `
<>个字符或更少。 </P>6 x, K9 x9 t2 i5 J( G: n% i: }$ I
<>  </P>5 U+ u" w9 J4 h. z
<>  2.改变DBGrid的显示字段及日期显示格式 </P>6 v$ s% t0 X+ g1 C
<>  </P>
( W3 R( n  ?# u<>  (1)双击DBGrid对应的Table1,进入字段编辑器。 </P>9 R& t* Q9 K: n6 P: S
<>  </P>; a* e3 x1 @* M% D: j9 l
<>  (2)点右键出现选单选“Add Fields…" ,出现添加字段对话框,选择要添加 </P>
9 \. @/ c6 c2 k  N! j$ H% ]6 f8 f<>的字段(该字段将在运行时由DBGrid显示)然后点OK按钮。 </P>1 ~0 s% ?# h( Z- D3 v) }: k% E/ S
<>  </P>6 \! m/ U+ W3 `6 i5 N# v4 I
<>  (3)假设添加了“日期”字段,点该字段,在属性表中的:DisplayLabel中 </P>
4 x1 @/ O1 u; H8 L9 w) r/ t<>填入你希望DBGrid显示的字段名。如果原来字段名是英文的,这里用中文名后 </P>  A, q* [  F4 H
<>DBGrid将显示中文名。在DisplayFormat中填入:yyyy-mm-dd,以后日期将按 </P>
2 `1 S3 [4 z% U5 n- s9 h1 Y<>1999-05-28格式显示。 </P>2 U# G2 P! v7 ]+ ?1 _; G
<>  </P>
4 J) v- m) {2 b* K1 O3 P. h: n<>  二、Tquery控件 </P>* y9 |) a' H  U; [; t
<P>  </P>: K$ s' M% m6 K% A: r2 H
<P>  Tquery 控件是数据库编程中非常重要的一个控件,它负责通过BDE与数据库 </P>
  ^- N- B, T' f$ `: p) C- O<P>建立联系,通过SQL语句方便的建立查询。Query必须建立相应的SQL才能生效。 </P>
% F6 e/ X7 @: Z9 O' i6 L<P>  </P>
* s# Y4 j. f, M7 Z  s4 f<P>  </P>
1 A* ~5 s, F6 m( u& t<P>  Tquery的参数设置如下: </P>
% n) p) R7 R% {# ^+ v<P>  </P>' _. [# Z/ R5 A; y
<P>  (1)在SQL属性中:Select * from 表名 where 字段名=:变量名 </P>
, q- |6 |1 @7 U' W0 y) c; U& W4 ]<P>  </P>
, p/ h3 M* J4 j3 v: b<P>  跟在“ : "后面的是变量。这样写后,在参数属性中就可以修改该变量的数 </P>
- b/ k* `7 i  G4 Q. k<P>据类型等。 </P>3 G9 v, N- k' G! Z, C& T/ ~
<P>  </P>
/ n: r2 i* t4 L! C" j/ r4 i+ m<P>  (2)对变量的赋值: </P>9 k2 ^: j; O3 r7 _1 h7 _9 b
<P>  </P>
7 Y. J) a# u/ x. q: Q( P! M<P>   Query1-〉Active=false; </P>
: ?: t8 y; u. |+ d. r% E, j& Q5 d<P>  </P>; l* _- P  _/ }$ v( e0 F$ [6 N4 c
<P>   Query1-〉Params-〉Items[0]-〉AsString=Edit1-〉Text; </P>
8 p7 s- [. J2 m& [/ L; f! y4 x<P>  </P>4 n; P9 \3 A8 ^9 _
<P>   Query1-〉Active=true;//查找符合变量的记录 </P>
6 V2 i, a6 T8 G<P>  </P>
5 ?8 y; ?0 U0 f5 \2 x<P>  (3)用DBGrid显示结果 </P>' H+ z, Q4 p) Y( ?% W5 G; z0 K
<P>  </P>
- W. |- I3 Q& \, ^<P>  DBGrid的DataSource与DataSource1连接,而DataSource1的DataSet与 </P>
8 l6 E+ j% a7 V- ~" P<P>Tquery1 连接。 </P>
$ B( c% T; L! {' m6 @' t3 U<P>  </P>$ t8 ~2 l3 C8 d) U
<P>  三、应用示例 </P>0 Q( G) Q4 |0 X: b( ~1 Z  N
<P>  </P>
) Z" E5 \0 u* y$ R/ j<P>  通过Query控件嵌入SQL语句建立的查询比Table更简单、更高效。 </P>
1 A4 O/ G4 \0 N/ ]! H* f<P>  </P>
' z$ [0 `1 l% Q0 b" E  M- Y<P>  用一个简单的代码来说明如何建立查询程序: </P>
, ~  {& H( i7 e; L$ [<P>  </P>
3 r- ~7 U' h! Q) J<P>  例如,要建立一个检索表1中书名为book1的程序则在表单上放置DBGrid, </P>- ?( e# |) [9 {: a% h" W+ [' l& I
<P>DataSource,Query三个控件加入以下代码: </P>! F$ t- \7 f3 O# k4 ]
<P>  </P>2 m, f( g' U  I: m6 H
<P>  DBGrid1-〉DataSource=DataSource1; </P>+ Y' Q9 k" }0 `9 P
<P>  </P>9 h3 v3 ^) n5 q; s' K: m& L6 ^
<P>  DataSource1-〉DataSet=Tqery1; </P>5 _% A1 U) m6 z) v% ^1 i/ X' c# q
<P>  </P>
& c- R% ?+ `; |! l<P>  Query1-〉Close(); </P>* [3 `+ m8 g1 f" J
<P>  </P>. Z! z+ N0 G+ Y1 `. c& Z# C
<P>  Query1-〉SQL-〉Clear(); </P>
! `. W8 w3 S2 O' d<P>  </P>
& N; z7 b& f- U& |0 a0 {0 L<P>  Query1-〉SQL-〉Add(″Select * From 表 Where (书名=′book1′ ″ </P>
/ ~/ E9 I8 R2 E. B% n6 B# V  d<P>); </P>4 V; |2 J$ V$ e+ t/ W
<P>  </P>
- |* G, @1 Z* Z; z<P>  Query1-〉ExecSQL(); </P>
3 K& L0 Y/ [5 Q+ d<P>  </P>
% L$ _, _& }) Y  w* K1 h<P>  Query-〉Active=true; </P>
: Y/ W/ P" q2 ^: G- H2 y<P>  </P>/ T3 V, i* S5 Z
<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-12-29 03:17 , Processed in 0.334664 second(s), 52 queries .

回顶部