QQ登录

只需要一步,快速开始

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

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

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

823

主题

3

听众

4048

积分

我的地盘我做主

该用户从未签到

发帖功臣 元老勋章

跳转到指定楼层
1#
发表于 2005-1-26 12:36 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
<>  </P>
' J. X  K; C0 h- {<>杨超 </P>
3 Z: t( y, B( ^# k- \<>  </P>
' d9 v- a7 J# P! w- J& G<>  随着数据库的广泛应用,数据库编程已经成为程序设计中发展迅猛的一支。 </P>) V  _) }2 J$ w9 b
<>C++ Builder在数据库开发方面具有的强大功能是无可比拟的,你甚至可以不 </P>
3 `6 n% B5 R4 q( ^5 ?, \<>写一行程序就生成漂亮的数据库程序。 </P>3 `% o  Y; O/ c5 R! l9 T
<>  </P>: T* k' o, j) z' E
<>  下面对C++Builder中的几个数据库VCL的使用技巧做一下介绍: </P>
, ~% U) k, W+ _0 b) ?4 j  Q<>  </P>1 g4 X: k# e3 x, {. w
<>  一、DBGrid控件 </P>& e: W6 M0 f# ^: `) n. e
<>  </P>
8 k9 O1 R0 T* s$ @<>  1.设置DBGrid的字段显示宽度属性 </P>
# X/ J9 [7 V7 N! e: u! X" D- y<>  </P>: M  B1 B1 e  @+ O$ ?
<>  为了在DBGrid中建立较小的列,你必须建立一个显示标题,它等于或小于字 </P>$ C$ {* h7 z8 l/ I2 k* q2 E
<>段值。例如,你希望建立一个只有三个字符宽的列,你的列标题显示必须只有三 </P>( P9 T8 ]# m3 T  L/ C3 a
<>个字符或更少。 </P>8 q( M4 A' d5 f* e( a) B1 b; L0 W
<>  </P>
# ?2 \) ~  B/ ^! F. J& @; C# n  M<>  2.改变DBGrid的显示字段及日期显示格式 </P>% D- P+ c  O% h4 N: @8 O
<>  </P>! R# q/ I% E6 c# I) |0 B. V+ S# J8 f
<>  (1)双击DBGrid对应的Table1,进入字段编辑器。 </P>
: H/ o/ G2 }3 Z" E/ n<>  </P>- U; ^1 O2 w* ^
<>  (2)点右键出现选单选“Add Fields…" ,出现添加字段对话框,选择要添加 </P>
+ e) E1 R1 U1 c<>的字段(该字段将在运行时由DBGrid显示)然后点OK按钮。 </P>
4 V( [5 M9 U" }% D! P+ g<>  </P>
" i/ x4 `) {' ^; k) Z# @<>  (3)假设添加了“日期”字段,点该字段,在属性表中的:DisplayLabel中 </P>
" h* {& d1 l3 F1 r! W5 B) G; J% m<>填入你希望DBGrid显示的字段名。如果原来字段名是英文的,这里用中文名后 </P>& h9 F" h( V: |" E+ `/ r8 Y
<>DBGrid将显示中文名。在DisplayFormat中填入:yyyy-mm-dd,以后日期将按 </P>' i+ e/ Q4 S5 |& B8 |
<>1999-05-28格式显示。 </P>/ S7 x, `, o. P2 K9 r: X
<>  </P>
. p% W' K: D" ?2 A. y<>  二、Tquery控件 </P>
' @# l3 v# S9 H3 a<P>  </P>: J, g$ K/ b/ ^* V- x% u
<P>  Tquery 控件是数据库编程中非常重要的一个控件,它负责通过BDE与数据库 </P>$ @; c3 _& g- Q$ B# X' `" J
<P>建立联系,通过SQL语句方便的建立查询。Query必须建立相应的SQL才能生效。 </P>
" B, C$ _' I+ h: B<P>  </P>5 t6 J1 @* Z8 X: t, g4 p5 y- {
<P>  </P>
5 z0 C1 [0 N# x1 V( E1 F<P>  Tquery的参数设置如下: </P>
1 t7 A" d. p* n2 z  e6 `( \<P>  </P>6 l9 H. _' I: @* ]
<P>  (1)在SQL属性中:Select * from 表名 where 字段名=:变量名 </P>
1 }! v. s2 P8 z, \! J<P>  </P>  W; e  Q$ L+ h  u
<P>  跟在“ : "后面的是变量。这样写后,在参数属性中就可以修改该变量的数 </P>, Q7 {$ |) z! L8 a3 b6 Q
<P>据类型等。 </P>; |; M; G9 R( s; n" i6 ?
<P>  </P>1 E6 v- o- \2 _
<P>  (2)对变量的赋值: </P>; Y1 A. V# s4 B* A1 Q/ c) [2 c9 P
<P>  </P>
& I" h4 F4 S/ I/ w3 J6 @/ j<P>   Query1-〉Active=false; </P>$ W2 a3 B" z7 j" k# q
<P>  </P>
7 ^3 S& {* `1 Y+ o* w<P>   Query1-〉Params-〉Items[0]-〉AsString=Edit1-〉Text; </P>
/ q6 }6 V- |8 M/ ]& H/ j<P>  </P>, Y1 }) N) }5 j+ P
<P>   Query1-〉Active=true;//查找符合变量的记录 </P>, m; `) e9 K) k$ X1 X( |
<P>  </P>- j& U: T3 c" m
<P>  (3)用DBGrid显示结果 </P>
" J8 z- S% N( l3 e- P$ A<P>  </P>. I3 m; `3 j2 B, x. F2 X# {
<P>  DBGrid的DataSource与DataSource1连接,而DataSource1的DataSet与 </P>' W( Q7 X  K. Z# q; \
<P>Tquery1 连接。 </P>
& ?8 n6 o/ l2 b- H2 l<P>  </P>
6 C" x: ?6 {1 s  |/ [# d# d<P>  三、应用示例 </P>, N! z: U  r9 D/ B' m: o  |
<P>  </P>
$ S8 T  D, R+ n& I6 D<P>  通过Query控件嵌入SQL语句建立的查询比Table更简单、更高效。 </P>
' b, `  g  `, F7 B% `<P>  </P>
+ b7 n& b/ P1 m( d; a' q<P>  用一个简单的代码来说明如何建立查询程序: </P>, V. b" G8 C% D- ?& a5 d7 e# I
<P>  </P>
, g! K, a# e3 M0 z; C4 V! W<P>  例如,要建立一个检索表1中书名为book1的程序则在表单上放置DBGrid, </P>
$ g( L9 E6 l& p$ O1 l0 _6 y<P>DataSource,Query三个控件加入以下代码: </P>& E$ \) f' ]! @
<P>  </P>% R3 _8 Z$ q5 U; T( b# N
<P>  DBGrid1-〉DataSource=DataSource1; </P>" j% ^9 q: S1 J4 l9 ^: W
<P>  </P>- x5 u. |$ }! K1 O+ B' \. O
<P>  DataSource1-〉DataSet=Tqery1; </P>
; _' N! p. U6 U6 B* v. T<P>  </P>
! u5 \# i( z3 ^8 Y. f; v7 C- `<P>  Query1-〉Close(); </P>' U" j  M* c, q  g/ |/ V
<P>  </P>
( ~" h' D  t) c<P>  Query1-〉SQL-〉Clear(); </P>. ?- b  A. J, l4 n" A* T+ u1 r
<P>  </P>; z* ~2 M" x6 [2 O
<P>  Query1-〉SQL-〉Add(″Select * From 表 Where (书名=′book1′ ″ </P>
: R' s, {: [+ R& i<P>); </P>
* z: _% E% O" h% i; Z2 l<P>  </P>
/ W. J% G5 E, m( C: m0 `* v<P>  Query1-〉ExecSQL(); </P>0 e! ^  m! s8 z! T
<P>  </P>% c$ w: U: C$ f* J4 D) D- {- I5 ]
<P>  Query-〉Active=true; </P>
/ s* c. q) j5 w2 ^<P>  </P>; l3 a' y2 H2 E! j) T% R
<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-4-20 10:31 , Processed in 0.405479 second(s), 52 queries .

回顶部