課程設計---車輛管理系統(tǒng)_第1頁
已閱讀1頁,還剩17頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、<p><b>  課程設計報告</b></p><p>  課程名稱 數據庫課程設計 </p><p>  設計題目 車輛管理系統(tǒng) </p><p>  專業(yè)班級 計算機1042 </p><p>  2012-2013第1學期《數據庫課程

2、設計》任務書</p><p>  班級:計算10412; 指導教師:張秀坤、丁柏秀、王麗平、耿曉中;</p><p>  地點:計算機綜合實驗室; 時間:第1、2周。</p><p><b>  一、課程設計題目</b></p><p>  選擇下列題目中的一種:</p><p>  

3、1. 小區(qū)物業(yè)管理系統(tǒng) 2. 高校工資管理系統(tǒng)</p><p>  3. 教材管理系統(tǒng) 4. 酒店管理系統(tǒng)</p><p>  5. 高校教職工管理系統(tǒng) 6.圖書管理系統(tǒng)</p><p>  7.火車訂票管理系統(tǒng) 8.企業(yè)人事管理系統(tǒng)</p><p>  9.商品庫存管理系統(tǒng) 10.醫(yī)院藥

4、品管理系統(tǒng)</p><p>  11. 學生成績管理系統(tǒng) 12. 高校學籍管理系統(tǒng)</p><p>  13. 航空訂票管理系統(tǒng) 14. 學費管理系統(tǒng)</p><p>  15. 城市居民戶籍管理系統(tǒng) 16.超市管理系統(tǒng)</p><p>  17.學費管理系統(tǒng) 18.車輛管理系統(tǒng)</p>

5、<p>  19. 房地產管理系統(tǒng) 20. 企業(yè)物資管理系統(tǒng)</p><p><b>  21、其它自選題目</b></p><p>  注:每個學生可根據自己的學識水平,設計能力,在指導教師指導下選擇所設計的題目。</p><p> ?。ㄔ瓌t上選題,學號1-20題目分別對應1-20,21-40分別對應1-20,以此類推

6、)</p><p><b>  二、目的與要求 </b></p><p><b>  1、目的 </b></p><p>  通過課程設計,讓學生能夠全面了解數據庫應用系統(tǒng)的整個開發(fā)過程,驗證課堂教學中的理論;掌握數據庫系統(tǒng)的基本概念、基本原理及應用技術;掌握SQL語言的定義和各種操作能力,進一步掌握SQL語言的數據庫編程

7、技能;學會利用課堂上已學過的數據庫知識進行數據庫設計;使學生對開發(fā)信息管理系統(tǒng)有一個總體認識,可使學生得到很好鍛煉,為以后學習、工作打下堅實基礎。</p><p><b>  2、基本要求 </b></p><p> ?。?)要求獨立完成自己題目的課程設計,如有抄襲,成績按不及格處理。</p><p> ?。?)要求學生利用數據庫原理課程所學知

8、識和方法獨立完成所布置題目。</p><p> ?。?)要求所設計的系統(tǒng)規(guī)模適中,用SQL語句實現基本的增、刪、改、查詢功能。</p><p>  (4)數據庫中至少要包含三個表,且每個表都要滿足3NF,指明主碼、外碼等。</p><p>  (5)盡量多的使用SQL Server2005中的對象,如:視圖、觸發(fā)器、約束、默認、規(guī)則、索引等。</p>

9、<p>  (6)簡單的系統(tǒng)與功能分析,建立數據結構表。</p><p> ?。?)每天下機時,要及時將自己的開發(fā)拷貝帶走;上機期間,學生要服從指導教師的統(tǒng)一安排,遵守機房制度;嚴格遵守紀律,不遲到,不早退,無故缺勤者,成績按不及格處理。</p><p><b>  三、設計方法 </b></p><p> ?。?)設計題目確定、申報

10、、素材準備與設計。</p><p> ?。?)系統(tǒng)需求分析與功能設計:闡明應用系統(tǒng)背景,組織結構情況以及需求分析的過程,并繪制出數據流程圖,寫出數據字典。</p><p> ?。?)概念結構設計:根據概念結構設計的基本原則,確定概念模型,并闡明分析步驟和理論依據完成數據庫的概念設計,畫出E-R圖。</p><p> ?。?)邏輯結構設計:根據需求分析和概念模型,將實

