QQ登录

只需要一步,快速开始

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

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

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

823

主题

3

听众

4048

积分

我的地盘我做主

该用户从未签到

发帖功臣 元老勋章

跳转到指定楼层
1#
发表于 2005-1-26 12:36 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
<>  </P>
  M, j2 W2 f! G) Q, I  a<>杨超 </P>
" E6 Q1 E* W- _8 z1 k5 S( x, [<>  </P>8 A% y! Z0 G9 e) G) A: Q) T+ l
<>  随着数据库的广泛应用,数据库编程已经成为程序设计中发展迅猛的一支。 </P>
: ~9 w0 J, s; f& l<>C++ Builder在数据库开发方面具有的强大功能是无可比拟的,你甚至可以不 </P>
1 H) w( f4 ]; b, T- N. r) e<>写一行程序就生成漂亮的数据库程序。 </P>
; K/ ~) O# c$ x, ~+ l: l6 _<>  </P>3 h4 V3 |( F9 n4 p5 q1 Q
<>  下面对C++Builder中的几个数据库VCL的使用技巧做一下介绍: </P>5 L. T" h5 Z) t0 y) U$ A: t
<>  </P>7 y& I# F1 A! O5 ~/ K- Y
<>  一、DBGrid控件 </P>/ D; q# I  T; G1 [- w
<>  </P>
/ ~7 P; K4 ~/ C<>  1.设置DBGrid的字段显示宽度属性 </P>
; l9 z1 w! y) B$ e  l- d5 ?<>  </P>7 n; w# W+ i% Z# O9 z% R0 h, g( e
<>  为了在DBGrid中建立较小的列,你必须建立一个显示标题,它等于或小于字 </P>
5 l. K  h& ]! |1 O<>段值。例如,你希望建立一个只有三个字符宽的列,你的列标题显示必须只有三 </P>! Z: w8 Z) |1 b5 ]
<>个字符或更少。 </P>5 S9 Z3 m& w  I) ~
<>  </P>
  C7 w+ c7 V7 t* l: e' a3 X<>  2.改变DBGrid的显示字段及日期显示格式 </P>+ S. e" R* ^( O, Z
