講師:戴志華 hana@arbor.ee.ntu.edu.tw 國立台灣大學電機工程研究所 Visual Basic 程式設計 講師:戴志華 hana@arbor.ee.ntu.edu.tw 國立台灣大學電機工程研究所.

Slides:



Advertisements
Similar presentations
模块五 动态网页技术 任务五 查询记录 任务一 表单设计制作 任务二 简单动态的 ASP 页面制作任务三 页面与数据库的集成任务四 添加记录 任务六 电商系统融入网站.
Advertisements

第五章 通用网关接口 CGI 简介 Htm l Html + CGI Html + asp 网页可以处理动态的信息.
我有一份考工的理论题库,是 Excel 文件。我在想如果转换到 Word 文件中再排版,再印刷,一是浪费时间,既要做成 Word 卷, 测试完还要手工批卷;二是浪费纸张( 4 — 5 个班级近 200 多人使 用),我在想能不能做成上机试卷,在计算机上测试,多方便, 谁能帮我这个忙吗? 我有一份考工的理论题库,是.
主讲:史治平 地址:四川电大计算机教研室 电话:
第13章 数据库的基本应用 Visual Basic 程序设计教程.
第7章利用ADO.NET 进行数据访问.
課程名稱:程式設計 授課老師:________
程式語言(I)- Visual Basic 6.0 第 9 章 結構化程式設計
高中信息技术新课程探讨 算法与程序设计教学实践与探讨 江苏省新海高级中学  张丽.
第8章 设计数据库应用网站 本章讲述的主要内容 8.1 数据库基础知识 8.2 使用数据库系统 8.3 SQL查询基础
Access数据库程序设计 总复习.
第7章 数据库基础知识 SQL常用命令使用方法 (1) 数据记录筛选: sql="select * from 数据表
文科计算机小公共课规划教材 Access 程序设计.
客户端用Net-Library和SQL SERVER连接
第十 章 XML与数据库的交换 10.1 概述 10.2 数据岛 10.3 XML数据源对象 10.4 数据集操作
网 络 课 程 马 鞍 学 网 络 山 课 程 大 络 网 Visual Basic程序设计 第 一 讲 最容易接受的编程语言
第15章 Java数据库连接(JDBC) 15.1 创建数据源 15.2 JDBC-ODBC桥接器 15.3 顺序查询
Visual Basic程序设计.
第 11 章 資料庫應用與 ADO物件 製作.
Visual Basic快速入门 ADO数据控件与数据绑定控件 VB数据库编程举例 VB开发数据库应用系统实例分析
資料庫程式設計 VB資料庫設計簡介 週次:4 建國科技大學 資管系 饒瑞佶.
Visual C# 2010 程式設計經典 第15章 ADO .NET與資料工具.
講師:戴志華 國立台灣大學電機工程研究所 Visual Basic 程式設計 講師:戴志華 國立台灣大學電機工程研究所.
数组 第 6 章.
第5章 数组 Visual Basic程序设计.
Visual Basic程序设计 第七章 数组
彰化縣政府補助辦理網頁設計資料庫應用班 ASP與資料庫介紹 建國技術學院資管系 饒瑞佶.
遠東科技大學資訊工程系 王善揚 可嵌入物件題庫系統 設計與開發 遠東科技大學資訊工程系 王善揚
資料庫操作2.
ADO.NET.
課程名稱:資料庫系統 授課老師:李春雄 博士
班級:博、碩子一甲 授課老師:鐘國家 助教:陳國政
第2章 ADO.NET 2.0概述.
資料庫程式設計 VB資料庫設計簡介 週次:2 建國科技大學 資管系 饒瑞佶.
第4章(2) 空间数据库 —关系数据库 北京建筑工程学院 王文宇.
VB如何存取資料庫 ? 資料庫 資料儲存 資料庫引擎 資料庫引擎 Jet 讀取、寫入與修改 資料控制項 資料庫存取物件(ADO) 使用者介面.
初识Visual Basic.
講師:戴志華 國立台灣大學電機工程研究所 Visual Basic 程式設計 講師:戴志華 國立台灣大學電機工程研究所.
教 师:曾晓东 电 话: 数据库技术 教 师:曾晓东 电 话:
第9章 访问数据库 9.1 数据库的概念与建立 9.2 用Data控件访问数据库.
课程设计 归纳总结 4 知识目标 1 讲授新课 2 任务操作 3 布置作业 5.
第 13 章 深入Recordset物件 製作.
第4章 程序控制结构与算法基础.
Visual Basic 程序设计 教师:王 杨 电话:
使用ADO.NET访问数据 数据库连接 C#程序设计课程组.
講師:戴志華 國立台灣大學電機工程研究所 Visual Basic 程式設計 講師:戴志華 國立台灣大學電機工程研究所.
資料庫系統導論.
第12章 VBA模块设计.
資料庫管理(Access 2003) 第五章 利用查詢來 統計與分析資料 許欽嘉 老師.
新觀念的 VB6 教本 第 6 章 資料型別.
PCR300 (13.56MHz) Reader RS232/USB.
C# 程序设计教程 同济大学计算机系基础学科组
Connection对象 访问数据库的第一步是建立连接,只有建立连接,才可能实现 在数据库和应用程序之间移动数据。 ADO提供了连接对象:
第 8 章 VB.NET与数据库应用程序 本章主要内容: ADO.NET体系结构; VB.NET与SQL Server数据库的连接;
第七章 文件 本章重点 7.1 文件管理控件 7.2 文件处理 7.3 练习.
資料庫程式設計 VB資料庫設計簡介 週次:3 建國科技大學 資管系 饒瑞佶.
Pocket Access.
VB语言程序设计教程.
107學年度高一程式設計 上機考試 投影片 加減乘除.
第二章、第三章错题分析.
第8章 ADO组件的使用 本章主要内容: TADOConnection组件的使用 TADOCommand组件的使用
VB与Access数据库的连接.
VB与数据库 数据库连接与查询.
计算机应用基础 潍坊学院 计算机工程学院 主讲人:丁素英.
Visual Basic程序设计 第13章 访问数据库
1位选手参加了歌唱比赛,评委们的评分如下:
HOOK和数据库访问 主讲人:孙鑫
VB与Access数据库的连接.
資料庫應用與實作 一到六章重點、習題.
数据库应用技术 天津电大 翟迎建.
Presentation transcript:

講師:戴志華 hana@arbor.ee.ntu.edu.tw 國立台灣大學電機工程研究所 Visual Basic 程式設計 講師:戴志華 hana@arbor.ee.ntu.edu.tw 國立台灣大學電機工程研究所

第十五章 資料庫III與軟體開發流程

使用ADO物件 優點: 使用範圍廣 較有彈性 Project/References/Microsoft ActiveX Data Object 2.5 Library

ADO物件模型 Connection物件 Recordset物件 Command物件

Connection 表示一個通往資料來源的開啟連線 資料庫 ODBC來源 其他OLE DB提供者存在的來源

Connection(cont’d) Dim 變數名 As New Connection 方法: Open ConnectionString ConnectionString可參考Adodc 與資料庫建立連線 Close 關閉連線 Execute 命令,影響的記錄數量,命令種類

Connection(cont’d) Dim con As New Connection Dim conStr As String Dim numRec As Integer conStr=“Provider=Microsoft.Jet.OLEDB.4.0;DataSource=C:\class13.mdb;Mode=Read| Write;Persist Security Info=False” con.Open conStr con.Execute(delete * from student where name like ‘王%’) con.Close

Connection(cont’d) Provider : OLE DB Provider名稱 Data Source:所要連結的SQL Server或MDB資料的名稱 DSN : 註冊在現行機器上的ODBC來源名稱 Password : 使用者密碼 User ID : 使用者名稱 Persist Security Info :若ADO將使用者ID與密碼存在Data Link中的話,此值為True。

「全部」頁籤顯示所選取的OLE DB Provider的所有屬性

Connection(cont’d) 若SQL用Select, 會產生RecordSet物件 Dim con As New Connection Dim conStr As String Dim numRec As Integer Dim rs As New RecordSet conStr=“Provider=Microsoft.Jet.OLEDB.4.0;Data source=C:\testdb.mdb;Mode=Read| Write;Persist Security Info=False” con.Open conStr Set rs=con.Execute(“select * from student where name like ‘王%’”, numRec, adCmdText) con.Close 表示被此命令所影響的記錄筆數 Command Type