11、體及實體間的聯系按一定的轉換規(guī)則轉換為關系模型,寫出轉換步驟及相應的理論依據,并確定主碼、外碼。按數據庫設計方法和規(guī)范化理論得出符合3NF的邏輯模型。</p><p>  (5)利用SQL Server2005建立相應的數據庫對象。</p><p> ?。?)利用SQL語句實現相應功能。</p><p> ?。?)編寫數據庫課程設計報告并提交相應資料與成果。<

12、/p><p><b>  四、任務安排</b></p><p>  (一)時間:1周。具體安排如下: </p><p>  1、確定題目,需求分析。</p><p>  2、概要設計、邏輯設計。 </p><p>  3、建立數據庫及其操作。</p><p>  4、上

13、機考核驗收答辯。</p><p>  5、寫實習報告并提交。</p><p> ?。ǘ┑攸c:計算機綜合實驗室</p><p><b>  五、調試</b></p><p>  在機房進行調試,可完成相應功能。記錄調試過程中遇到的問題及解決方法,寫在課程設計報告中。</p><p><b&g

14、t;  六、答辯與評分標準</b></p><p>  通過設計答辯方式,并結合學生的動手能力,獨立分析解決問題的能力和創(chuàng)新精神,總結報告和答辯水平以及學習態(tài)度綜合考評。成績按五級分進行評定,成績分為優(yōu)、良、中、及格、不及格。</p><p>  1、平時表現:30分; </p><p>  2、課程設計報告:30分; </p><p

15、>  3、課程設計答辯:40分,其中完成基本功能30分,回答問題10分。</p><p>  1. 系統(tǒng)設計與需求分析 </p><p>  車輛管理系統(tǒng),可用于公司、小區(qū)等的車輛管理,查詢,更新與維護,使用方便,易用性強,圖形界面清晰明了。該軟件用java語言編寫,用SQLServer2005數據庫作為后臺的數據庫進行信息的存儲,用SQL語句完成車輛信息的添加,查詢,修改,

16、刪除的操作以及車輛信息的錄入,修改,刪除等。用ODBC驅動實現前臺Java與后臺SQL數據庫的連接。Java語言跨平臺性強,可以在windows,linux,ubuntu等系統(tǒng)下使用,方便簡單,安全性好。SQLServer2005數據庫高效安全,兩者結合可相互利用各自的優(yōu)勢。</p><p><b>  數據字典</b></p><p><b>  ●數據存

17、儲及數據流</b></p><p>  該系統(tǒng)實現的大致功能:</p><p>  用戶登陸界面。該界面需要用戶提供ID號和密碼輸入正確即可登錄車輛管理界面。提供了六項已經做好的功能和一項自定義功能。</p><p>  在自定義功能里可以實現對車輛信息的查詢,添加,修改,刪除等功能。</p><p>  管理員管理界面。擁有最高

18、的權限。允許添加教師信息和課程信息等。</p><p>  2. 數據庫計 </p><p>  2.1 系統(tǒng)概念結構設計</p><p>  2.2 系統(tǒng)邏輯結構設計</p><p><b>  司機信息表:</b></p><p><b>  車輛信息表:</b&g

19、t;</p><p><b>  車輛事故表:</b></p><p><b>  車輛派發(fā)表:</b></p><p><b>  車輛維護表:</b></p><p>  2.3 數據庫關系圖</p><p>  3. 創(chuàng)建數據庫對象</p&

20、gt;<p>  3.1 SQL語句實現數據表的創(chuàng)建</p><p> ?。?)司機信息表創(chuàng)建:</p><p>  CREATE TABLE Driver (</p><p>  Dno char(10) primary key , </p><p>  Dname char(20) not null,</p>

21、<p>  Dsex char(2) check (Dsex in('男','女')),</p><p>  Dage smallint,</p><p>  Daddress varchar(20),</p><p>  Dtelephone char(20),</p><p>  Dstate c

22、har(2)</p><p><b>  );</b></p><p> ?。?)汽車信息表創(chuàng)建:</p><p>  CREATE TABLE Vehicle (</p><p>  Vlicense char(10) primary key , </p><p>  Vtype varchar

23、(20) not null,</p><p>  Vcolor char(5),</p><p>  Vstate varchar(5)</p><p><b>  );</b></p><p>  (3)汽車事故表創(chuàng)建:</p><p>  CREATE TABLE Vehicle_Accide

