关于数据库的操作4 M. T1 T+ F* C8 t: N1 y9 s0 n& u4 M
1 新建:(1)鼠标操作:“文件”→“新建” →勾选“数据库” →“新建文件”。
" p. H2 k( {& c' Y6 h (2)命令操作:Create database [数据库名]# t/ c0 f, h5 \8 K# F. O8 p1 a
★当“数据库名”省略时,会弹出创建对话框。' E, [- \( r7 y& i
(3)安全检查:set safety on/off (新建数据库与原数据库重名时,是否询问)
0 Z% S% V& T1 A2 g ★用鼠标操作会自动打开数据库设计器 ★而命令操作仅仅是创建数据库,不直接出现该设计器。
5 T0 X8 [0 a7 L& `5 v7 Y# e8 g 2 打开:(1)鼠标操作:“文件”→“打开” →在文件类型中选“数据库”。
Y) @/ y- L; m, ^) P3 f; z0 { (2)命令操作:open database [数据名]………………..
' W# }: `4 A" I2 I ★当“数据库名”省略时,会弹出打开对话框。( a$ k9 h, ~. W
省略号处是一些可选项,可选项如下:7 V- ]! Z9 d! M5 q; p
⊙EXCLUSIVE | SHARED:以独占方式打开 | 以共享方式打开。
7 S7 h6 r7 b& I& O. k ⊙NOUPDATE:以只读方式打开。+ u3 m8 Q1 G5 M$ P2 J1 c% C
默认值(即不写noupdate)是以读/写方式,也为共享方式。
2 o, V' {7 A/ ?3 _ ★以上可选项若在鼠标操作方式时都可以在‘打开’对话框中设置& F$ G% W/ K2 J
★为何要有‘独占’数据库?只有在独占的方式下才能清理数据库
: u' }: b+ ]/ A0 y4 O$ f ★用鼠标方式打开会同时打开数据库设计器 ★而命令操作仅仅是打开数据库,也不直接出现该设计器。, E5 U3 E e0 N
3 修改:(1)鼠标操作:等同于‘打开’操作! g% K6 w) I. P
(2)命令操作:modify database [数据库名] ………
3 x' B- b, ~, E5 ~5 K( d ★当“数据库名”省略时,则对当前数据库进行修改。
# @0 d4 Y1 v. K( s# x- n 省略号处是一些可选项,可选项如下:) t- e: x2 F X
⊙NOWAIT:在程序中使用,打开数据库设计器后不暂停,主要为了程序连贯,实现无人职守。
. b6 N0 i6 V0 J* h0 ~* J3 s9 \! O ⊙NOEDIT:只打开数据库设计器,禁止对其进行修改# E0 r+ \. x) z
★其实一条modify database就可以完成:
: \& ]+ ~4 I0 b( b- T Create database + open database +moddify database 三条命令的功能& o9 L. l) H6 r1 M9 t! x8 x6 u
4 关闭:(1)鼠标操作:单击数据库设计器右上角的“ ”。仅仅只是隐藏该数据库,不是真正的关闭
: K" d) J' G7 H0 h5 S/ a. u4 l' Y" J1 m (2)命令操作:close database6 H( W h8 V/ k! A. D7 Y' _$ r+ z, b
注意:这里后面不能加数据库名,他的作用就只是关闭当前数据库
6 _* u1 Y G4 G- Q& v3 a2 { ★当已经打开多个数据库时,若想关闭其他的数据库,可以设置它为当前数据库即可,方法有:
8 q8 m/ u4 N4 C$ W (1)鼠标操作:在工具栏的数据库下拉框中直接选
9 n. U% l0 l5 L" |: e- h (2)命令操作:set database to [数据库名]% p7 w# h6 q8 O# u. U: X
★如不加名字,就会把所有都设置为非当前数据库
% ^. m- ?+ F& d, X ★close all 关闭所有文件& B7 V6 w2 Z7 s. p7 s c; }- c
5 删除:(1)鼠标操作:打开项目管理器→“数据”选项卡→单击“数据库”前面的‘+’号→在其中选中目标数据库→单击“移去”。' h" E0 C' n9 B2 p$ q
(2)命令操作:DELETE DATABASE 数据库名……
' W, D+ B. d1 C9 ]5 j) k( }4 c 省略号处是一些可选项,可选项如下:$ x7 {& D! C( t8 B
⊙deletetables:删除数据库的同时把其中所含表也删除。
, `0 U+ T; J# Y# P9 S% O ⊙recycle:将被删除的文件暂时放于回收站,以后要是后悔,还可以还原。
& k) D m R& p9 P/ A2 I ★鼠标操作无法在删除数据库的同时删除表。" x8 W4 R/ K4 f
★如果安全检查设置为set safety on会提示“真的删除吗”。
0 W2 k" G- K7 t' ~ 关于表
9 z) C( O9 J7 n) c 表分为数据库表和自由表 不论哪种表都是由结构部分和内容部分组合而成的。! {' R8 h1 [0 X! E+ h8 |( j
一 关于数据库表:) _# |5 Y5 N6 D$ ~
在某个数据库处于打开状态并且是当前数据库时,创建的表就是此数据库的一个数据库表。: }9 |' ]4 S% _4 d$ ~4 S; p
结构部分1 W% O1 O. C, D" W
创建数据库表" S3 O4 Y3 i* E" K/ |' e0 T+ Q% K9 X
①鼠标操作:打开数据库设计器,在这里面任意位置右击,选择“新建表”。
0 _' N! ?* ^# I8 W' c ②命令操作: open database [数据库名]" c- W3 T- P: C& X! q# W
Create [表名]
5 `% L0 ^0 K4 B) Y ★以上不论哪一种操作,都会自动弹出“表设计器”。6 h2 d/ c* ^7 U2 f2 D
表设计器的作用是对表的结构进行创建或修改。
: F* B2 c8 s) I, n0 q 表设计器的打开与修改:①鼠标操作:打开数据库设计器,在里面找到进行结构修改的表,
/ E: J; s0 H% R R3 V N0 m 在那张表上右击选择“修改”。. {, S8 e0 g1 h f/ {5 z! _
②命令操作:use [表名]
! ]+ y5 q' Z8 U! j# ` Modify structure
- B7 ?3 @9 r, v8 D& N3 X/ b" h, H 表设计器的内容:见书P101. o; C8 |1 c6 X: f$ ^/ ^. d! x: t" ^
内容部分
, K7 b& d+ O3 A5 d H! x2 } 表的结构设计完成确定后,会自动询问是否打开“浏览器”进行输入数据。
8 f* G+ s3 y. k7 g7 I 表浏览器的作用是对表的内容进行创建或修改。
% L+ P# D' c+ P; u 表浏览器的打开:①鼠标操作:打开数据库设计器,在里面找到进行结构修改的表,' O! i( v* c, }7 X" d+ Z
在那张表上右击选择“浏览”。' |' I, l7 X0 k
②命令操作:Use [表名]+ U8 ?. s" M: Y! O# u
Browse
, S" @0 @1 {2 w9 [ d/ F8 f% a( H 一些常用的内容修改:
( n3 B1 w2 p6 y7 q' t5 N2 | Ⅰ 增加记录:(1)在表的尾部增加记录:3 r" h9 n/ n8 P/ s# c0 n5 J
①鼠标操作:显示/追加方式' {$ o- C/ D" ]& n/ b, A
②命令操作:A)append 需要立刻输入记录值3 k* k+ G7 K7 H" X' D% l9 ]
B)append blank 在表尾加一空行 再用edit,change,browse或replace更改
) o) A. M, V# y0 v- N% |8 N: ?. @( ? (2) 在表的任意位置插入记录:insert ……8 H+ p: m$ a. B6 t: T: s
省略号处是一些可选项,可选项如下:+ _3 d' t9 `, |0 ~
① before 如果要在当前选中的记录之前插入一条新记录,就在insert后加上before,不加就会在当前记录之后插入新记录。
) y5 v+ q; w/ \6 @( g! ]4 c ② blank 在指定的记录之前或之后插入一条空白记录。4 h: ~7 q2 R! S$ X/ D @
★如果表是建立了主索引或候选索引,则不能用以上的 APPEND或INSERT命令插入记录,而必须用SQL的命令语句(见第四章)。
0 q+ m# T8 e( S Ⅱ 删除记录:(1) 逻辑删除(置删除标记)/ O7 R: N! n6 A- D S! ~
①鼠标操作:在要删除的记录行首直接打上黑块标记2 |/ ?& x, o3 `. ?: Q6 Y
②命令操作:delete [for 条件]' h9 J4 s& i) q* Y# n6 V
★如果不跟条件,则只逻辑删除当前记录;否则逻辑删除满足条件的记录。" b3 B5 T2 j" k, P& L1 z- L; _
★逻辑删除记录,不是真正的从表中删除了,以后要是后悔,还可以恢复。
5 }; {' y0 W& F( X$ h8 M4 o Delete all 逻辑删除所有记录2 j6 ~: l- c* K: y" ~2 `
(2)恢复记录(只能恢复逻辑删除的记录)$ B; D$ R: M0 A) T0 x
①鼠标操作:把要恢复的记录行首的黑块去掉7 Y6 J; u2 H' ^. L+ a
②命令操作:recall [for 条件]/ n# l! O0 i& b. i
★如果不跟条件,则只恢复当前记录(如果当前记录没有删除标记,则该命令什么事也不做);否则恢复满足条件的记录。
% c! K0 f6 f7 j3 D0 S) x recall all 恢复所有记录
: j6 ]1 @+ Y$ k: c# h$ { d (3) 物理删除:pack只删除前面有黑块的记录行。
1 {4 j( q' w# v+ O$ P5 S2 t; B; n9 i (4)物理删除表中全部记录行:①ZAP(会弹出一个询问对话框)。! x- o8 d( a. S5 V7 I; M1 i5 U0 N7 D
ZAP就相当于delete all+pack3 ` i% F( I( ^% t$ z1 {( N
Ⅲ 修改记录:(1)鼠标操作:打开表浏览器直接修改。
4 F( l# x7 a1 q0 K/ b! J (2)命令方式:% c( t+ d9 D. |% z+ J0 ^
①用edit或 change修改当前一条记录和 skip 配合使用。
. P; i' \/ W3 g+ u ②有条件修改(满足条件的记录行才进行修改,其他行不变):2 y9 o4 W0 b/ P# w k9 @( {/ w6 k
Replace [ all ] 字段名 with 表达式 [for 表达式]
4 E' y& C+ a2 L7 r8 }0 z ★如果跟上[for 表达式],则是对满足条件的记录行才进行修改。
$ u/ B. D* g- d ★在不跟[for 表达式]情况下,如果跟上[ all ],则是对所有记录进行修改。
5 J4 B7 w; P( f- d& P7 q ★如果[ all ] 和[for 表达式]都不指定,则是对表中的当前记录进行修改。' |5 P4 l) z2 {. x4 v9 {
Ⅳ 显示记录:list/display [字段名列表] [for 表达式]
; h2 _2 ]& A) z0 j( b ★ 不使用条件时,LIST默认显示全部记录,而DISPLAY则默认显示当前记录。" H e7 q, D1 ~
★ 指定条件时,LIST和DISPLAY功能相同。
2 u6 H$ Q y, o5 t$ ? Ⅴ 查询定位:(1)鼠标操作:打开表浏览器,用鼠标直接选中目标记录行。2 S; d, B6 @7 N W+ E; i$ x
(2)命令操作:① goto/go [记录号/top/bottom]$ u- j& t5 L5 w* y) m
②skip [数字]
. m0 P2 \' M3 B5 N# q" X4 o; F" | ③ locate for 表达式………… continue |