RecordSet 資料庫取得的資料放在recordset中 Id Name 00001 李小輝 00002 連阿戰 屬性 BOF cursor Id Name 00001 李小輝 00002 連阿戰 資料庫取得的資料放在recordset中 屬性 BOF 是否在Recordset的頭 EOF 是否在Recordset的尾 Fields Recordset中的資料

RecordSet(cont’d) 使用Connection.Execute產生的RecordSet的Cursor不能向前移 方法 經驗,不一定永遠對 使用Connection.Execute產生的RecordSet的Cursor不能向前移 方法 MoveFirst Cursor移到最前面 MoveLast Cursor移到最後面 MoveNext Cursor向後移 MovePrevious Cursor向前移

RecordSet(cont’d) Dim con As New Connection Dim conStr As String Dim rs As Recordset conStr = “………………………………………” con.Open conStr Set rs = con.Execute("select * from student” _ , , adCmdText) Print rs.Fields(0) rs.MoveNext Print rs.Fields(”name") rs.MovePrevious Print rs.Fields("id") Error

RecordSet(cont’d) Dim con As New Connection Dim conStr As String Dim rs As New Recordset conStr = “……………………………………” con.Open conStr rs.ActiveConnection = con rs.CursorType = adOpenStatic rs.Open "select * from student" Print rs.Fields(0) rs.MoveNext Print rs.Fields("au_id") rs.MovePrevious ok

CursorType 0-adOpenForwardOnly 1-adOpenKeyset 2-adOpenDynamic Recordset只能向下移動而已 1-adOpenKeyset Recordset的Cursor可以自由的上下移動 2-adOpenDynamic 3-adOpenStatic

Locktype adLockReadOnly Recordset唯讀,無法接受資料異動 adLockOptimistic

CursorLocation adUseServer adUseClient

軟體開發流程 需求分析 瀑布模型 系統分析 系統設計 系統實作 系統測試 系統維護

軟體開發流程(cont’d)

案例探討 圖書管理系統 使用Biblio.mdb 功能 查詢書籍,作者與出版社 新增書籍 新增作者 刪除書籍

需求分析 目的 具體目標 Use cases 了使用者真正的需求 取得Use Cases (使用案例) 使用者操作系統完成某一項任務,系統所做的一連串事

需求分析 查詢書籍 查詢作者 決定操作介面…… 輸入書籍的ISBN,取得書籍資料 輸入書籍的名稱,取得書籍資料 輸入作者代碼,取得作者資料 輸入作者姓名,取得作者資料 決定操作介面……

系統分析 操作 介面 VB Code 資料庫 SQL command

系統分析(cont’d) Command3_Click Select …… 顯示第一筆 RecordSet Command2_Click 顯示第二筆 UI Code Database

系統設計 四個副函式 Command1_Click Command2_Click Command3_Click Display顯示目前的記錄

系統設計(cont’d) Command3_Click() 與資料庫連線 產生SQL query 把傳回的RecordSet存到記憶體中 中斷與資料庫的連線 顯示第一筆資料(呼叫display)

系統設計(cont’d) Command1_Click Command_Click 顯示前一筆(呼叫display)資料

系統實作 Private Sub Command3_Click() Dim con As New Connection Dim conStr As String Dim rs As New Recordset conStr = <<略>> con.Open conStr rs.ActiveConnection = con rs.CursorType = adOpenStatic rs.Open <<略>> records = rs.GetRows() recNo = rs.RecordCount index = 0 display con.Close End Sub

系統實作(cont’d) Dim records As Variant Dim index As Integer Dim recNo As Integer Private Sub display() Text1.Text = records(0, index) Text2.Text = records(1, index) Text3.Text = records(2, index) End Sub Private Sub Command1_Click() If (index > 0) Then index = index - 1 display End If

系統實作(cont’d) Private Sub Command2_click() If (index < recNo - 1) Then index = index + 1 display End If End Sub

系統測試 利用User Case進行測試 輸入資料亂數選定 合法的資料 錯誤的資料 如果有錯誤,重回設計或實作階段