Transcript Document
Visual Basic 程式設計
講師:戴志華
[email protected]
國立台灣大學電機工程研究所
第十六章 資料庫IV與XML
資料庫設計
找出物件
需要Domain Knowledge
Author
Publisher
Title
3
資料庫設計(cont’d)
找出每個物件的屬性
需要Domain Knowledge
Author
Name
Titles
Publisher
Name
Address
Tel
Titles
Title
Title
Author(s)
Publisher
ISBN
4
資料庫設計(cont’d)
替每個物件設定primary key
TitleISBN
AuthorAu_id
PublisherPubId
Author
*Au_id
Name
Title(s)
Publisher
*PubId
Name
Address
Tel
Title(s)
Title
Title
Author(s)
Publisher
*ISBN
5
資料庫設計(cont’d)
找尋物件間的關係(relation)
Publisher
Author
∞
∞
∞
1
Title
6
資料庫設計(cont’d)
1st normal form:
不可以有多值的屬性一個屬性只能有一個
值
Author
*Au_id
Name
-Title(s)
Publisher
*PubId
Name
Address
Tel
-Title(s)
Title
Title
-Author(s)
Publisher
*ISBN
7
資料庫設計(cont’d)
2nd normal form
非 Primary key 的欄位需與整個 Primary
key 有直接相關性
id
name
id
name
dep
dep_place
dep
dep_place
8
資料庫設計(cont’d)
3rd normal form
非 Primary key 的欄位間不應有從屬關係
正規化的另類思考
不必要的分割
人工的分割
9
Why XML?
XML: eXtensible Markup Language
什麼是Markup Language?
HTML-HyperText Markup Language
<h1>熱門網站</h1>
<a href=“http://www.kimo.com.tw”>奇摩站</a>
<a href=“http://www.yam.com”>蕃薯藤</a>
<a href=“http://www.sina.com.tw”>新浪網</a>
10
Why XML? (cont’d)
HTML的優點:
廣泛使用
簡單易學
HTML的缺點:
是一種排版語言
缺乏對資料的描述能力
11
Why XML? (cont’d)
12
<TR>
<td align=center width=6%>……value="2311">
<TD ALIGN=CENTER width=25%>
<A HREF="/q/q_2311.html">2311 日月光</a><BR>
</TD>
<TD ALIGN=CENTER width="6%">14:30</TD>
<TD ALIGN=CENTER width="6%"><b>17.10</b></TD>
<TD ALIGN=CENTER width="6%">17.10</TD>
<TD ALIGN=CENTER width="6%">-</TD>
<TD ALIGN=CENTER width="15%">▲1.10</TD>
<TD ALIGN=CENTER width="6%">23397</TD>
<TD ALIGN=CENTER width="6%">16.00</TD>
<TD ALIGN=CENTER width="6%">15.90</TD>
<TD ALIGN=CENTER width="6%">17.10</TD>
<TD ALIGN=CENTER width="6%">15.90</TD>
</TR>
13
What is XML?
XML是一個可以用來制定其他標記
(Markup)語言的標記語言
SGML
XML
WML
MathML
SOAP
14
What is XML? (cont’d)
<?xml version=“1.0” encoding=“Big5” ?>
<股票行情>
<電子股>
<股票>
<名稱>日月光</名稱>
<股價 單位=“新台幣”>17.1</股價>
</股票>
<股票>
<名稱>聯電</名稱>
<股價 單位=“新台幣” >34.5</股價>
</股票>
</電子股>
</股票行情>
15
Well-formed XML
Well-formed
符合XML的要求、格式正確的文件
原則:
所有元素都要正確的關閉
<h1>測試
<h1>測試</h1>
Web Browser接受
合格的XML文件
<br/>
16
Well-formed XML (cont’d)
標籤之間不可交叉
<股票>
<名稱>聯電
<股價 單位=“新台幣” >34.5</股價>
</名稱>
</股票>
所有屬性必須加上引號
其它
17
Valid XML
Valid
符合某種規範(DTD)的合格的XML文件
Why valid?
EDI-Electronic Data Interchange
電子資料交換
DTD
用來定義、規範XML文件
18
EDI
矽統
威盛
揚智
台大
?
台積電
19
EDI (cont’d)
矽統
威盛
揚智
台大
公定格式
台積電
20