999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于C#.NET的成績管理模塊的設計與實現

2017-12-25 00:45:02馬秀榮莊冀
呼倫貝爾學院學報 2017年6期
關鍵詞:數據庫信息方法

馬秀榮 莊冀

?

基于C#.NET的成績管理模塊的設計與實現

馬秀榮 莊冀

(1.呼倫貝爾學院計算機學院 內蒙古 海拉爾 021008 2.嘉興學院機電工程學院 浙江 南湖區 314000)

C#是基于NET平臺開發的一種為.NET Framework設計的開發語言,NET Framework提供了一個操作數據庫的技術---ADO.NET,MySql是一個開源的小型數據庫管理系統,具有體積小、速度快、總體擁有成本低等特點。本文以成績管理模塊的設計與實現介紹了基于C#語言的程序開發過程。

C#;MySql數據庫;ADO;成績管理

1.引言

C#是專門為快速編寫在.NET框架上運行的各種應用程序而設計的。該語言保持C和C++語言風格的表現力和簡潔特征的同時,簡化了C++的復雜性,同時綜合了VB簡單的可視化操作,以其強大的操作能力、優雅的語法風格、創新的語言特性和便捷的面向組件編程的支持實現了應用程序的快速開發,成為.NET平臺的首選編程語言[1]。

應用C#語言來開發應用程序需要訪問某種形式的數據庫。MySQL是一個開放源碼的小型關聯式數據庫管理系統,開發者為瑞典MySQL AB公司。目前MySQL被廣泛地應用在個人使用者和中小型網站中。由于其體積小、速度快、總體擁有成本低,尤其是開放源碼這一特點,許多個人使用者和中小型網站選擇MySQL作為數據庫,從而降低總體擁有成本[2]。

2.ADO數據庫訪問技術

ADO(Active Data Object).NET是微軟.NET數據庫的訪問框架,它是數據庫應用程序和數據源之間溝通的橋梁,主要提供一個面向對象的數據訪問架構,用來開發數據庫應用程序。ADO.NET由.NET框架數據提供程序和DataSet兩部分組成,前者包含了Connection、Command、DataReader、DataAdapter對象在內的組件,后者是ADO.NET斷開式結構的核心組件[3]。本模塊是在連接狀態下實現對數據庫的訪問,主要用到了以下對象。

2.1 Connection對象

Connection對象是一個與數據庫進行連接的對象,包含著與數據源創建連接的信息。沒有使用連接對象打開數據庫,是無法從數據庫中讀取數據的。這個對象在ADO.NET 的最底層[1]。

2.2 Command對象

Command對象用于返回數據、修改數據、運行存儲過程,以及發送或檢索參數信息的數據庫命令。這個對象是架構在Connection上,也就是Command對象是通過連接到數據源的Connection對象來下命令的;所以Connection連接到哪個數據庫,Command對象的命令就下到哪里[1]。

2.3 DataReader對象

DataReader對象通過Command對象提供從數據檢索信息的功能,是一次一條記錄的向下讀取數據源中的數據,不作其它的操作。因為DataReader在讀取數據的時候限制了每次只讀取一條記錄,而且只能只讀,所以使用起來不但節省資源而且效率很高[1]。

3.ADO數據庫開發過程

3.1 安裝驅動軟件

要連接MySql數據庫必須首先下載MySql官方的連接.net的文件“mysql-connector-net-6.6.6-noinstall.zip”,解壓該文件后,根據.Framework選擇相應的版本,在文件夾中需選擇“mysql.data.dll”文件添加到項目的引用中。

3.2 添加引用

在項目的解決方案內,右鍵單擊“引用”——選擇“添加引用”——在彈出的對話框中,選擇“瀏覽”——找到文件“mysql.data.dll”——單擊“確定”,則在引用下會出現“mysql.data”。在添加引用之后,可以在代碼窗口的命名空間處添加using語句,語句為:usingMySql.Data.MySqlClient;在命名空間使用using語句最大的優點是當引用數據庫對象時不必每次輸入過長的名稱。

3.3 建立應用程序和MySql數據庫的連接

在MySql數據庫中已建立待訪問的數據庫文件“stuManagerDB”,里面有三張表,分別為學生表、課程表和成績表。在應用程序中首先要創建Connection對象,語句為:MySqlConnection conn=new MySqlConnection();然后設置連接對象的ConnctionString屬性,屬性值為"Server=localhost;uid=root;pwd=root;Database=stuManagerDB";其中,Server是服務器名稱,uid是賬戶,pwd是密碼,Database是訪問數據庫的名稱。

