推薦:基于C#的接口基礎(chǔ)教程之七 第七節(jié)、覆蓋虛接口 有時候我們需要表達一種抽象的東西,它是一些東西的概括,但我們又不能真正的看到它成為一個實體在我們眼前出現(xiàn),為此面向?qū)ο蟮木幊陶Z言便有了抽象類的概念。C#
注意:本文暫時不講解數(shù)據(jù)庫的數(shù)據(jù)調(diào)出和顯示,因為他涉及的東西比較多,所以我們將另外詳細講解。本文主要要講的是數(shù)據(jù)庫的增加、刪除、修改。
一、定義OleDbCommand類型變量:MyCommand
要對數(shù)據(jù)庫進行增加、刪除、修改的操作我們還需要根據(jù)MyConnectio的類型定義一個OleDbCommand或者SqlCommand對象(請注意如果MyConnection是OleDbConnection類型,那么只能用OleDbCommand;如果MyConnection是SqlConnection類型,那么那么只能用SqlCommand。這里假設(shè)MyConnection是OleDbConnection類)。(方法一)你可以象拖放MyConnection一樣拖放一個OleDbCommand,并命名為 MyCommand。(方法二)在(關(guān)聯(lián)文件).CS文件中protected System.Data.OleDb.OleDbConnection MyConnection;下面手動添加:
protected System.Data.OleDb.OleDbCommand MyCommand;
在private void InitializeComponent()中this.MyConnection = new System.Data.OleDb.OleDbConnection();的下一行下面手動添加:
this.MyCommand = new System.Data.OleDb.OleDbCommand();
即可完成對MyCommand的定義
說明:MyCommand的作用是用來執(zhí)行SQL命令
二、利用定義的MyConnectio和MyCommand對數(shù)據(jù)庫進行增加、刪除、修改
首先我們需要連接并打開一個數(shù)據(jù)庫(關(guān)于數(shù)據(jù)庫的連接和打開的操作請察看我們以前的文章)。打開數(shù)據(jù)庫:MyConnectio.Open();
然后我們需要給MyCommand指定要執(zhí)行的SQL命令 : MyCommand.CommandText = "delete from admin";
接著我們需要給MyCommand指定數(shù)據(jù)源(對那個數(shù)據(jù)庫執(zhí)行SQL命令):MyCommand.Connection = MyConnection;然后我們執(zhí)行MyCommand命令即可: MyCommand. ExecuteNonQuery();如果我們在執(zhí)行還有"delete from admin";后需要接著執(zhí)行 “insert into admin (Admin_Code,Admin_Pwd) values(‘aa’,’bb’)”,則我們只要再次指定MyCommand指定要執(zhí)行的SQL命令 : MyCommand.CommandText =“insert into admin (Admin_Code,Admin_Pwd) values(‘aa’,’bb’)”,然后執(zhí)行MyCommand. ExecuteNonQuery();即可。(由于數(shù)據(jù)庫未關(guān)閉,所以我們不需要也不可以再次MyConnectio.Open();,同理由于沒有改變MyCommand的數(shù)據(jù)源所以我們也沒有必要再次指定MyCommand.Connection = MyConnection;)
下面我們將詳細講解如何在Page_Load()中對數(shù)據(jù)庫的增加、刪除、修改,最后我們再來總結(jié)一下ExecuteNonQuery(),ExecuteScalar(),ExecuteReader的用法
--------------------------------------------------------------
1、 增加新的記錄
private void Page_Load(object sender, System.EventArgs e)
{
MyConnection.Open();’打開數(shù)據(jù)庫
MyCommand1.CommandText = "insert into admin values(‘aaddq‘,‘as‘,‘ss‘)";
MyCommand1.Connection = MyConnection;
MyCommand1.ExecuteNonQuery();’由于增加了一條記錄,所以返回1
//或者MyCommand1.ExecuteReader();先增加一條記錄,然后返回一個System.Data.OleDb.OleDbDataReader類型的對象,該對象為:EOF
//或者MyCommand1. ExecuteScalar();先增加一條記錄,返回未實列化的對象
MyConnection.Close();
}
-------------------------------------------------------------------
2、 刪除現(xiàn)有數(shù)據(jù)
private void Page_Load(object sender, System.EventArgs e)
{
MyConnection.Open();’打開數(shù)據(jù)庫
MyCommand1.CommandText = "delete * from admin";
MyCommand1.Connection = MyConnection;
MyCommand1.ExecuteNonQuery();’由于刪除了n條記錄,所以返回n
//或者MyCommand1.ExecuteReader();先刪除n條記錄,然后返回一個System.Data.OleDb.OleDbDataReader類型的對象,該對象為:EOF
//或者MyCommand1. ExecuteScalar();先刪除n條記錄,返回未實列化的對象
MyConnection.Close();
}
分享:基于C#的接口基礎(chǔ)教程之六 第六節(jié)、接口轉(zhuǎn)換 C#中不僅支持.Net 平臺,而且支持COM平臺。為了支持 COM和.Net,C# 包含一種稱為屬性的獨特語言特性。一個屬性實際上就是一個 C# 類,它通過修飾源代碼來提供元信息
新聞熱點
疑難解答
圖片精選