- 1、本文档共89页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
使用MATLAB对资料库进行修改另一种方法.ppt
範例-5 (II) 使用了一個筆者開發的函數 struct2html.m,可以將結構陣列的內容呈現至網頁,以便觀看 範例13-5: db2struct02.m DSN = dsnScore01; % 設定資料來源名稱(指到 score01.mdb) logintimeout(5); % 設定嘗試連結資料庫的時間 conn = database(DSN, , ); % 連結資料庫 sql = select * from score order by studentID; % 設定 SQL 命令 cursor = exec(conn, sql); % 執行 SQL 命令,並傳回 cursor 物件 cursor = fetch(cursor); % 經由 cursor 物件,抓取全部資料 範例-5 (III) score = cursor.data; % 將資料傳至 MATLAB 變數 score temp = columnnames(cursor); %資料庫欄位名稱 eval([fieldNames = {, temp, };]); % 將欄位名稱指定到 fieldNames 變數 score2 = cell2struct(score, fieldNames, 2); %轉成結構陣列 score2 close(cursor); % 結束 cursor 物件 close(conn); % 結束資料庫連結 struct2Html(score2); % 顯示結構陣列 score2 於瀏覽器 範例-5 (IV) 所產生的網頁瀏覽器如下: 13-5 使用MATLAB對資料庫進行修改 MATLAB 能夠經由 ODBC 和對對資料庫進行操控,因此所有 SQL 命令能達到的功能,MATLAB 也都能經由下達 SQL 命令來做到 MATLAB 的資料庫工具箱也提供了另外一些命令,能夠對資料庫進行修改 嘗試本節所提供的範例前 先以手動的方式來設定 DSN,請將資料來源名稱 dsnScore02 指到本機位置的 score02.mdb 每次在進行資料庫存取前,會將 score01.mdb 的內容拷貝到 score02.mdb 避免因為多個範例程式碼的執行先後順序不同,造成所得結果和本書描述不一致的情況 新增範例 (I) 如何經由 SQL 命令來新增一筆資料到資料庫 新增一筆姓名為「大力水手」的資料,對應的 SQL 命令: INSERT INTO score (studentID, studentName, final) VALUES (00, 大力水手, 100) 新增範例 (II) 範例13-6: insertData01.m copyfile(score01.mdb, score02.mdb); % 將原檔案拷貝到 score02.mdb dsn = dsnScore02; % 設定資料來源名稱(指到 score02.mdb) logintimeout(5); % 設定嘗試連結資料庫的時間 conn = database(dsn, , ); % 連結資料庫 % 設定刪除資料所用的 SQL 命令 sql = INSERT INTO score (studentID, studentName, final) VALUES (00, 大力水手, 100); cursor = exec(conn, sql); % 執行 SQL 命令 % 設定查詢資料用的 SQL 命令 sql = select * from score; cursor = exec(conn, sql); cursor = fetch(cursor); newScore = cursor.data % 顯示更新後 final 欄位的資料 close(cursor); % 結束 cursor 物件 close(conn); % 結束資料庫連結 新增範例 (III) newScore = 914340 傅思為 [82] [ 93] [ 87] [ 77] [ 80] [0] 916310 薛博謙 [83] [ 93] [ 93] [ 99] [ 80] [0] 882545 王儀蓁 [86] [ 96] [ 92] [ 99] [ 77] [0] 8802
文档评论(0)