QQ登录

只需要一步,快速开始

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

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

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

823

主题

3

听众

4048

积分

我的地盘我做主

该用户从未签到

发帖功臣 元老勋章

跳转到指定楼层
1#
发表于 2005-1-26 12:36 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
<>  </P>" d4 g( ]5 {8 k( [3 X
<>杨超 </P>( N' P3 g9 u) M0 ]
<>  </P>3 j0 B; c$ K! l4 e& B4 a3 b2 J5 l3 [
<>  随着数据库的广泛应用,数据库编程已经成为程序设计中发展迅猛的一支。 </P>
5 n* j3 {- E6 R<>C++ Builder在数据库开发方面具有的强大功能是无可比拟的,你甚至可以不 </P>
: C3 ^  @, n) U9 I<>写一行程序就生成漂亮的数据库程序。 </P>) g5 g& `) ?8 n. e, q
<>  </P>+ p- Q5 V5 d' M3 q" q0 L
<>  下面对C++Builder中的几个数据库VCL的使用技巧做一下介绍: </P>: T2 l, w7 d) l! Q+ e
<>  </P>
+ z8 E# `1 z. z( I9 p, v<>  一、DBGrid控件 </P>
9 ]3 ~2 y$ O) E- U# R<>  </P>
: D; X/ |+ P* }& p1 S<>  1.设置DBGrid的字段显示宽度属性 </P>
# D9 C3 J8 G/ _- F, `9 f<>  </P>
: C& o  ~: O2 ]% Q<>  为了在DBGrid中建立较小的列,你必须建立一个显示标题,它等于或小于字 </P>
* f6 Z$ u, k: }9 R5 m<>段值。例如,你希望建立一个只有三个字符宽的列,你的列标题显示必须只有三 </P>8 }4 g' \' x- f  |3 _: W+ ?# X
<>个字符或更少。 </P>
) Y; M7 g6 Q' h/ o' Y) K# a<>  </P>9 l3 u$ |+ `- N- z" i5 w
<>  2.改变DBGrid的显示字段及日期显示格式 </P>
5 C( b( _! T: v6 _: E( S<>  </P>5 g, U- V# O% x, h* k
<>  (1)双击DBGrid对应的Table1,进入字段编辑器。 </P>
& |, p! y) D- s) \! Y7 A6 p# T<>  </P>
/ n0 |( [* v$ z; ]# e4 g+ n<>  (2)点右键出现选单选“Add Fields…" ,出现添加字段对话框,选择要添加 </P>; }0 r( i5 C; b0 w
<>的字段(该字段将在运行时由DBGrid显示)然后点OK按钮。 </P>
" T# I  ?0 @: H<>  </P>
1 c+ K9 o4 @* J2 z<>  (3)假设添加了“日期”字段,点该字段,在属性表中的:DisplayLabel中 </P>7 \" |& \' Q5 W7 y* {
<>填入你希望DBGrid显示的字段名。如果原来字段名是英文的,这里用中文名后 </P>5 F- ]8 n: F  p5 N- S2 W: y
<>DBGrid将显示中文名。在DisplayFormat中填入:yyyy-mm-dd,以后日期将按 </P>9 w, Z7 J/ K, e+ j. a% U1 l
<>1999-05-28格式显示。 </P>4 f* v# G: z5 r! z
<>  </P>
/ C6 w1 y. ?' s! M) E' l<>  二、Tquery控件 </P>' B. G6 c2 v. `5 O: y4 o
<P>  </P>
% y* T, g8 @. J<P>  Tquery 控件是数据库编程中非常重要的一个控件,它负责通过BDE与数据库 </P>3 J7 N# E$ i' b! j2 q5 ?! `3 X/ _
<P>建立联系,通过SQL语句方便的建立查询。Query必须建立相应的SQL才能生效。 </P>9 @3 A7 E- K' e6 |+ W* [
<P>  </P>9 V/ B) G' f! Z+ S
<P>  </P>4 ~4 f- M& g, o; |9 F
<P>  Tquery的参数设置如下: </P>3 R+ w# s& d0 I+ h8 C+ a7 {' v
<P>  </P>
8 G& S$ {  I- l; K0 F& N<P>  (1)在SQL属性中:Select * from 表名 where 字段名=:变量名 </P>; c9 h. g6 R* }, E) `
<P>  </P>7 X9 p+ l4 j- `; [2 L
<P>  跟在“ : "后面的是变量。这样写后,在参数属性中就可以修改该变量的数 </P>
/ e2 |4 |4 {. H1 n3 M<P>据类型等。 </P>7 A% C" t! R4 R  j2 Y! W3 J" V
<P>  </P>; l% {* s# S; m9 ?% y: C
<P>  (2)对变量的赋值: </P>
+ K; j. D4 c- a- [( g: O9 i<P>  </P>/ E& u& ?* P3 I, w8 a3 \7 ~0 q
<P>   Query1-〉Active=false; </P>: y% z2 [- ^/ \  m: j; A- \! D: x
<P>  </P>+ k  w9 e! |5 a1 ?" |
<P>   Query1-〉Params-〉Items[0]-〉AsString=Edit1-〉Text; </P>
) G8 A/ r, }0 d+ a7 V0 \<P>  </P>
% c! A$ e  M  J, {% }<P>   Query1-〉Active=true;//查找符合变量的记录 </P>
) B/ e$ _% L; v" S' ?9 j<P>  </P>
& D( ]) u' q5 G' `- e) ?$ [! g<P>  (3)用DBGrid显示结果 </P>+ v  Y7 q* i# J; A- U/ H" s
<P>  </P>9 ]) u! C' f5 ^! c' A' f
<P>  DBGrid的DataSource与DataSource1连接,而DataSource1的DataSet与 </P>* z/ z% @7 Z+ g) V9 p
<P>Tquery1 连接。 </P>
( N6 F: {' F, Q; Q0 u$ c4 S<P>  </P>
" Q9 B0 x* m" t/ R  d<P>  三、应用示例 </P>
( i, V1 {% b% f- h% y' q. H9 W* \<P>  </P>
8 |$ L, e( u* V2 B. u- W8 ?<P>  通过Query控件嵌入SQL语句建立的查询比Table更简单、更高效。 </P>
1 p+ U8 w7 j' |- N. s. }<P>  </P>) m6 V5 t$ r6 H2 P# J6 G" l
<P>  用一个简单的代码来说明如何建立查询程序: </P>
7 Y% N) @' |: \& w1 w+ S! L<P>  </P>
. i# Q! u1 T" T0 k9 Z<P>  例如,要建立一个检索表1中书名为book1的程序则在表单上放置DBGrid, </P>
8 s4 d* |9 a2 T; O8 U" x& f<P>DataSource,Query三个控件加入以下代码: </P>
; u2 o4 U& o$ D6 d4 \4 S<P>  </P>7 [  h1 V6 U0 n. K( [5 U) G! R7 k
<P>  DBGrid1-〉DataSource=DataSource1; </P>4 X7 `! d9 H5 E* }3 ~
<P>  </P>, O' w& f. c- ^. b7 v! S* V
<P>  DataSource1-〉DataSet=Tqery1; </P># c5 e2 v) `9 h8 D( D$ n
<P>  </P>: ?5 j! D# h2 ~7 ]
<P>  Query1-〉Close(); </P># O- C% y5 _7 N% A: y. s3 H4 w
<P>  </P>
; i& u$ t0 ^7 J+ u( \7 @<P>  Query1-〉SQL-〉Clear(); </P>9 v% j$ K; j9 o! X9 u
<P>  </P>
) @8 p* S' J# M6 D( ~- v  l  w, `<P>  Query1-〉SQL-〉Add(″Select * From 表 Where (书名=′book1′ ″ </P>& U9 h, I& b5 G
<P>); </P>7 m+ p9 N8 Z) M0 f8 w1 \
<P>  </P>4 w4 o4 n+ g% H3 p! |
<P>  Query1-〉ExecSQL(); </P>
3 m' H5 y5 }0 e<P>  </P>2 {, ~+ q6 x2 c$ X0 C; h% [+ k
<P>  Query-〉Active=true; </P>) }2 ~. L( ]' G* i( e0 x8 s5 j* N
<P>  </P>: }) ^/ A6 c! P1 {/ C! S/ h
<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-12-29 22:33 , Processed in 0.535291 second(s), 51 queries .

回顶部