24、nt (</p><p>  Vlicense char(10)not null, </p><p>  Dno char(10)not null,</p><p>  VaccidentTime datetime not null,</p><p>  VaccidentPlace varchar(20)not null,</p>

25、;<p>  VaccidentReason varchar(20)not null,</p><p>  VaccidentMethod varchar(20)not null,</p><p>  primary key (Vlicense,Dno),</p><p>  foreign key (Vlicense) references Vehi

26、cle(Vlicense),</p><p>  foreign key (Dno) references Driver(Dno)</p><p><b>  );</b></p><p> ?。?)車輛派發(fā)表創(chuàng)建:</p><p>  CREATE TABLE Vehicle_Distribution (</p&

27、gt;<p>  Vlicense char(10)not null, </p><p>  Dno char(10)not null,</p><p>  StartTime datetime not null,</p><p>  EndTime datetime not null,</p><p>  Distance f

28、loat not null,</p><p>  primary key (Vlicense,Dno),</p><p>  foreign key (Vlicense) references Vehicle(Vlicense),</p><p>  foreign key (Dno) references Driver(Dno)</p><p&

29、gt;<b>  );</b></p><p> ?。?)車輛維護表創(chuàng)建:</p><p>  CREATE TABLE Vehicle_Repair (</p><p>  Vlicense char(10)not null, </p><p>  Dno char(10)not null,</p>&l

30、t;p>  VfixTime datetime not null,</p><p>  VfixContext varchar(20),</p><p>  VfixPrice float,</p><p>  primary key (Vlicense,Dno),</p><p>  foreign key (Vlicense) re

31、ferences Vehicle(Vlicense),</p><p>  foreign key (Dno) references Driver(Dno)</p><p><b>  );</b></p><p>  3.2 SQL語句實現視圖的創(chuàng)建</p><p>  (1)“車輛派發(fā)View”視圖創(chuàng)建:</p

32、><p>  SELECT dbo.Vehicle_Distribution.Vlicense AS 車牌號, dbo.Driver.Dname AS 司機姓名, dbo.Driver.Dno AS 司機編號, dbo.Driver.Dtelephone AS 聯系電話, </p><p>  dbo.Vehicle_Distribution.StartTime AS 出車時間, </p

33、><p>  dbo.Vehicle_Distribution.EndTime AS 結束時間, </p><p>  dbo.Vehicle_Distribution.Distance AS 出車里程, </p><p>  dbo.Driver.Dstate AS 司機狀態(tài)</p><p>  FROM dbo.Driver INNER J

34、OIN</p><p>  dbo.Vehicle_Distribution ON dbo.Driver.Dno = </p><p>  dbo.Vehicle_Distribution.Dno</p><p>  (2) “車輛維護View”視圖創(chuàng)建:</p><p>  SELECT dbo.Vehicle_Repair.Vlicens

35、e AS 車牌號, dbo.Driver.Dname AS 司機姓名, dbo.Driver.Dno AS 司機編號, dbo.Driver.Dtelephone AS 司機電話, </p><p>  dbo.Vehicle_Repair.VfixTime AS 維護時間, dbo.Vehicle_Repair.VfixContext AS 維護內容, dbo.Vehicle_Repair.VfixPrice

36、AS 維護費用</p><p>  FROM dbo.Driver INNER JOIN</p><p>  dbo.Vehicle_Repair ON dbo.Driver.Dno = dbo.Vehicle_Repair.Dno</p><p>  (3) “車輛事故View”視圖創(chuàng)建:</p><p>  SELECT TOP (10

37、0) PERCENT dbo.Driver.Dno AS 司機編號, dbo.Driver.Dname AS 司機姓名, dbo.Driver.Dtelephone AS 聯系方式, </p><p>  dbo.Vehicle_Accident.Vlicense AS 車牌號, dbo.Vehicle_Accident.VaccidentTime AS 事故時間, dbo.Vehicle_Accident.Va

