22 12
发新话题
打印

瓷匠讲SQL 第一课: 如何理解数据库系统

本主题由 sese53 于 2008-5-5 12:14 移动

瓷匠讲SQL 第一课: 如何理解数据库系统

第一课: 如何理解数据库系统5 U5 ?# P5 q7 W8 `$ a
) m' g4 H; `: M! q7 }$ e. \. A+ N+ u
1、数据库系统和我们有什么关系:
& I% n/ u$ i1 O& M: d
: m$ y3 e2 H  b  i& X3 `0 C10年前如果你问我数据库系统和我们有什么关系,我真的不知道怎么回答,因为那时我连数据库是什么都搞不懂。随着信息和网络时代的来临,生活中越来越多的出现了数据库的应用。
4 ^& B; R' E: v; Q比如我们去超市或商场买东西,收银员就在使用数据库来计算价格;
4 T5 ?* X0 `/ f! s我们的QQ的后台信息,同样是一个大型的数据库系统,里面储存着我们的信息;
$ A7 [( A6 d( G- ^5 f! x电子邮件系统同样也应该了数据库做为载体;9 |: V+ r: o# M! s% X* y
网络游戏的后台同样也是一个大型的数据库系统;
0 G) z$ f! @5 H: s股票交易同样在使用数据库系统;. g, E) Q0 @% E' B: J
单位的人事部门在使用数据库来管理我们的工资和档案,当然如果公司不超过10个人可能是用不到数据库的;. O6 M; N# `1 c, W$ \5 s5 o
我们使用的银行信用卡同样是用数据库来管理;' z& j( v, Q0 h
现在我们的生活中越来越多的地方有数据库的应用,所以如果你学会了数据库的操作,那么你可能就有一份可以从事的职业,当然这还要你付出一些努力。
+ p/ `7 \# _8 ?7 u# z$ g5 t9 M, D3 r! m% V
2、什么是数据库系统:
% A1 a- u& z4 l* N5 m% g7 `" h- Y9 f
1 X$ Z; ~3 o0 }数据库系统是一个实际可运行的存储、维护和应用系统提供数据的软件系统,是存储介质、处理对象和管理系统的集合体。它通常由软件、数据库和数据管理员组成。其软件主要包括操作系统、各种宿主语言、实用程序以及数据库管理系统。数据库由数据库管理系统统一管理,数据的插入、修改和检索均要通过数据库管理系统进行。数据管理员负责创建、监控和维护整个数据库,使数据能被任何有权使用的人有效使用。数据库管理员一般是由业务水平较高、资历较深的人员担任。" X9 c( ~/ S' n0 O5 R
这段文字对于一个对数据库不太了解的人可能太难懂了,那我们就简单的说一说吧:
8 s. M5 L7 F9 H3 }# {9 h) ?3 j可以这样理解:数据库系统是由(1)硬件,(2)软件,(3)管理者 共同组成的一个综合系统,这个系统的核心是存储,读取和管理。
$ B9 K9 ]2 b6 i* `1 M' ?) S% n+ n0 H我们现在所学习的探讨的数据库系统主要是软件方面,软件方面主要是存储和管理。
+ Z. K( V7 N2 @而管理者指的就是我们这些学习和使用者。6 ~# e- J6 E, a  O. A

5 v" P9 _! l2 I4 ^+ E3、为什么选择数据库:* y$ N$ K7 _( x% a+ Q( A

, ]( c) S, U+ h$ o3 \7 J, a人的记忆是有限的,虽然我们的大脑可以存下一个图书馆,但这些记忆不是永恒不灭的,所以出现纸张和印刷,后来信息越来越多,要求查询的速度越来越快时,纸张和印刷也跟不上我们的需要了,与此同时出现了电子计算机,于是人们把一些信息存储在计算机的磁盘上,虽然它也不是永恒不灭的,但它具有稳定性好,速度快的特点,慢慢数据库发展成现在的样子。, p8 }* J# V3 [7 V
所以选择数据库是我们自己的选择,是我们生产和生活的需要。7 X: [  B0 H! ~: Z5 M
, C' M' I1 f4 a- [( O( ?
4、为什么选择SQL语言:
, _+ b5 Z' _' z6 P) @" w# u& s. ], {0 J' V1 c/ G! F
SQL语言是一种规范,是目前绝大多数数据库所遵循的规范,虽然这些数据库的SQL语句还有一些差别,但是这些差别并不是很大。请大家想一想,如果你学会了一种SQL语言,却能运用到许多种数据库系统中,是不是一件很值得的事情呢?
; r$ [1 `/ a+ F% n最重要的SQL语言是规范, 我们别无选择.+ v/ ~) |4 Y# ~5 @. B7 d; G! Q
. V! R* q! q% B
5、理解数据库、表、字段和记录之间的关系:
; K8 Q# x3 c) h/ Q1 t0 X$ \
7 n: v  ]6 T3 @7 m数据库是许多表的集合,也就是说数据库包含着许多的表。
5 p: Q! w! E8 V6 ?) Z- w表实际上是一种二维结构,是字段和记录的二维集合,也就是说表中包含着字段和记录。% X6 D+ r% |9 G. O7 _2 L, @4 J
字段是表的一部分,一般固定不变,负责表中一些数据类型和长度的定义。
. y' h* Z8 O& p+ F' A; j6 X6 j7 J8 l$ x记录也是表的一部分,可以进行插入、更新和删除,记录负责存放由字段所定义的数据。
/ n/ Q+ w7 a# u  @/ ^/ z: w2 D
: I2 P& Q3 f, W- V$ v- R8 y举个例子:
% L6 K7 e8 e5 x/ J) a学校->班级->学科成绩->每个学生
/ E- n+ [' A. r2 K5 a  _学校相当于一个数据库,包括了班级。
$ }. [& Z- K; C* ?) d; b班级相当于一个表,包括了学科成绩和每个学生。
" r5 J( p: p2 f- l; q2 K& Q2 @学科成绩相当于字段名,这里我们可以想象一下,一般学习的科目是不变的。
5 S3 b' A3 G2 W) _# _6 J+ _每个学生相当于记录,每个学生有时会发生改变,比如某一科成绩的改变。3 A7 K4 o5 ]" m+ o4 J) ]. x( A
举个例子:* s# f- @' z% R  H8 z

