QQ登录

只需要一步,快速开始

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

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

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

823

主题

3

听众

4048

积分

我的地盘我做主

该用户从未签到

发帖功臣 元老勋章

跳转到指定楼层
1#
发表于 2005-1-26 12:36 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
<>  </P>) X. I) b* T% A  v# E4 @; K
<>杨超 </P>
4 P7 `5 I9 k4 {  |) P<>  </P>2 V' U, ~7 S' X. b2 S
<>  随着数据库的广泛应用,数据库编程已经成为程序设计中发展迅猛的一支。 </P>8 d( n! M, g$ e  V" Z. a& y! h$ E
<>C++ Builder在数据库开发方面具有的强大功能是无可比拟的,你甚至可以不 </P>( g9 b& P. K% U$ `, T6 P+ g
<>写一行程序就生成漂亮的数据库程序。 </P>+ x/ O3 j9 O+ o% @+ k. s1 C1 [
<>  </P>
& \8 e9 j& d8 R1 W/ ]<>  下面对C++Builder中的几个数据库VCL的使用技巧做一下介绍: </P>
- c* j6 }) }  `' x9 I! j4 ?0 Y; p  ~<>  </P>* T. U# j( {; w5 L
<>  一、DBGrid控件 </P>
8 {( F. f+ v. u0 F# t' G<>  </P>, @  B+ b: O$ H. X
<>  1.设置DBGrid的字段显示宽度属性 </P>
% o" ]% X2 p  U7 l2 V" s<>  </P>1 U% k: W* l( {+ ?$ W7 @
<>  为了在DBGrid中建立较小的列,你必须建立一个显示标题,它等于或小于字 </P>
7 n" Q+ Q; T; e3 o9 c' e8 A8 n$ ?7 x1 e<>段值。例如,你希望建立一个只有三个字符宽的列,你的列标题显示必须只有三 </P>
" [7 V, b: d9 p& s5 Y. K<>个字符或更少。 </P>, q" l8 ^; i: R: B; o5 c/ `+ {
<>  </P>8 I0 T! v" E2 ~, t9 O
<>  2.改变DBGrid的显示字段及日期显示格式 </P>. V1 r  @! x0 @$ t
<>  </P>
/ y" U1 c+ |& T' j! @8 @$ m% Y<>  (1)双击DBGrid对应的Table1,进入字段编辑器。 </P>6 W0 l% h; M+ k) V; v  o
<>  </P>0 F0 |' @6 h0 L4 C) O' k: B/ \
<>  (2)点右键出现选单选“Add Fields…" ,出现添加字段对话框,选择要添加 </P>
; [8 ?- |) i, z+ P, n! {<>的字段(该字段将在运行时由DBGrid显示)然后点OK按钮。 </P>
  T( ^& N, {/ e6 P( W<>  </P>7 @, V7 p0 p5 {. K) h" Q9 z
<>  (3)假设添加了“日期”字段,点该字段,在属性表中的:DisplayLabel中 </P>
2 g1 @& o' s& Z& k6 a6 N4 J<>填入你希望DBGrid显示的字段名。如果原来字段名是英文的,这里用中文名后 </P>
) }' n3 m2 ^, d& A8 h, [; S; K5 F<>DBGrid将显示中文名。在DisplayFormat中填入:yyyy-mm-dd,以后日期将按 </P>& @/ N' `' Z; E3 a$ ]
<>1999-05-28格式显示。 </P>% L: O. ^. Y) n& u9 X6 I" c8 l
<>  </P>; c: L2 S& T2 l. y" e+ T
<>  二、Tquery控件 </P>
4 b( c7 J, `( S0 ?/ k; y<P>  </P>
. H* G: k( `3 F* D; l# o! B6 {<P>  Tquery 控件是数据库编程中非常重要的一个控件,它负责通过BDE与数据库 </P>3 ^1 E+ }; v# o7 ]1 I. `3 [
<P>建立联系,通过SQL语句方便的建立查询。Query必须建立相应的SQL才能生效。 </P>
: w' \7 j  N- H+ ]+ d<P>  </P>
& ?3 H( Q# r' b& I2 X( d<P>  </P>: }, O" q$ w# \" T! f# C
<P>  Tquery的参数设置如下: </P>/ V5 s% D( F6 N( ~" `
<P>  </P>2 D; S3 @1 S( U) w7 ?$ P0 `
<P>  (1)在SQL属性中:Select * from 表名 where 字段名=:变量名 </P>3 m" i" _9 ^" V( ~$ y2 r; z$ x
<P>  </P>
9 f: J( |2 B( I4 d: @$ r8 H<P>  跟在“ : "后面的是变量。这样写后,在参数属性中就可以修改该变量的数 </P>
3 H; a" r9 y& X& N* g1 s, ]<P>据类型等。 </P>
+ s1 B/ g% K7 E3 R5 T2 b7 O<P>  </P>
! P' K- d; ^$ ]! `" j' i- J<P>  (2)对变量的赋值: </P>% h% w; ]( w3 ]" \4 V0 Z( i
<P>  </P>
3 f( F' H3 J  X. S/ |<P>   Query1-〉Active=false; </P>- d3 C5 Q- [" V7 o( p$ @. l
<P>  </P>8 q$ V$ P6 p% f& J
<P>   Query1-〉Params-〉Items[0]-〉AsString=Edit1-〉Text; </P>4 ~- L$ X" s7 I% O+ X
<P>  </P>
. H8 A8 z, v0 r9 y" ^8 W<P>   Query1-〉Active=true;//查找符合变量的记录 </P>
! [" [3 N8 V* A8 K1 |# _8 G<P>  </P>
& K+ ^% P% G* B2 g  n<P>  (3)用DBGrid显示结果 </P>6 Z: T! U# s) s1 Z" i1 Q$ y- Q
<P>  </P>
& k( J# ~+ v' ?<P>  DBGrid的DataSource与DataSource1连接,而DataSource1的DataSet与 </P>
4 b- F. c8 H# ]# f& X% ]<P>Tquery1 连接。 </P>+ R# I/ M* W7 A8 A; H# h
<P>  </P>
) i2 `; R$ L" F2 G<P>  三、应用示例 </P>
* B6 P: U# C5 r9 r! @1 P+ y: H<P>  </P>9 w, u: U+ V2 R4 Z- l
<P>  通过Query控件嵌入SQL语句建立的查询比Table更简单、更高效。 </P># H; i7 |7 ?6 _
<P>  </P>3 r2 e; E6 G) @& W- _5 w+ V1 X: F
<P>  用一个简单的代码来说明如何建立查询程序: </P>
8 U9 y+ ^1 n; _/ s5 F' y) v) x( D<P>  </P>( H1 z9 P# n! F8 T% S
<P>  例如,要建立一个检索表1中书名为book1的程序则在表单上放置DBGrid, </P>( J7 J. F* \, ?. w- A/ h$ E9 C
<P>DataSource,Query三个控件加入以下代码: </P>( N* Y  p$ A5 Y) S: t9 y# S% d
<P>  </P>
; t# R4 V, w7 A; J. ~% A" ]+ f, H<P>  DBGrid1-〉DataSource=DataSource1; </P>3 p- J1 M' E" K5 q& X$ w
<P>  </P>
  F; W" K# h7 x1 C% [<P>  DataSource1-〉DataSet=Tqery1; </P>
0 o% [7 p' r, O3 ^  d8 r* c  j9 c3 h3 G<P>  </P>
$ j3 e. Z' X3 K2 V. ~' D, B; G<P>  Query1-〉Close(); </P>
6 C0 q) G* z# a3 D<P>  </P>
3 t7 O' s) H1 \* }+ K) C/ P5 E' T<P>  Query1-〉SQL-〉Clear(); </P>
5 s2 ~0 S9 a! Y0 C: ~' G/ I<P>  </P>
! A+ V& D8 k' T" A8 x; ?* `! B2 p<P>  Query1-〉SQL-〉Add(″Select * From 表 Where (书名=′book1′ ″ </P>
0 P( @* z2 U" c. W- e/ a<P>); </P>
6 g3 E/ s  z- Y<P>  </P>
# f1 h- K/ S$ S( x- R# C<P>  Query1-〉ExecSQL(); </P>$ z/ F! u4 o9 M
<P>  </P>1 E' w9 w! U7 e9 s+ ^
<P>  Query-〉Active=true; </P>
, h6 }  N" ^9 d) I, {& p" f( ]' ^<P>  </P>
1 O! U8 p7 g) e7 j<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 11:59 , Processed in 0.376831 second(s), 51 queries .

回顶部