QQ登录

只需要一步,快速开始

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

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

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

823

主题

3

听众

4048

积分

我的地盘我做主

该用户从未签到

发帖功臣 元老勋章

跳转到指定楼层
1#
发表于 2005-1-26 12:36 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
<>  </P>
! M4 ]+ E/ E0 T7 @& M- k9 U<>杨超 </P>
1 |6 F5 n; {& U) |2 w# Q0 I<>  </P>
  `9 E% v/ o* y9 G5 Y( G4 ~& i<>  随着数据库的广泛应用,数据库编程已经成为程序设计中发展迅猛的一支。 </P>
1 u; }& H. |# \; F, [( C<>C++ Builder在数据库开发方面具有的强大功能是无可比拟的,你甚至可以不 </P>: g. {/ x- D5 T! Q5 e
<>写一行程序就生成漂亮的数据库程序。 </P>
! O1 `  r' Y4 c3 z# z0 x& ]5 _6 T9 s<>  </P>3 S" F; @3 L* b9 F* W
<>  下面对C++Builder中的几个数据库VCL的使用技巧做一下介绍: </P>
9 W" `3 n$ ~, {4 k<>  </P>$ d0 u. u; _; B
<>  一、DBGrid控件 </P>$ s+ x; z2 \7 x, L
<>  </P>+ X0 P4 n  ^5 v0 A" g
<>  1.设置DBGrid的字段显示宽度属性 </P>
7 [' \: G' a5 W9 h' V<>  </P>
- \9 u7 F" B, l: ]4 N/ Z" O$ w8 F<>  为了在DBGrid中建立较小的列,你必须建立一个显示标题,它等于或小于字 </P>$ D/ E- ?/ e5 Z& J) @" P6 s
<>段值。例如,你希望建立一个只有三个字符宽的列,你的列标题显示必须只有三 </P>* Q9 d: P% D/ D' k4 f6 o' e
<>个字符或更少。 </P>
" x4 I" y) S% l& I5 h, P" |2 f<>  </P>
5 Y  m' y& N" N* ]& r  T6 Y# A<>  2.改变DBGrid的显示字段及日期显示格式 </P>
: _: [! j- T9 l7 U0 }; y/ {/ B) f<>  </P>
, X8 U+ T, I7 \3 V" ~4 F. G+ ]<>  (1)双击DBGrid对应的Table1,进入字段编辑器。 </P>
8 k9 S5 K  o# t* J<>  </P>
# C( C& b- [8 ^3 t/ M' V<>  (2)点右键出现选单选“Add Fields…" ,出现添加字段对话框,选择要添加 </P>* G9 t0 u8 z( P' c- S
<>的字段(该字段将在运行时由DBGrid显示)然后点OK按钮。 </P>
9 e/ v3 G6 G/ ]( T<>  </P>
; U, Y% e8 U, R. I: Q<>  (3)假设添加了“日期”字段,点该字段,在属性表中的:DisplayLabel中 </P>
* `' s8 T. @/ v0 M* h) K$ ^* M* B<>填入你希望DBGrid显示的字段名。如果原来字段名是英文的,这里用中文名后 </P>+ w  K( `6 `1 U% _
<>DBGrid将显示中文名。在DisplayFormat中填入:yyyy-mm-dd,以后日期将按 </P>4 X; W4 s# U. \, I0 A' ]
<>1999-05-28格式显示。 </P>
7 b: K4 Q4 k$ g# @" I<>  </P>
  l# ^& J: T& I4 M& ?. |1 l9 v# Z  \<>  二、Tquery控件 </P>
" f7 f6 ]* D3 J" M! F<P>  </P>9 l% P4 d: J% D$ e; e% I
<P>  Tquery 控件是数据库编程中非常重要的一个控件,它负责通过BDE与数据库 </P>% f) @4 j5 D0 T1 t2 [& B8 ]% r( S
<P>建立联系,通过SQL语句方便的建立查询。Query必须建立相应的SQL才能生效。 </P>4 r4 \( `" x' x+ I
<P>  </P>
- W! A; N2 V( f# ]$ Q& Y2 _<P>  </P>+ `2 V2 E# k/ s3 P, S- a
<P>  Tquery的参数设置如下: </P>
0 I# U( F9 I: n& c8 {) m9 z<P>  </P>/ _) C" k3 D3 w, n) G& K! X
<P>  (1)在SQL属性中:Select * from 表名 where 字段名=:变量名 </P>/ l' R. u' S$ c9 z- ?
<P>  </P>
4 R4 E+ K; F4 ^$ e' Q<P>  跟在“ : "后面的是变量。这样写后,在参数属性中就可以修改该变量的数 </P>, X8 E  O' K5 f5 i6 `
<P>据类型等。 </P>
3 ?: e/ e2 |  l, G7 e<P>  </P>
* {; T6 ]' {( q# D<P>  (2)对变量的赋值: </P>* f  w, @6 p: z5 ]7 F
<P>  </P>
! T1 N4 M6 J! U/ y! F& L4 u* ~) \<P>   Query1-〉Active=false; </P>. k- P4 z3 R$ f' I: ^
<P>  </P>
* y4 o5 o4 }& o7 H0 q) W& v<P>   Query1-〉Params-〉Items[0]-〉AsString=Edit1-〉Text; </P>3 u9 x  C2 {. ?; E: D
<P>  </P>
1 i  E) E& Y0 ?; X$ R! t+ P; P<P>   Query1-〉Active=true;//查找符合变量的记录 </P>
, S' ^5 |, L/ H# [$ @: R+ V+ i<P>  </P># S; y7 k9 j" ]- l
<P>  (3)用DBGrid显示结果 </P>9 D2 g& j( Q2 v! l9 x7 p$ d2 |
<P>  </P>( p* L2 z/ ]( q" N9 Y9 G, g* u
<P>  DBGrid的DataSource与DataSource1连接,而DataSource1的DataSet与 </P>, Y6 @. H8 G7 H& p3 m: k
<P>Tquery1 连接。 </P>
; O8 @4 Q2 z* R3 K6 B<P>  </P>
6 e  M8 @3 l7 G- E# j& K<P>  三、应用示例 </P>
6 H0 s$ _% ^6 Q: g/ \<P>  </P>9 H  m6 h2 j0 z  {
<P>  通过Query控件嵌入SQL语句建立的查询比Table更简单、更高效。 </P>
9 o2 L9 [7 P+ B; M) [! ^$ Z; ~<P>  </P>
: [: t( [$ U# L8 d1 N/ a<P>  用一个简单的代码来说明如何建立查询程序: </P>
* ], u2 Q0 o8 T0 t<P>  </P>
9 v; f7 I( S6 w% J& j<P>  例如,要建立一个检索表1中书名为book1的程序则在表单上放置DBGrid, </P>
% H9 y4 l7 l, e  E* Z<P>DataSource,Query三个控件加入以下代码: </P>
; C+ b' r1 P+ e<P>  </P>
" V* R0 S  `8 d' m" U" a# T9 D<P>  DBGrid1-〉DataSource=DataSource1; </P>$ E5 f8 X3 M5 c5 L
<P>  </P>
; V: n) b0 b/ P<P>  DataSource1-〉DataSet=Tqery1; </P>, o3 K" }- J7 R
<P>  </P>
6 k* r- ^  H: l3 Q+ o+ e7 Q' ~: q5 a<P>  Query1-〉Close(); </P>1 {6 c  U; l2 q2 Y. L! h6 p, a1 ^
<P>  </P>7 {$ Q4 t3 D) K" n8 N
<P>  Query1-〉SQL-〉Clear(); </P>; H% N: D4 y1 E* v. I/ M
<P>  </P>
' U7 ?$ I# G3 C. I3 A% A2 f<P>  Query1-〉SQL-〉Add(″Select * From 表 Where (书名=′book1′ ″ </P>2 t1 q' T$ k2 U' K2 }
<P>); </P>
0 w  C* S# e2 a* d1 p<P>  </P>! o, |# y5 `+ C4 R3 |5 t
<P>  Query1-〉ExecSQL(); </P>
: j2 u/ w( S% G8 [<P>  </P>
* V, @" f; P, }4 i<P>  Query-〉Active=true; </P>
. @# ^1 `, T. Y$ A+ \, ^# K/ R8 n<P>  </P>; B( h8 }# N8 j; [9 u7 _
<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-19 19:39 , Processed in 0.351189 second(s), 51 queries .

回顶部