3.4 打開數據庫

在設置連接對象的連接字符串屬性后,需使用Open()方法來打開連接操作。語句為:conn.Open();

3.5 設置Command 對象

3.5.1. 實例化Command 對象。

Command對象在執行SQL命令之前,需設置其CommandText屬性和Connection屬性。

語句為:

stringsqlStr = "select * from student";//SQL字符串

MySqlCommand com= new MySqlCommand();

Com.Connection=conn;

com.CommandText = sqlStr;

3.5.2. 發送操作指令,執行SQL命令

執行SQL命令可以分為兩種情況:有查詢方法和非查詢方法。執行查詢操作時可以使用Command對象的ExecuteScalar()方法或ExecuteReader()方法,但二者返回的類型不同,ExecuteReader()方法返回MySqlDataReader類型,ExecuteScalar()方法返回object 類型。當得到DataReader對象后,還可以調用其Read()方法來讀取一行字符流,若想得到數據流的某一列,則可以執行get()方法來實現。當對數據庫進行非查詢操作時,Command對象可以執行ExecuteNonQuery()方法來改變數據庫中的數據。

3.6 關閉操作

若已打開DataReader對象,對數據庫訪問結束后需先被關閉,語句為:dr.Close();然后再調用連接對象的Close方法來關閉到數據庫的連接,語句為:conn.Close();

4.設計實現

4.1 總體設計

學生成績管理模塊主要實現了教師可以查詢學生成績信息、添加學生成績信息、修改學生成績信息和刪除學生成績信息的功能。功能模塊圖如圖1所示。

4.2 窗體設計

首先建立一個項目文件“學生成績管理”,在該項目下新建一個窗體“frmScoreManagement”,窗體中需使用的控件如表1所示:

其中,列表視圖“lvScoreQuery”來顯示查詢結果,三個命令按鈕對應的單擊事件分別實現添加學生成績信息、修改學生成績信息和刪除學生成績信息的功能。文本框來顯示“課程編號”,“課程名稱”,“學生姓名”,“學生成績”信息,組合框顯示“學生學號”信息。界面實現效果如圖2所示。

表1 控件及屬性

圖2 成績管理運行界面

4.3 核心代碼

//窗體加載時,在列表視圖中顯示查詢信息

private void frmScoreMag_Load(object sender, EventArgs e)

{

string conString = "server=localhost;uid=root;pwd

=root;database=stuManagerDB";//連接字符串

MySqlConnection conn = new MySqlConnection

(conString);//連接對象

conn.Open();//打開連接

string sqlStr = "select sNo from student";//查找選課學生的學號

MySqlCommand com = new MySqlCommand

(sqlStr, conn);

MySqlDataReaderdr = com.ExecuteReader();

while(dr.Read())

{

cboStudentNo.Items.Add(dr["sNo"]);//在組合框內顯示學號

}

cboStudentNo.SelectedIndex = 0;

dr.Close();

conn.Close();

showScoreMsg();//在列表視圖中顯示查詢結果

}

//插入學生成績

private void btnAdd_Click(object sender, EventArgs e)

{

DBHelper.ChangeData(sql);

string sqlStr=string.Format("insert into score(sNo,curNo,grade) values('{0}','{1}',{2})", cboStudentNo.Text, txtCourseId.Text, txtScore.Text);

DBHelper.ChangeData(sqlStr);//調用ChangeData()方法實現插入操作

showScoreMsg();

}

//刪除學生成績

privatevoid btnDelete_Click(object sender, EventArgs e)

{

string sqlStr=string.Format("delete from score wheresno='{0}' and curno='{1}'", cboStudentNo.Text, txtCourseId.Text, txtScore.Text);

DBHelper.ChangeData(sqlStrl); //調用ChangeData()方法實現刪除操作

showScoreMsg();}

//修改學生成績

private void btnUpdate_Click(object sender, EventArgs e)

{

string sqlStr = string.Format("update score set grade={0} where sno='{1}' and curno='{2}'", txtScore.Text, cboStudentNo.Text, txtCourseId.Text);

DBHelper.ChangeData(sqlStr); //調用ChangeData()方法實現更新操作

showScoreMsg();

}

5.結束語

