電子課件第14章04公共類設(shè)計_第1頁
電子課件第14章04公共類設(shè)計_第2頁
電子課件第14章04公共類設(shè)計_第3頁
電子課件第14章04公共類設(shè)計_第4頁
電子課件第14章04公共類設(shè)計_第5頁
已閱讀5頁,還剩4頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

公共類設(shè)計本講大綱:1.MyMeans公共類

2.MyModule公共類支持網(wǎng)站:MyMeans公共類該類封裝了本系統(tǒng)中所有與數(shù)據(jù)庫連接的方法,可以通過該類的方法與數(shù)據(jù)庫建立連接,并對數(shù)據(jù)信息進行添加、修改、刪除以及讀取操作。在命名空間區(qū)域引用usingSystem.Data.SqlClient命名空間。主要代碼如下:using

System;using

System.Collections.Generic;using

System.Text;using

System.Data;using

System.Data.SqlClient;namespace

PWMS.DataClassclass

MyMeans#region

全局變量public

static

string

Login_ID

=

"";public

static

string

Login_Name

=

"";//定義全局變量,記錄當(dāng)前登錄的用戶編號//定義全局變量,記錄當(dāng)前登錄的用戶名//定義靜態(tài)全局變量,記錄“基礎(chǔ)信息”各窗體中的表名、SQL語句以及要添加和修改的字段名

public

static

string

Mean_SQL="",Mean_Table="",Mean_Field="";//定義一個SqlConnection類型的靜態(tài)公共變量My_con,用于判斷數(shù)據(jù)庫是否連接成功public

static

SqlConnection

My_con;//定義SQL

Server

2012連接字符串,用戶在使用時,將//Data

Source改為自己的SQL

Server

2012服務(wù)器名//MRDEL;Database=db_PWMS;Userpublic

static

string

M_str_sqlcon

="Data

Source=MRDEL

id=sa;PWD="; //

MRDEL為本機的SQL

Server

2012服務(wù)器名稱public

static

int

Login

n

=

0;

//用戶登錄與重新登錄的標(biāo)識下面對MyMeans類中的自定義方法進行詳細介紹。

1.getcon()方法該方法是用static定義的靜態(tài)方法,其功能是建立與數(shù)據(jù)庫的連接,然后通過SqlConnection對象的

Open()方法打開與數(shù)據(jù)庫的連接,并返回SqlConnection對象的信息。代碼如下:public

static

SqlConnection

getcon(){//用SqlConnection對象與指定的數(shù)據(jù)庫相連接//打//返My_con

=

new

SqlConnection(M_str_sqlcon);My_con.Open();開數(shù)據(jù)庫連接return

My_con;回SqlConnection對象的信息}2.con_close()方法該方法的主要功能是對數(shù)據(jù)庫操作后,通過該方法判斷是否與數(shù)據(jù)庫連接,如果連接,則關(guān)閉數(shù)據(jù)庫連接。代碼如下:public

void

con_close(){//判斷是否打開與數(shù)據(jù)庫的連接//關(guān)閉數(shù)據(jù)庫的連接//釋放My_con變量的所有空間if

(My_con.State

==

ConnectionState.Open)

{My_con.Close();My_con.Dispose();}}3.

()方法該方法的主要功能是用SqlDataReader對象以只讀的方式讀取數(shù)據(jù)庫中的信息,并以SqlDataReader對象進行返回,其中SQLstr參數(shù)表示傳遞的SQL語句。代碼如下:(string

SQLstr)//打開與數(shù)據(jù)public

SqlDataReader{getcon();庫的連接SqlCommand =

My_con.CreateCommand();//創(chuàng)建一個SqlCommand對象,用于執(zhí)行SQL語句//獲取指定的SQL語句.CommandText

=

SQLstr;//執(zhí)行SQL語句,生成一個SqlDataReader對象SqlDataReader

My_read

=

.ExecuteReader();return

My_read;}4.

()方法該方法的主要功能是通過SqlCommand對象執(zhí)行數(shù)據(jù)庫中的添加、修改和刪除操作,并在執(zhí)行完后,關(guān)閉與數(shù)據(jù)庫的連接,其中SQLstr參數(shù)表示傳遞的SQL語句。代碼如下:public

