QQ登录

只需要一步,快速开始

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

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

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

823

主题

3

听众

4048

积分

我的地盘我做主

该用户从未签到

发帖功臣 元老勋章

跳转到指定楼层
1#
发表于 2005-1-26 12:36 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
<>  </P>5 c% j* R' R! U# _
<>杨超 </P>- d. Z6 J  j% M& t+ D3 o, e
<>  </P>7 r" c6 q, V, G4 r! d: j" Y# Q
<>  随着数据库的广泛应用,数据库编程已经成为程序设计中发展迅猛的一支。 </P>! @; ]7 W  R5 z9 ^( a8 r, p& q+ d
<>C++ Builder在数据库开发方面具有的强大功能是无可比拟的,你甚至可以不 </P>2 m0 ?  u2 ~. _* I. y. a# S
<>写一行程序就生成漂亮的数据库程序。 </P>
$ V  K. T; d2 T; O5 r( f<>  </P>+ t" P2 ~+ V/ e- ?6 Z
<>  下面对C++Builder中的几个数据库VCL的使用技巧做一下介绍: </P>( C) U5 p- K( L
<>  </P>2 u7 p+ o3 ^+ ^/ y9 i- u
<>  一、DBGrid控件 </P>
0 F$ T! J3 G2 J<>  </P>  t. ^# d2 e1 E; A; b* V: x
<>  1.设置DBGrid的字段显示宽度属性 </P>
# A/ R) F9 Z& M: r" U<>  </P>
5 z8 u1 q. e% V; l* @' O" B& u<>  为了在DBGrid中建立较小的列,你必须建立一个显示标题,它等于或小于字 </P>
9 C7 a. D. I( [7 b; d<>段值。例如,你希望建立一个只有三个字符宽的列,你的列标题显示必须只有三 </P>8 H3 ~2 o3 B& }0 ^9 K
<>个字符或更少。 </P>
2 E; ]9 X. q0 y. D6 j% T* |<>  </P>& l) ~. m! G" S3 T
<>  2.改变DBGrid的显示字段及日期显示格式 </P>/ }7 E) ?* B8 P% g
<>  </P>3 {/ }% W5 C8 g" Y6 W" i
<>  (1)双击DBGrid对应的Table1,进入字段编辑器。 </P>
5 L/ ~7 E4 E3 e  e. ~; s+ t<>  </P>& m1 X; F7 ?% M3 l/ ?& M, q
<>  (2)点右键出现选单选“Add Fields…" ,出现添加字段对话框,选择要添加 </P>
" `" O, ?* f1 f. G# f# ^0 q. R, K5 v<>的字段(该字段将在运行时由DBGrid显示)然后点OK按钮。 </P>( ^; E- H4 w+ Q8 a4 g
<>  </P>
1 Z3 B! k7 r3 G: y+ {<>  (3)假设添加了“日期”字段,点该字段,在属性表中的:DisplayLabel中 </P>( V' ]0 U$ D: w5 v3 l/ ~1 |! [
<>填入你希望DBGrid显示的字段名。如果原来字段名是英文的,这里用中文名后 </P>+ Q* }+ H8 o' U
<>DBGrid将显示中文名。在DisplayFormat中填入:yyyy-mm-dd,以后日期将按 </P>
  ^; E, @  m+ l: J' L4 X) l8 ]/ n7 |3 B; }<>1999-05-28格式显示。 </P>1 i3 x5 z; N$ j0 I7 [) F+ k
<>  </P>% G# m6 g# B( h; I- t
<>  二、Tquery控件 </P>' h' s( ~8 \5 o. K( U; g
<P>  </P>2 K9 k. C6 \9 U9 g0 e
<P>  Tquery 控件是数据库编程中非常重要的一个控件,它负责通过BDE与数据库 </P>7 f  X; T9 w' a, p# i2 j: S
<P>建立联系,通过SQL语句方便的建立查询。Query必须建立相应的SQL才能生效。 </P>
# d  X- J9 D6 ~' d! p" b) ?<P>  </P>1 D- Y' V: u* ^
<P>  </P>3 |5 O7 p7 f  E& ^
<P>  Tquery的参数设置如下: </P>4 T' R# h# S& D) I+ ?. _6 \1 `, h
<P>  </P>  g6 C+ d7 U% K
<P>  (1)在SQL属性中:Select * from 表名 where 字段名=:变量名 </P>
4 E/ M. y" {8 W# t' U5 T<P>  </P>! i- l+ F/ s$ P7 O5 [7 }" i  J, Q
<P>  跟在“ : "后面的是变量。这样写后,在参数属性中就可以修改该变量的数 </P>' Y9 e# d* v+ |) z2 f
<P>据类型等。 </P>
! g9 t# }* a4 [" Z<P>  </P>
6 W1 A  Z8 x/ b* i<P>  (2)对变量的赋值: </P>% B/ a: i; x1 r0 g# W4 k0 d
<P>  </P>5 a) I5 L: ?; ]' G9 G, C
<P>   Query1-〉Active=false; </P>2 Q, W' z: P  ^7 {1 n  N8 z
<P>  </P>* X3 A: U" B5 u/ M+ P3 y9 z
<P>   Query1-〉Params-〉Items[0]-〉AsString=Edit1-〉Text; </P>
( U+ E7 u. C& g2 F6 [4 s3 @0 O/ x<P>  </P>
0 v" |' h6 P; H<P>   Query1-〉Active=true;//查找符合变量的记录 </P>
8 b' Z7 y8 h8 C# ]: U' p<P>  </P>
1 M6 b/ D  d  q9 ~  ~<P>  (3)用DBGrid显示结果 </P>
8 ]2 Y2 n- c' d<P>  </P>: \! o/ n3 t; Q8 [2 Q
<P>  DBGrid的DataSource与DataSource1连接,而DataSource1的DataSet与 </P>$ m) n+ g2 B# P! \; Z% e
<P>Tquery1 连接。 </P>2 c$ ~0 w5 {( I& L, S: G
<P>  </P>) {( c" g- |- H9 D# ]
<P>  三、应用示例 </P>
" N2 ^2 A; R! |" S) W# j<P>  </P>
! o, D( v5 B0 w$ }<P>  通过Query控件嵌入SQL语句建立的查询比Table更简单、更高效。 </P>8 D7 x0 Q+ G7 _$ Y0 k+ I
<P>  </P>
9 U) f7 W9 ?# U" x<P>  用一个简单的代码来说明如何建立查询程序: </P>
, _0 F% R' `# K' _% Y<P>  </P>+ O/ ?: a  N! k+ I% y
<P>  例如,要建立一个检索表1中书名为book1的程序则在表单上放置DBGrid, </P>
$ U8 I. Z. u9 v" t" R<P>DataSource,Query三个控件加入以下代码: </P>- L+ C5 q+ p5 I# Y3 S2 u* T
<P>  </P>
7 |. c/ Z; ?: v' Z$ w* j6 R<P>  DBGrid1-〉DataSource=DataSource1; </P>6 M( {5 \3 G5 H1 P$ N. y, C
<P>  </P># O+ L$ t* ]+ Q- w4 L. w  m
<P>  DataSource1-〉DataSet=Tqery1; </P>
2 l0 d5 y# Y/ _9 M9 A5 B<P>  </P>
% ~7 A* x) n) w; h, V3 L- d4 f<P>  Query1-〉Close(); </P>
0 u. g1 e; W; \) T1 o( n8 i<P>  </P>+ F: X2 J! N# c4 v3 C  O* L7 j' F
<P>  Query1-〉SQL-〉Clear(); </P>2 V6 e" J4 Y$ y: i! _
<P>  </P>5 A, T% A- M( s$ }+ h' D: o+ {
<P>  Query1-〉SQL-〉Add(″Select * From 表 Where (书名=′book1′ ″ </P>
* ?( M/ ~) i, M( c<P>); </P>
) o! j( K/ c1 k6 Z! ]<P>  </P>- K0 y$ H+ A; N! f. |! b0 G
<P>  Query1-〉ExecSQL(); </P>
5 |7 W# g2 q# ~9 x<P>  </P>
- K7 n1 C1 g) _5 ~# W% {<P>  Query-〉Active=true; </P>8 j5 x! Q1 h$ g$ ]# J3 o
<P>  </P>' b9 A- J( H: Q5 ]' y' C6 c
<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-9-14 23:10 , Processed in 0.681632 second(s), 51 queries .

回顶部