! _8 [2 x. {6 k7 @: t  o' I! U数据库:学校8 M$ q3 T3 s" a# X1 V" M: q- K
  表:班级+ X3 k  [+ j  V
  字段:编号   姓名        PHP语言    SQL语言
/ b/ j8 ^0 z* y7 m, v' j- R  记录:1      Mars         90              80 ; P; q# K4 v' i5 |" z4 n
  记录:2      renZF       80              82
; k. H% ^/ r1 ?1 l  记录:3      会笑的猪  86              79& `! r% |5 W0 W1 [' c
  记录:4      瓷匠         79              70
; q" j: }" q  t: o' y
(请不要介意,我使用了部分论坛会员的ID)
+ G5 [0 p" i+ J2 R. W2 Z/ o( y& o' U( X% D. e$ s4 t4 b! J
6、我们用SQL干什么:
) e. G( W, O# Y9 ]+ P  q理解了上面所讲的数据库、表、字段和记录之间的关系后,我们就要讲讲我们用SQL来对这些“家伙”干什么?$ j0 k9 D% K: P2 p5 N: q6 l
用SQL创建、删除、修改数据库。
2 F- w. Z1 V1 n  [: r用SQL创建、删除、修改表的结构(这里指表的名字和表中的字段)。
6 u& [/ Z  l+ A用SQL插入、删除、更新表中的数据(这里指的是记录)。
; Q2 r; X  p) X# w
% E* n+ `7 Z) m4 W3 Y; j! V清楚了以上内容我们就可以进入到下一节课,简单的select查询。; r: r3 h, C; @9 P8 F3 v

  U+ |) O$ {2 @  g1 R+ s" X8 [现在你已经走进SQL这扇大门里,里面的精彩世界正等着你呢,同学们,加油吧!
瓷匠在线 欢迎您!
http://zsss.blog.sohu.com

TOP

  我在班里居然还是个中等生 足以 足以
声誉好得令人发指,人格闪亮得让人嫉妒!

TOP

  
, l8 e. J* A, [4 j 有你名就不错了,像俺这些同学 都还没进教室类……. K  u' E4 [  Z7 C! _
少之时,血气未定,戒之在色

TOP

上面的成绩跟实际没关系, 仅是借用一下.
瓷匠在线 欢迎您!
http://zsss.blog.sohu.com

TOP

蓝尹 不满了 呵呵,你就属于借读,在门外蹲着学的那种
声誉好得令人发指,人格闪亮得让人嫉妒!

TOP

什么时候第2课,速度一点。。。。

TOP

瓷匠好象没有接着战神的思路讲吧?3 M3 h8 R, U8 J9 p; ^
前一讲不是将到了数组了吗?为什么不讲php了,这就跳到了数据库了?

TOP

画蛇添足:
& N5 N, @& T7 j7 j; V. ?* g& v
数据库:学校5 m; H/ O2 X. b' \
  表:  班级
; G, e; G, C9 f5 p  字段:编号   姓名        PHP语言    SQL语言 - h7 T4 F0 V" a8 B$ M
  记录:1           Mars                 90                   80
+ p# Z' k+ E8 `( |! R    记录:2           renZF               80                   82
0 g5 }( r( G% v0 s    记录:3           会笑的猪     86                   79
# `$ ^0 R6 r3 d/ Z( t3 _7 s    记录:4           瓷匠         79                   709 l% \' m. [; g; }: ^8 J& o

4 W1 m$ L) x7 ^% F6 P在瓷匠 的教材中 出现了一个事例表 我将画蛇添足的 在进行一翻解释,注意,这仅是为了那些初级中的初级 对数据库没有概念的人预备的,另外还需要多说的是 无论看多少教程也不如自己亲手实践一番,好了我们开始(瓷匠 回头我付你版权费哦)- j$ z! \- M6 z8 ^! V
  “数据库:学校 ” 这部分 是指数据库的名称,没有什么非议。作为数据库的名称一定要做到意义明确,通俗易懂,最起码自己要明白吧。因为在实际的数据库应用中,同时会有多个数据库存在所以我们用数据库名称来区分是最好的的办法了。“学校” 就是这个数据库的名称。0 c& ]$ X& E3 Q9 G$ X

3 f2 I! y3 B% T( l& H8 A  “表:  班级” 班级是表的名称,表与数据库是从属关系,一个数据库可以包含多个表。表名的命名也要遵循意义明确,通俗易懂。在起表明的过程中会涉及到表与表之间的关联,也就是表一和表二存在一定的关系,在命名时就可加以明确。例如 表一为用户表,表二为用户假期表那么我们就可定义 表一 = UsersInfo ,表二 = UserHolidays 简单明了,在今后大家还会接触一些关系型数据库的高级用法如关联,外键等等
: Q! C9 u+ ], f/ p/ K: z+ f& h! k" d5 F; J# P3 D( C
   “字段:编号   姓名   PHP语言   SQL语言” 看到了吧  字段 就相当于 一条记录(等一下再说)的属性值就像 该字段有 编号 姓名等等,原则上只要需要就可以在表中设置(追加或者最初就设计进去)字段还可以称作“列” 本身 数据库表 就是一个二维表的关系 行和列在数据库中叫法和用法都通用。 如果对 “二维表”的概念不是很清楚 那么就想想 上学时的 课程表 那就是典型的 二维表7 W& t) \" I5 o* ^9 X
    “记录”有了字段(列)自然要有内容了,记录就是你要进行操作的实际信息,就像例子中战妈门门都是80分以上,这就是内容了。作为内容一定要满足 字段(列)的规范,例如 姓名列 相对应 只能添加姓名 而不能放入年龄或是其他的值。 原则上不是绝对的,但后果会很严重,就像 你在课程表 的表里面 将周二(列)的内容(记录)填入了周三(列)。哈哈 老师很生气 后果很严重。
声誉好得令人发指,人格闪亮得让人嫉妒!

TOP

有时间到: m! q+ Z: |4 @' Z; Z
http://www.cnphpers.com/thread-883-1-1.html
2 N. N- n1 ^! y& e里看看, 这是我的讲议题纲.
: G" c3 g! Z+ n5 q9 T* r% Q
4 S' b8 n, @) a* M/ t我应战神之邀专门开设的是SQL语言, 战神讲PHP. 是两个不同的内容.
瓷匠在线 欢迎您!
http://zsss.blog.sohu.com

TOP

引用:
原帖由 wangchun_an 于 2008-1-2 15:33 发表
. v6 p$ `/ x5 I4 u" n3 Y瓷匠好象没有接着战神的思路讲吧?
! H+ ?+ L1 W" J/ F前一讲不是将到了数组了吗?为什么不讲php了,这就跳到了数据库了?
  |$ b9 Z2 C& j4 k6 c
6 B! x+ u, ?: z# ~1 M$ _7 K' i两回事 战妈 那个是语言类的 这个数据库类的 两种领域 互不干扰,但是作为程序员你需要设计两个领域 两者同步 并不冲突
声誉好得令人发指,人格闪亮得让人嫉妒!

TOP

会笑的猪 你添的太好了. 这样更容易让人理解了. 我举这个例子就是希望大家明白 数据库 - 表 - 字段 -  记录 之间的关系, 经你一说, 嗯, 立刻更清楚了. 值得表扬.
瓷匠在线 欢迎您!
http://zsss.blog.sohu.com

TOP

  呵呵  是不是就不用付你版权费了。。。
声誉好得令人发指,人格闪亮得让人嫉妒!

TOP

报名............
. _9 t5 t0 d5 Z7 M离禾

TOP

引用:
原帖由 会笑的猪 于 2008-1-2 15:11 发表
( r' @2 u8 [7 a9 A. w1 O7 c蓝尹 不满了 呵呵,你就属于借读,在门外蹲着学的那种
1 Z, q+ T- y9 P; Q1 @  B4 R& Y& Z

* u8 \3 \) t1 a/ i$ w  F+ d. C5 l( e  
/ X- t' M, @# t! ]3 k: V 你丫就嚣张吧,等俺哪天混出点名堂,当了班干部,肯定整死你丫/ M+ e; j- G4 o- R) ~2 j8 n
把剁了,然后包成水饺,放进冰箱,自己吃不完就拿出去 20块钱斤卖……
" @+ ~& t3 m& e% l; t% T
少之时,血气未定,戒之在色

TOP

现在这样就算是讲课了???
  O6 E% a5 F( f5 a* }) P' B& f8 U1 E0 F+ Y7 N0 y9 i5 w
如果不是.我报名. 明-福州

TOP

第二讲的时候看过瓷匠老师的mysql安装教程  写的真好. 一下就懂了
) A/ h0 j- P; a# x* j
8 o9 D  q* v) i5 A# U' {期待老师开课

TOP

支持哦

TOP

是啊 如果还没有安装MYSQL的同学, 请安装一个MYSQL吧,
/ A' a4 Y, U% Z8 i; P, F$ U  e 我的安装笔记: http://zsss.blog.sohu.com/64110671.html ( U0 A1 e  Q8 I" K0 |
自认写得还很详细, 请大家有时间看一看吧.
瓷匠在线 欢迎您!
http://zsss.blog.sohu.com

TOP

建议最好安装5.0以上版, 这样触发程序才能用.
瓷匠在线 欢迎您!
http://zsss.blog.sohu.com

TOP

什么时候开始报名版主都没了,我想要个版主

TOP

 22 12
发新话题