38、ccidentPlace AS 事故地點, </p><p>  dbo.Vehicle_Accident.VaccidentReason AS 事故原因, dbo.Vehicle_Accident.VaccidentMethod AS 處理方法</p><p>  FROM dbo.Driver INNER JOIN</p><p>  dbo.Vehicle_

39、Accident ON dbo.Driver.Dno = dbo.Vehicle_Accident.Dno</p><p>  ORDER BY 司機編號</p><p>  4. 系統(tǒng)模塊詳細設計</p><p><b>  登錄界面</b></p><p>  4.2 各用戶操作模塊</p><

40、p><b>  課程設計總結</b></p><p>  課程設計是培養(yǎng)學生綜合運用所學知識,發(fā)現,提出,分析和解決實際問題,鍛煉實踐能力的重要環(huán)節(jié),是對我們實際工作能力的具體訓練和考察過程. 本次課程設計雖然很辛苦,實在是受益匪淺。本來這門課的知識學的就不夠扎實,本次課程設計,在設計過程中碰到了很多問題,剛開始要設計的時候,還真不知道從哪里下手但最終在圖書、同學和老師的幫助下都得到了

41、解決,讓我學會了好多書本上沒有的東西,通過本次課程設計我也能將課本上的知識融會貫通,起到了很好的輔助學習的效果,但是我發(fā)現我學到的知識比整整一個學期學到的都多。理論和實踐的相結合是學習最有效的方法。在設計的過程中發(fā)現了自己的不足之處,對以前所學過的知識理解得不夠深刻,掌握得不夠牢固,通過這次課程設計之后,一定把以前所學過的知識重新溫故。 </p><p>  通過這次課程設計使我懂得了理論與實際相結合是很重要的,

42、只有理論知識是遠遠不夠的,只有把所學的理論知識與實踐相結合起來,從理論中得出結論,才能真正為社會服務,從而提高自己的實際動手能力和獨立思考的能力。</p><p><b>  6.附錄(代碼)</b></p><p>  由于篇幅有限,所以只附上主要功能的代碼:</p><p>  6.1登陸界面與主功能界面:</p><p

43、>  import java.sql.Connection;</p><p>  import java.sql.DriverManager;</p><p>  import javax.swing.JFrame;</p><p>  import javax.swing.JOptionPane;</p><p>  class Lo