<>  </P>4 M! N0 _. P2 A: y* n$ A
<>  (1)双击DBGrid对应的Table1,进入字段编辑器。 </P>& K  n9 T+ M) W, G8 a
<>  </P>
# }: ^2 f7 Z' w' Z. V2 z9 K# p<>  (2)点右键出现选单选“Add Fields…" ,出现添加字段对话框,选择要添加 </P>
& @, Y+ {6 i) `$ [( r<>的字段(该字段将在运行时由DBGrid显示)然后点OK按钮。 </P>
1 e0 i7 x1 E  X: \6 s<>  </P>
* T6 ~, ^" u* S. O% a) R. p6 h<>  (3)假设添加了“日期”字段,点该字段,在属性表中的:DisplayLabel中 </P>
6 g' J/ T: I1 M, v6 _<>填入你希望DBGrid显示的字段名。如果原来字段名是英文的,这里用中文名后 </P>0 j0 l" S. x3 _) E
<>DBGrid将显示中文名。在DisplayFormat中填入:yyyy-mm-dd,以后日期将按 </P>  l: R( n3 t: Q  T
<>1999-05-28格式显示。 </P>
; H% n! q) i5 t<>  </P>9 U+ P* o. z2 p
<>  二、Tquery控件 </P>
2 L  z0 r# r. j& F' o& s( r2 i5 r) T<P>  </P>
2 ?3 w8 b0 S/ M5 g5 B<P>  Tquery 控件是数据库编程中非常重要的一个控件,它负责通过BDE与数据库 </P>! e- f1 d# ?& y: ^, b5 x( x
<P>建立联系,通过SQL语句方便的建立查询。Query必须建立相应的SQL才能生效。 </P>
- y! S6 o% @/ O<P>  </P>; g/ e$ ^, M  X" U. ], z7 O* X
<P>  </P>6 \- I2 {' k5 }0 N0 Q* {
<P>  Tquery的参数设置如下: </P>$ L& p0 d$ y" e: i6 M+ q  t
<P>  </P>
% E7 Y% K/ W% N9 a<P>  (1)在SQL属性中:Select * from 表名 where 字段名=:变量名 </P>1 W0 Y4 R8 o' `: p; e. k
<P>  </P>, _2 w& Z9 d2 T! E! ~2 `
<P>  跟在“ : "后面的是变量。这样写后,在参数属性中就可以修改该变量的数 </P>4 D) Q  {% s, s" t/ M6 `
<P>据类型等。 </P>8 ]( l& c, h' P% H6 g; s
<P>  </P>
1 h* T3 ^7 Y4 t9 {  G3 B, w  l<P>  (2)对变量的赋值: </P>! f& Y2 U" P1 \
<P>  </P>
) F' y6 h3 l0 [; c8 n) }8 F: L<P>   Query1-〉Active=false; </P>
/ |& e5 C7 H9 O1 g* t1 a<P>  </P>
1 c$ \3 z, ^8 W/ ^2 \5 I; r' A<P>   Query1-〉Params-〉Items[0]-〉AsString=Edit1-〉Text; </P>
! l5 Z' W1 |. u* I<P>  </P>
( M; P( Q$ j# |9 X  b4 Y2 ~<P>   Query1-〉Active=true;//查找符合变量的记录 </P>* F  v. t; a; S$ q  o, H7 \1 h
<P>  </P>1 ~( M* n: \8 i# g! s  f, u
<P>  (3)用DBGrid显示结果 </P>! z/ X2 Z: U" E: P
<P>  </P>
& Y/ O. R7 Y; \5 Z( Z* Z# p<P>  DBGrid的DataSource与DataSource1连接,而DataSource1的DataSet与 </P>
; R5 ~: }- L1 K; g! n$ j<P>Tquery1 连接。 </P>
3 ]4 E3 z6 b5 d# v<P>  </P>
! s! u0 a# r( ?' Z. l% \* f+ h) l<P>  三、应用示例 </P>: ]$ P  r/ i  n" S  J2 z$ L7 d- E
<P>  </P>  G$ d* p2 w6 d( ^# D5 L/ v
<P>  通过Query控件嵌入SQL语句建立的查询比Table更简单、更高效。 </P>" b6 M9 v) r( \9 X, H0 X$ o$ X
<P>  </P>) z- X2 K2 T: b9 h
<P>  用一个简单的代码来说明如何建立查询程序: </P>
. J: I1 N- ]& G* b, {/ \<P>  </P>
, _# u( F- D  ~' \7 x<P>  例如,要建立一个检索表1中书名为book1的程序则在表单上放置DBGrid, </P>& g/ R( f( S$ j6 w; b7 C0 V
<P>DataSource,Query三个控件加入以下代码: </P>
' ^& K* ?  h0 e, i4 m1 k7 m<P>  </P>$ ]7 C0 R* h" c' L1 S
<P>  DBGrid1-〉DataSource=DataSource1; </P>; [$ [; ]! f% @: Z/ n$ w
<P>  </P>
. f8 L8 _, w, A" e<P>  DataSource1-〉DataSet=Tqery1; </P>( Z# I2 E% S2 }. S* @/ A3 d' B& ^' K
<P>  </P>
+ `! p% L2 G6 I# Z<P>  Query1-〉Close(); </P>' J6 `' t, }( {- }0 @2 g# }5 q
<P>  </P>
  T+ s" _4 \) W+ t' \# K6 b<P>  Query1-〉SQL-〉Clear(); </P>" [5 r9 n' D+ N7 h! |; d: z
<P>  </P>
( l7 ?) R% h0 Y) O6 C8 B, z& K' q$ i4 K<P>  Query1-〉SQL-〉Add(″Select * From 表 Where (书名=′book1′ ″ </P>  y  S: B- ?& J0 c# {
<P>); </P>
7 |# }' k" [; k<P>  </P>; P& r& i4 |' A  n$ a
<P>  Query1-〉ExecSQL(); </P>
/ d9 {- k- S" Y; l+ a0 U<P>  </P>2 Z( a8 e9 q: t
<P>  Query-〉Active=true; </P>5 S2 n. @: J' Y% B0 I6 a5 y
<P>  </P>
  }. \! v8 b# u; f<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-10 21:33 , Processed in 0.415708 second(s), 51 queries .

回顶部