void (string

SQLstr){getcon();

//打開與數(shù)據(jù)庫的連接//創(chuàng)建一個SqlCommand對象,用于執(zhí)行SQL語句SqlCommand =

new

SqlCommand(SQLstr,

My_con);.ExecuteNonQuery();.Dispose();//執(zhí)行SQL語句//釋放所有空間5.getDataSet()方法該方法的主要功能是通過SqlCommand對象執(zhí)行數(shù)據(jù)庫中的添加、修改和刪除的操作,并在執(zhí)行完后,關(guān)閉與數(shù)據(jù)庫的連接,其中SQLstr參數(shù)表示傳遞的SQL語句。代碼如下:public

DataSet

getDataSet(string

SQLstr,

string

tableName){getcon();//打開與數(shù)據(jù)庫的連接//創(chuàng)建DataSet對象

SqlDataAdapter

SQLda=newSqlDataAdapter(SQLstr,

My_con);DataSet

My_DataSet

=

new

DataSet();SQLda.Fill(My_DataSet,

tableName);con_close();//關(guān)閉數(shù)據(jù)庫的連接return

My_DataSet;//返回DataSet對象的信息}說明:

SqlDataAdapter類表示用于填充DataSet和更新SQL

Server數(shù)據(jù)庫的一組數(shù)據(jù)命令和一個數(shù)據(jù)庫連接。

DataSet是數(shù)據(jù)的內(nèi)存駐留表示形式,它表示一個數(shù)據(jù)集。

SqlDataAdapter類的Fill()方法用來填充DataSet或DataTable數(shù)據(jù)集。MyModule公共類該類將系統(tǒng)中所有窗體的動態(tài)調(diào)用,以及動態(tài)生成添加、修改、刪除和查詢的SQL語句等全部封裝到了指定的自定義方法中,以便在開發(fā)程序時,進行重復(fù)調(diào)用。這樣可以大大簡化程序的開發(fā)過程。因為該類中應(yīng)用了可視化組件的基類和對數(shù)據(jù)庫進行操作的相關(guān)對象,所以在命名空間區(qū)域引用using

System.Windows.Forms和using

System.Data.SqlClient命名空間。主要代碼如下:using

System;using

System.Collections.Generic;using

System.Text;//以下是添加的命名空間using

System.Windows.Forms;using

System.Data;using

System.Data.SqlClient;namespace

PWMS.ModuleClass{classMyModule{#region公共變量//聲明MyMeans類的一個對象,以調(diào)用其方法

DataClass.MyMeans

MyDataClass=new

PWMS.DataClass.MyMeans();publicstatic

string

ADDs=""; //用來存儲添加或修改的SQL語句public

static

string

FindValue

=

"";

//存儲查詢條件public

static

string

Address_ID

=

"";

//存儲通訊錄添加修改時的ID編號//存儲用戶的ID編號public

static

string

User_ID

=

"";public

static

string

User_Name="";

//存儲用戶名#endregion……自定義方法,如Show_Form()、TreeMenuF()、Part_SaveClass()等方法}}因篇幅有限,下面只對幾個比較重要的方法進行介紹。

1.Show_Form()方法該方法通過FrmName參數(shù)傳遞的窗體名稱,調(diào)用相應(yīng)的子窗體,因本系統(tǒng)中存在公共窗體,也就是在同一個窗體模塊中,可以顯示不同的窗體,所以用參數(shù)n來進行標(biāo)識。調(diào)用公共窗體,實際上就是通過不同的SQL語句,在顯示窗體時以不同的數(shù)據(jù)進行顯示,以實現(xiàn)不同窗體的顯示效果。主要代碼如下:public

void

Show_Form(string

FrmName,

int

n){if

(n==1){//調(diào)用指定窗體//判斷當(dāng)前要打開的窗體//設(shè)置窗體名稱//顯示窗體.//設(shè)置窗體名稱//顯示窗體if(FrmName=="人事檔案瀏覽"){PerForm.Frm_ManFile

FrmManFile=new

PWMS.PerForm.Frm_ManFile();//聲明窗體

FrmManFile.Text="人事檔案瀏覽";FrmManFile.ShowDialog();}……if(FrmName=="員工生日提示"){InfoAddForm.F_ClewSet

FrmClewSet=newPWMS.InfoAddForm.F_ClewSet();FrmClewSet.Text="員工生日提示";//設(shè)置窗體的Tag屬性,用于在打開窗體時判斷窗體的顯示類型FrmClewSet.Tag

=

1;FrmClewSet.ShowDialog();}if(FrmName=="員工合同提示"){InfoAddForm.F_ClewSet

FrmClewSet=newPWMS.InfoAddForm.F_ClewSet();FrmClewSet.Text="員工合同提示";FrmClewSet.Tag

=

2;FrmClewSet.ShowDialog();……if(FrmName=="記事本")//判斷是否為記事本System.Diagnostics.Process.Start("notepad.exe");//調(diào)用系統(tǒng)記事本}if

(n==2){//調(diào)用公共窗體String

FrmStr="";//記錄窗體名稱if(FrmName=="民族類別設(shè)置"){//判斷要打開的窗體DataClass.MyMeans.Mean_SQL

=

"select

*

from

tb_Folk";//SQL語句DataClass.MyMeans.Mean_Table

=

"tb_Folk";DataClass.MyMeans.Mean_Field

=

"FolkName";//表名//添加、修改數(shù)據(jù)的字段名FrmStr=

FrmName;}……if(FrmName=="記事本類別設(shè)置"){DataClass.MyMeans.Mean_SQL

=

"select

*

from

tb_WordPad";DataClass.MyMeans.Mean_Table

溫馨提示

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

評論

0/150

提交評論