44、go extends javax.swing.JFrame {</p><p>  public Logo() {</p><p>  initComponents();</p><p><b>  }</b></p><p>  private void initComponents() {</p>&l

45、t;p>  buttonGroup1 = new javax.swing.ButtonGroup();</p><p>  jButton1 = new javax.swing.JButton();</p><p>  jButton2 = new javax.swing.JButton();</p><p>  jLabel1 = new javax.swi

46、ng.JLabel();</p><p>  jTextField1 = new javax.swing.JTextField();</p><p>  jTextField2 = new javax.swing.JTextField();</p><p>  jLabel2 = new javax.swing.JLabel();</p><p&

47、gt;  jLabel3 = new javax.swing.JLabel();</p><p>  setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);</p><p>  setTitle("\u8f66\u8f86\u7ba1\u7406\u7cfb\u7edf");</p&

48、gt;<p>  setBounds(new java.awt.Rectangle(200, 200, 300, 400));</p><p>  setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));</p><p>  setName("\u8f66\u8f86\u7ba1\u7406\u7cfb

49、\u7edf");</p><p>  jButton1.setText("\u767b\u5f55");</p><p>  jButton1.setToolTipText("\u767b\u5f55\u8be5\u7cfb\u7edf");</p><p>  jButton1.setNextFocusableC

50、omponent(jButton1);</p><p>  jButton1.setSelected(true);</p><p>  jButton1.addActionListener(new java.awt.event.ActionListener() {</p><p>  public void actionPerformed(java.awt.even

51、t.ActionEvent evt) {</p><p>  jButton1ActionPerformed(evt);</p><p><b>  }</b></p><p><b>  });</b></p><p>  jButton2.setText("\u9000\u51fa&q

52、uot;);</p><p>  jButton2.setToolTipText("\u9000\u51fa\u8be5\u7cfb\u7edf");</p><p>  jButton2.addActionListener(new java.awt.event.ActionListener() {</p><p>  public void a

53、ctionPerformed(java.awt.event.ActionEvent evt) {</p><p>  jButton2ActionPerformed(evt);</p><p><b>  }</b></p><p><b>  });</b></p><p>  jLabel1.s

54、etFont(new java.awt.Font("微軟雅黑", 0, 24));</p><p><b>  jLabel1</b></p><p>  .setText("\u6b22\u8fce\u4f7f\u7528\u8f66\u8f86\u7ba1\u7406\u7cfb\u7edf");</p>&l

55、t;p>  jLabel1.setToolTipText("Welcome");</p><p>  jLabel2.setFont(new java.awt.Font("黑體", 0, 18));</p><p>  jLabel2.setText("\u767b\u5f55\u540d");</p><

56、;p>  jLabel3.setFont(new java.awt.Font("黑體", 0, 18));</p><p>  jLabel3.setText("\u5bc6\u7801");</p><p>  javax.swing.GroupLayout layout = new javax.swing.GroupLayout(</

57、p><p>  getContentPane());</p><p>  getContentPane().setLayout(layout);</p><p><b>  layout</b></p><p>  .setHorizontalGroup(layout</p><p>  .creat

58、eParallelGroup(</p><p>  javax.swing.GroupLayout.Alignment.LEADING)</p><p>  .addGroup(</p><p>  javax.swing.GroupLayout.Alignment.TRAILING,</p><p>  layout.createSeque

59、ntialGroup().addContainerGap(</p><p>  61, Short.MAX_VALUE).addComponent(</p><p>  jLabel1).addGap(60, 60, 60))</p><p>  .addGroup(</p><p>  layout.createSequentialGrou

60、p().addGap(77, 77,</p><p>  77).addComponent(jButton1).addGap(71,</p><p>  71, 71).addComponent(jButton2)</p><p>  .addContainerGap(87, Short.MAX_VALUE))</p><p>  .addG

61、roup(</p><p><b>  layout</b></p><p>  .createSequentialGroup()</p><p>  .addGap(31, 31, 31)</p><p>  .addGroup(</p><p><b>  layout</b&

62、gt;</p><p>  .createParallelGroup(</p><p>  javax.swing.GroupLayout.Alignment.LEADING)</p><p>  .addComponent(jLabel3)</p><p>  .addComponent(jLabel2))</p><p

63、>  .addGap(22, 22, 22)</p><p>  .addGroup(</p><p><b>  layout</b></p><p>  .createParallelGroup(</p><p>  javax.swing.GroupLayout.Alignment.TRAILING,<

64、/p><p><b>  false)</b></p><p>  .addComponent(</p><p>  jTextField2,</p><p>  javax.swing.GroupLayout.Alignment.LEADING)</p><p>  .addComponent(&l

65、t;/p><p>  jTextField1,</p><p>  javax.swing.GroupLayout.Alignment.LEADING,</p><p>  javax.swing.GroupLayout.DEFAULT_SIZE,</p><p><b>  156,</b></p><

66、p>  Short.MAX_VALUE))</p><p>  .addContainerGap(98, Short.MAX_VALUE)));</p><p><b>  layout</b></p><p>  .setVerticalGroup(layout</p><p>  .createParallel

67、Group(</p><p>  javax.swing.GroupLayout.Alignment.LEADING)</p><p>  .addGroup(</p><p><b>  layout</b></p><p>  .createSequentialGroup()</p><p>

68、  .addGap(86, 86, 86)</p><p>  .addComponent(jLabel1)</p><p>  .addGap(37, 37, 37)</p><p>  .addGroup(</p><p><b>  layout</b></p><p>  .createP

69、arallelGroup(</p><p>  javax.swing.GroupLayout.Alignment.BASELINE)</p><p>  .addComponent(</p><p>  jTextField1,</p><p>  javax.swing.GroupLayout.PREFERRED_SIZE,</p&

70、gt;<p><b>  24,</b></p><p>  javax.swing.GroupLayout.PREFERRED_SIZE)</p><p>  .addComponent(</p><p><b>  jLabel2,</b></p><p>  javax.swin

71、g.GroupLayout.PREFERRED_SIZE,</p><p><b>  24,</b></p><p>  javax.swing.GroupLayout.PREFERRED_SIZE))</p><p>  .addGap(32, 32, 32)</p><p>  .addGroup(</p&g

72、t;<p><b>  layout</b></p><p>  .createParallelGroup(</p><p>  javax.swing.GroupLayout.Alignment.TRAILING)</p><p>  .addComponent(jLabel3)</p><p>  .a

73、ddComponent(</p><p>  jTextField2,</p><p>  javax.swing.GroupLayout.PREFERRED_SIZE,</p><p>  javax.swing.GroupLayout.DEFAULT_SIZE,</p><p>  javax.swing.GroupLayout.PREF

74、ERRED_SIZE))</p><p>  .addPreferredGap(</p><p>  javax.swing.LayoutStyle.ComponentPlacement.RELATED,</p><p>  47, Short.MAX_VALUE)</p><p>  .addGroup(</p><p&

75、gt;<b>  layout</b></p><p>  .createParallelGroup(</p><p>  javax.swing.GroupLayout.Alignment.BASELINE)</p><p>  .addComponent(jButton1)</p><p>  .addCompone

76、nt(jButton2))</p><p>  .addGap(88, 88, 88)));</p><p><b>  pack();</b></p><p>  }// </editor-fold></p><p>  //GEN-END:initComponents</p><p&g

