QQ登录

只需要一步,快速开始

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

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

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

823

主题

3

听众

4048

积分

我的地盘我做主

该用户从未签到

发帖功臣 元老勋章

跳转到指定楼层
1#
发表于 2005-1-26 12:36 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
<>  </P>2 i# [: ~1 K, h$ D7 t: F
<>杨超 </P>+ \1 r' Z3 p' G! l* Q3 X( Z. H% ~
<>  </P>1 c6 v, }8 g0 ?1 C# P" [2 U
<>  随着数据库的广泛应用,数据库编程已经成为程序设计中发展迅猛的一支。 </P>$ |1 I, v& d" \! _6 Y
<>C++ Builder在数据库开发方面具有的强大功能是无可比拟的,你甚至可以不 </P>
( ?6 o0 c8 ~$ x# J  o<>写一行程序就生成漂亮的数据库程序。 </P>1 V( X' [5 X( L/ Z6 }! M
<>  </P>
- p. W% w* D! g4 h( X<>  下面对C++Builder中的几个数据库VCL的使用技巧做一下介绍: </P>
7 ~2 v3 T/ K2 J* O4 u  g) X<>  </P>) P% Z3 `9 Y0 H. T
<>  一、DBGrid控件 </P>! Q/ f& G) p6 J  t8 g0 G8 r
<>  </P>
- D% }/ d: I( m4 |$ o" l) H; `<>  1.设置DBGrid的字段显示宽度属性 </P>: ]) _) x; {  i4 }! ]$ M) a
<>  </P>4 p5 D& V' P  L# S8 N1 v$ m
<>  为了在DBGrid中建立较小的列,你必须建立一个显示标题,它等于或小于字 </P>4 F) b3 Q, i" k; {. U
<>段值。例如,你希望建立一个只有三个字符宽的列,你的列标题显示必须只有三 </P>4 a) z" I; ~2 }3 C" X2 A
<>个字符或更少。 </P>5 c( X1 Z0 u2 a1 U5 i6 z$ ^
<>  </P>
" Y$ U0 k" ]& n2 A) y* U<>  2.改变DBGrid的显示字段及日期显示格式 </P>
1 n5 i! |" }/ G2 I9 b1 i# \* a<>  </P>3 k+ f- o8 H& ?) N
<>  (1)双击DBGrid对应的Table1,进入字段编辑器。 </P>, s1 b3 O( Q, x7 N8 w+ r
<>  </P>
* }  h0 H5 v- I( l0 E3 r7 R1 x<>  (2)点右键出现选单选“Add Fields…" ,出现添加字段对话框,选择要添加 </P>
& V& b" J' W1 l0 j  J<>的字段(该字段将在运行时由DBGrid显示)然后点OK按钮。 </P>' ~( P  ~9 R3 r
<>  </P>
& V# s6 F+ S6 x: J9 ?$ j4 Y! C<>  (3)假设添加了“日期”字段,点该字段,在属性表中的:DisplayLabel中 </P>) y6 d. [# |( {, z. k1 o& E4 P
<>填入你希望DBGrid显示的字段名。如果原来字段名是英文的,这里用中文名后 </P>
, S0 e& ~- v+ b<>DBGrid将显示中文名。在DisplayFormat中填入:yyyy-mm-dd,以后日期将按 </P>: g: l0 }! N1 G4 L
<>1999-05-28格式显示。 </P>
! B, M- ~2 Y6 b0 E4 I/ B<>  </P>) O- h$ J4 w0 o, y
<>  二、Tquery控件 </P>& w% l9 w0 A/ j) d. @
<P>  </P>1 z+ b- p- w* i8 }: ?0 y; F
<P>  Tquery 控件是数据库编程中非常重要的一个控件,它负责通过BDE与数据库 </P>/ c0 ]! f3 ]* e0 S1 T" c# E  l# Q/ N5 c
<P>建立联系,通过SQL语句方便的建立查询。Query必须建立相应的SQL才能生效。 </P>
# S( _7 z0 Z8 g; ~* g& s3 I<P>  </P>9 L" C6 C% F$ k& s8 ^
<P>  </P>2 X/ O4 H1 x: j/ l% }! p5 X2 {
<P>  Tquery的参数设置如下: </P>3 ?6 g7 }! e4 G
<P>  </P>
0 x- |0 t5 G5 `$ d' V<P>  (1)在SQL属性中:Select * from 表名 where 字段名=:变量名 </P>1 r& b; X" H0 v% d
<P>  </P>
/ P8 U) i# V8 L- n, a& G  }<P>  跟在“ : "后面的是变量。这样写后,在参数属性中就可以修改该变量的数 </P>
# b6 \1 @; {" A3 A# ^<P>据类型等。 </P>
1 }+ r& E1 V: r' y5 v2 k<P>  </P>8 k' l# L1 W+ _/ l6 v6 J  X
<P>  (2)对变量的赋值: </P>+ S* `: l) C5 \
<P>  </P>% n4 C' O% y9 N4 {2 g& [
<P>   Query1-〉Active=false; </P>9 h7 }% w# O! w* g" l+ T+ ?* q: ~8 }
<P>  </P>
* P" L% ~, v0 h; l: A<P>   Query1-〉Params-〉Items[0]-〉AsString=Edit1-〉Text; </P>
* N7 N+ X" a$ Y' {<P>  </P>9 z6 [, p9 @  P" ^1 Q0 v* M8 h/ F
<P>   Query1-〉Active=true;//查找符合变量的记录 </P>) B( q8 ]6 o' D6 l
<P>  </P>
9 \  ?- l& Q& v* D* v<P>  (3)用DBGrid显示结果 </P>0 \. j# z5 e7 D( a5 S, F8 F
<P>  </P>
8 f" m* Z: C% y6 H0 w5 e<P>  DBGrid的DataSource与DataSource1连接,而DataSource1的DataSet与 </P>
; n& {" F' a( V! N) U' e1 {<P>Tquery1 连接。 </P>9 G/ m, C' E) b* h
<P>  </P>
" D  @) |7 {8 r! B( [$ E/ v<P>  三、应用示例 </P>. m( k. g% T" O5 Z
<P>  </P>
) @; L3 J( d: L<P>  通过Query控件嵌入SQL语句建立的查询比Table更简单、更高效。 </P>! z  G! c( u9 l( S: F3 k1 b  x. n8 P
<P>  </P>
& u' J6 y9 E/ A  p; W<P>  用一个简单的代码来说明如何建立查询程序: </P>- Y; p9 e2 X) R1 X
<P>  </P>. n6 y8 L0 P" }8 j
<P>  例如,要建立一个检索表1中书名为book1的程序则在表单上放置DBGrid, </P>
1 @3 F! i$ p4 O: `, m  U, i<P>DataSource,Query三个控件加入以下代码: </P>- f& n0 D1 k5 K! Z: N
<P>  </P># P4 [0 a( r: t9 j$ I
<P>  DBGrid1-〉DataSource=DataSource1; </P>- ^2 R$ V7 O& n# X5 n
<P>  </P>. T4 i% {7 Z) v( K8 U. G
<P>  DataSource1-〉DataSet=Tqery1; </P>& t* K% L% w) y
<P>  </P>; c$ {+ B# g' Y5 @1 w8 C8 f
<P>  Query1-〉Close(); </P>
4 u5 [  f9 w* b8 _+ k<P>  </P>; v9 `3 N4 B. d; B, ^- E3 _/ D
<P>  Query1-〉SQL-〉Clear(); </P>
( B# ?6 C( V5 E<P>  </P>, _, T  P  ~$ A' D: p) q, N0 g+ ~
<P>  Query1-〉SQL-〉Add(″Select * From 表 Where (书名=′book1′ ″ </P>- H* m0 u$ Q' f0 j5 I3 x8 Y+ O
<P>); </P>
# s# h0 ]* T$ c<P>  </P>
8 [, i  w4 Q6 Q6 H: I<P>  Query1-〉ExecSQL(); </P>
7 I0 B& h4 D5 w. }" a# A. D2 H<P>  </P>7 j% I1 i3 }5 V: ^4 Q
<P>  Query-〉Active=true; </P>
9 y2 _) `7 s. l1 s! y<P>  </P>" w* z" l$ e+ k+ Q
<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-6-27 20:04 , Processed in 0.865933 second(s), 51 queries .

回顶部