本文主要闡述了在C#.NET應用程序中,利用ADO.NET技術對數據庫的訪問操作。文中對數據庫的訪問步驟可以幫助初學者有效地連接MySql數據庫,通過具體實例對ADO.NET中的數據提供對象的屬性和方法進行了具體的應用,有效地完成了對學生成績信息的查詢、添加、修改和刪除操作。

[1]甘勇,尚展壘.C#程序設計[M].北京:人民郵電出版社,2016.

[2]劉志.中小型超市管理系統設計與實現[D].西安:西安電子科技大學,2013.

[3]馬駿 C#程序設計及應用教程[M].北京:人民郵電出版社,2009.

責任編輯:烏曉梅

2017-11-16

馬秀榮(1976-),女,漢族,呼倫貝爾學院計算機學院,副教授,碩士。研究方向:計算機應用。

莊冀(1995-),男,漢族,嘉興學院機電工程學院。研究方向:測控技術與儀器。

TP311.52

A

1009-4601(2017)06-0134-04

猜你喜歡
數據庫信息方法
訂閱信息
中華手工(2017年2期)2017-06-06 23:00:31
數據庫
財經(2017年2期)2017-03-10 14:35:35
數據庫
財經(2016年15期)2016-06-03 07:38:02
用對方法才能瘦
Coco薇(2016年2期)2016-03-22 02:42:52
數據庫
財經(2016年3期)2016-03-07 07:44:46
數據庫
財經(2016年6期)2016-02-24 07:41:51
四大方法 教你不再“坐以待病”!
Coco薇(2015年1期)2015-08-13 02:47:34
捕魚
展會信息
中外會展(2014年4期)2014-11-27 07:46:46
健康信息
祝您健康(1987年3期)1987-12-30 09:52:32
主站蜘蛛池模板: 亚瑟天堂久久一区二区影院| 中文字幕日韩久久综合影院| 日韩小视频在线观看| 宅男噜噜噜66国产在线观看| 午夜福利亚洲精品| 亚洲成人一区二区| 国产成人无码综合亚洲日韩不卡| 中文字幕永久视频| 高清欧美性猛交XXXX黑人猛交 | 欧美区一区| 在线观看国产精品第一区免费 | 欧洲免费精品视频在线| 亚洲精品福利网站| 亚洲成肉网| 亚洲色图欧美激情| 亚洲不卡网| 婷婷开心中文字幕| 欧美激情成人网| 欧美有码在线| 国产无遮挡猛进猛出免费软件| 国产精品分类视频分类一区| 欧美亚洲第一页| 亚洲一级毛片在线观播放| 亚洲综合第一区| 欧美成人看片一区二区三区| 久久a毛片| 强乱中文字幕在线播放不卡| 精品一区二区无码av| 国产激情第一页| 国产成人欧美| 欧美午夜网| 伦伦影院精品一区| 亚洲天堂免费在线视频| 538精品在线观看| 亚洲无线视频| 亚洲天堂视频网站| 日本人妻丰满熟妇区| 精品少妇人妻av无码久久| 538精品在线观看| 亚洲不卡网| 日韩精品专区免费无码aⅴ| 天天综合天天综合| 国产产在线精品亚洲aavv| 亚洲精品福利视频| 激情影院内射美女| 亚洲无码A视频在线| 四虎永久免费地址在线网站| 精品人妻一区无码视频| 亚洲欧美日韩久久精品| 国产97视频在线观看| 国产交换配偶在线视频| 国产精品视频白浆免费视频| 中文字幕色在线| 国产综合在线观看视频| 最新国产成人剧情在线播放| 日韩在线欧美在线| 国模极品一区二区三区| 东京热一区二区三区无码视频| 欧美一级在线| 亚洲天天更新| 国产福利在线观看精品| 久久久久国产精品熟女影院| 亚洲va在线∨a天堂va欧美va| 1024你懂的国产精品| 99热亚洲精品6码| 婷婷六月综合| 欧美亚洲国产精品久久蜜芽| 成人福利一区二区视频在线| av一区二区三区高清久久| 免费观看男人免费桶女人视频| 国产在线麻豆波多野结衣| 欧美一区二区三区国产精品| 亚洲综合片| 欧美狠狠干| 成人国产精品一级毛片天堂| 草逼视频国产| 国产正在播放| 国产精品精品视频| 国产乱子伦手机在线| 色老头综合网| 欧美不卡二区| 久草性视频|