77、t;  private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {</p><p>  // TODO add your handling code here:</p><p>  if ((jTextField2.getText().toString().equals("admin"))

78、</p><p>  && jTextField1.getText().toString().equals("admin")) {</p><p>  java.awt.EventQueue.invokeLater(new Runnable() {</p><p>  public void run() {</p>

79、<p>  new Inquire().setVisible(true);</p><p><b>  }</b></p><p><b>  });</b></p><p><b>  } else {</b></p><p>  JOptionPane.showM

80、essageDialog(null, "請確認用戶名和密碼!", "提示",</p><p>  JOptionPane.INFORMATION_MESSAGE, null);</p><p><b>  }</b></p><p><b>  }</b></p>&l

81、t;p>  private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {</p><p>  // TODO add your handling code here:</p><p>  System.exit(0);</p><p><b>  }</b>&

82、lt;/p><p>  private javax.swing.ButtonGroup buttonGroup1;</p><p>  private javax.swing.JButton jButton1;</p><p>  private javax.swing.JButton jButton2;</p><p>  private ja

83、vax.swing.JLabel jLabel1;</p><p>  private javax.swing.JLabel jLabel2;</p><p>  private javax.swing.JLabel jLabel3;</p><p>  private javax.swing.JTextField jTextField1;</p>&

84、lt;p>  private javax.swing.JTextField jTextField2;</p><p><b>  }</b></p><p>  6.2 連接數據庫:</p><p>  import java.sql.Connection;</p><p>  import java.sql.Dr

85、iverManager;</p><p>  import java.sql.ResultSet;</p><p>  import java.sql.SQLException;</p><p>  import java.sql.Statement;</p><p>  public class ConnectDB {</p>

86、<p>  private static final String driverName = "com.microsoft.sqlserver.jdbc.SQLServerDriver"; // 加載JDBC驅動</p><p>  String dbURL = "jdbc:sqlserver://localhost:1433; DatabaseName=Vehicle-

87、Management"; // 連接服務器和數據庫Student-Couse</p><p>  String userName = "sa"; // 默認用戶名</p><p>  String userPwd = "abc123"; // sql server 2005時的密碼</p><p>  Connect

88、ion dbConn;</p><p>  public Connection getDbConn() {</p><p>  return dbConn;</p><p><b>  }</b></p><p>  Statement st;</p><p>  ResultSet rs;<

89、;/p><p>  DisplayDialog dlg;</p><p><b>  static {</b></p><p><b>  try {</b></p><p>  Class.forName(driverName);</p><p>  System.out.pr

90、intln("Connection Successful!"); //如果連接成功 控制臺輸出Connection Successful!</p><p>  } catch (Exception e) {</p><p>  e.printStackTrace();</p><p><b>  }</b></p>

91、;<p><b>  }</b></p><p>  private void getConn(){</p><p><b>  try {</b></p><p>  dbConn=DriverManager.getConnection(dbURL,userName,userPwd);</p>

92、<p>  } catch (SQLException e) {</p><p>  e.printStackTrace();</p><p><b>  }</b></p><p><b>  }</b></p><p>  private void getStatement(){&l

93、t;/p><p>  getConn();</p><p><b>  try {</b></p><p>  st=dbConn.createStatement();</p><p>  } catch (SQLException e) {</p><p>  e.printStackTrace()

94、;</p><p><b>  }</b></p><p><b>  }</b></p><p>  public ResultSet query(String sql){</p><p>  getStatement();</p><p><b>  try {

95、</b></p><p>  rs=st.executeQuery(sql);</p><p>  return rs;</p><p>  } catch (SQLException e) {</p><p>  e.printStackTrace();</p><p>  return null;<

96、;/p><p><b>  }</b></p><p><b>  }</b></p><p>  public void Update(String sql){</p><p>  getStatement();</p><p><b>  try {</b&g

97、t;</p><p>  st.executeUpdate(sql);</p><p>  } catch (SQLException e) {</p><p>  // TODO Auto-generated catch block</p><p>  e.printStackTrace();</p><p><

98、;b>  }</b></p><p><b>  }</b></p><p>  public void ShowDialog(Connection dbConn,String sql,Object[]name,String title){</p><p>  DisplayDialog dlg = new DisplayDi

99、alog(dbConn,sql,name,title);</p><p><b>  }</b></p><p><b>  }</b></p><p>  6.3 顯示查詢結果:</p><p>  import java.awt.BorderLayout;</p><p&g

100、t;  import java.sql.Connection;</p><p>  import java.sql.ResultSet;</p><p>  import java.sql.ResultSetMetaData;</p><p>  import java.sql.SQLException;</p><p>  import j

101、ava.sql.Statement;</p><p>  import javax.swing.JDialog;</p><p>  import javax.swing.JFrame;</p><p>  import javax.swing.JLabel;</p><p>  import javax.swing.JScrollPane;

102、</p><p>  import javax.swing.JTable;</p><p>  public class DisplayDialog extends JDialog {//假設表格在JDialog上</p><p>  Statement stmt = null;</p><p>  DisplayDialog(Connect

103、ion connection, String sql,</p><p>  Object[] name,String title) {</p><p>  this.setBounds(200, 200, 600, 500);</p><p>  this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);</

104、p><p>  this.setVisible(true);</p><p>  this.setTitle(title);</p><p><b>  try {</b></p><p>  stmt = connection.createStatement(</p><p>  ResultSet

105、.TYPE_SCROLL_INSENSITIVE,// 對滾動不敏感,結果集可滾來滾去</p><p>  ResultSet.CONCUR_READ_ONLY);// 只能夠讀取里邊的內容,</p><p>  ResultSet rs = stmt.executeQuery(sql);</p><p>  rs.last();// 指到定位到最后一行</p

106、><p>  int row = rs.getRow();// 獲得總行數</p><p>  rs.beforeFirst();// 定位到開始</p><p>  ResultSetMetaData rsmd1 = rs.getMetaData();// 計算字段個數</p><p>  int col = rsmd1.getColumnCo

107、unt(); // 計算字段個數</p><p>  Object a[][] = new Object[row][col];</p><p>  JTable table = new JTable(a, name);</p><p>  for (int index = 0; rs.next(); index++)</p><p>  fo

108、r (int j = 0; j < col; j++)</p><p>  a[index][j] = rs.getString(j + 1);</p><p>  getContentPane().removeAll();</p><p>  add(new JScrollPane(table), BorderLayout.CENTER);</p>

109、;<p>  validate();</p><p>  rs.close();</p><p>  } catch (SQLException e) {</p><p>  System.out.println("SQL語句無效");</p><p>  add(new JLabel("SQL語句

110、無效"));</p><p>  e.printStackTrace();</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b>  6.4 主

111、函數:</b></p><p>  public class VehicleManagement {</p><p>  public static void main(String[] args) {</p><p>  // TODO Auto-generated method stub</p><p>  java.awt.

112、EventQueue.invokeLater(new Runnable() {</p><p>  public void run() {</p><p>  new Logo().setVisible(true);</p><p><b>  }</b></p><p><b>  });</b>

113、</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  參考文獻</b></p><p>  [1] 王珊 薩師煊.數據庫系統(tǒng)概論 第四版.出版地:高等教育出版社,2006年5月</p><p>  

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論