因爲之前有個CSDN的賬號但是後來賬號丟了,於是只能另起爐竈,今天總有找回了丟失已久的登錄祕密,不知道有沒有辦法將兩個博客合併,只能手動複製黏貼以前的博文過來。。。悲慘
源地址:http://blog.csdn.net/sxfenglei/article/details/5431264 該博客不再用了
現在看看當年寫的代碼 真幼稚呵呵 轉過來紀念下當年的稚嫩,哈哈
/// <summary>
/// 對話框返回值
///
///這是一個退出按鍵的方法,用來確定用戶是否真的要退出
/// </summary>
private void 退出ToolStripMenuItem_Click(object sender, EventArgs e)
{
//定義 DialogResult 變量 用以存儲對話框返回值
DialogResult exitForm;
//對話框
exitForm = MessageBox.Show("馮磊老大您確定要離開我嗎?","退出系統",MessageBoxButtons.OKCancel,MessageBoxIcon.Information);
//判斷
if (exitForm == DialogResult.OK) //使用 DialogResult 屬性判斷該按鈕的返回值是否爲 "確定"
{
Application.Exit();//退出系統
}
}
/// <summary>
/// 創建 DBManager 類
///
/// 在 DBManager 類中創建數據庫連接
/// </summary>
class DBManager
{
//連接數據庫字符串 和 實例化 connection 對象
private static string sqlconString = "Data Source=ASUS//SQLEXPRESS;Initial Catalog=MyDB;Integrated Security=True";
public static SqlConnection con = new SqlConnection(sqlconString);
}
/// <summary>
/// 創建 User 類
///
/// 在 User 類中創建 用於存儲交換的變量
/// </summary>
class User
{
public string userID = "";
public string userName = "";
public string userAge = "";
public string userGongZi = "";
public string userJiGuan = "";
}
/// <summary>
/// ExecuteScalar()方法 返回單個值
/// 核心 SELECT COUNT(*) FROM Student
/// 核心 com.ExecuteScalar();
/// </summary>
//定義數據庫連接字符串 和 connection 對象
string sqlString = "Data Source=ASUS//SQLEXPRESS;Initial Catalog=MySchool;Integrated Security=True";
SqlConnection con = new SqlConnection(sqlString);
//打開數據庫
con.Open();
//拼SQL語句 和 創建 command 對象
string sql = "SELECT COUNT(*) FROM Student ";
SqlCommand com = new SqlCommand(sql,con);
// 執行 SQL 查詢 使用ExecuteScaler()方法 返回一個讀取值
int num = (int)com.ExecuteScalar();
//將返回值格式化後存入變量中 後輸出
string message = string.Format("Student表中共有{0}條學員信息!", num);
MessageBox.Show(message, "查詢結果", MessageBoxButtons.OK, MessageBoxIcon.Information);//然後將該變量輸出
//關閉數據庫
con.Close();
/// <summary>
/// 將數據加載到 comboBox 控件中
/// 核心 select studentName from student
/// 核心 SqlDataReader dataReader = com.ExecuteReader();
/// 核心 string studentName = "";
/// 核心 while (dataReader.Read()){
/// 核心 studentName = (string)dataReader[0];
/// 核心 comboBox1.Items.Add(studentName);
/// 核心 }
/// </summary>
//定義數據庫字符 和 connection 對象
string sqlString = "Data Source=ASUS//SQLEXPRESS;Initial Catalog=MySchool;Integrated Security=True";
SqlConnection con = new SqlConnection(sqlString);
//定義sql語句 和 command 對象
string sql = "select studentName from student";
SqlCommand com = new SqlCommand(sql, con);
//打開數據庫
con.Open();
//執行sql讀取 使用dataReader對象
SqlDataReader dataReader = com.ExecuteReader();
//循環讀取每一條數據 添加到comboBox1 中
string studentName = "";//將每條讀取存入這個變量 用以每次想comboBox1中添加
while (dataReader.Read())
{
studentName = (string)dataReader[0];//從第0項開始讀取
comboBox1.Items.Add(studentName);//添加每條讀取到 comboBox1 中
}
//關閉讀取 和 數據庫
dataReader.Close();
con.Close();
/// <summary>
/// 將數據加載到 listView 控件中
/// 核心 SqlDataReader dataReader = com.ExecuteReader();
/// 核心 string id = "";
/// 核心 string adminUser = "";
/// 核心 string adminPwd = "";
/// 核心 while (dataReader.Read()){
/// 核心 id = dataReader["adminId"].ToString();
/// 核心 adminUser = dataReader["LoginId"].ToString();
/// 核心 adminPwd = dataReader["LoginPwd"].ToString();
/// 核心 ListViewItem liv = new ListViewItem(adminUser);
/// 核心 liv.Tag = (int)dataReader["adminId"];
/// 核心 listView1.Items.Add(liv);
/// 核心 liv.SubItems.AddRange(new string[] { adminPwd });
/// 核心 }
/// </summary>
private void FillListView()
{
//清空listview
listView1.Items.Clear();
//定義數據庫字符 和 connection 對象
string sqlconString = "Data Source=ASUS//SQLEXPRESS;Initial Catalog=MySchool;Integrated Security=True";
SqlConnection con = new SqlConnection(sqlconString);//上面定義過
//拼SQL 和 command 對象
string sql = "select * from admin";//上面定義過
SqlCommand com = new SqlCommand(sql, con);//上面定義過
con.Open();
//執行SQL語句
SqlDataReader dataReader = com.ExecuteReader();
//定義存儲變量
string id = "";
string adminUser = "";
string adminPwd = "";
//循環讀取數據庫 數據 然後存入變量中
while (dataReader.Read())
{
//將數據庫中的數據讀取到變量中
id = dataReader["adminId"].ToString();//拿到ID
adminUser = dataReader["LoginId"].ToString();
adminPwd = dataReader["LoginPwd"].ToString();
//創建 ListView 項
ListViewItem liv = new ListViewItem(adminUser);//將 adminUser 加載到第一項中
liv.Tag = (int)dataReader["adminId"];
listView1.Items.Add(liv);//向listView1中添加一個新項
liv.SubItems.AddRange(new string[] { adminPwd });//將剩餘項 adminPwd 添加到listView1中
}
dataReader.Close();
con.Close();
}
/// <summary>
/// 單擊 listView 時 將本行數據存入 user 類中的變量中
/// 核心 定義 user 類
/// 核心 使用 listView1.SelectedItems[0].SubItems[1].Text.ToString(); 拿到數據 並存入user 類中(需要實例化)
/// </summary>
private void listView1_Click(object sender, EventArgs e)
{
//實例化 User 類
User us = new User();
//將鼠標點擊的 listView 行的數據存入 user 類中的變量中
us.userName = listView1.SelectedItems[0].SubItems[1].Text.ToString();
us.userAge = listView1.SelectedItems[0].SubItems[2].Text.ToString();
us.userGongZi = listView1.SelectedItems[0].SubItems[3].Text.ToString();
us.userJiGuan = listView1.SelectedItems[0].SubItems[4].Text.ToString();
//將 user類中的數據在放到 textBox 控件中
txtName.Text = us.userName;
txtAge.Text = us.userAge;
txtGongZi.Text = us.userGongZi;
txtJiGuan.Text = us.userJiGuan;
}
/// <summary>
/// 增
/// 核心 string sql = string.Format("insert into admin (LoginId,LoginPwd) values ('{0}','{1}')",textBox1.Text,textBox2.Text);
/// 核心 int num =com.ExecuteNonQuery();
/// </summary>
//判斷非空
if(textBox1.Text.Trim()=="")
{
MessageBox.Show("馮磊老大你叫啥?");
textBox1.Focus();//得到焦點
return;//如果爲空則返回空 即結束
}else if(textBox2.Text.Trim()=="")
{
MessageBox.Show("馮磊老大告訴我密碼?");
textBox2.Focus();
return;
}
//定義數據庫連接 和 connection 對象
string sqlconString = "Data Source=ASUS//SQLEXPRESS;Initial Catalog=MySchool;Integrated Security=True";
SqlConnection con = new SqlConnection(sqlconString );
//拼SQL 和 command 對象
string sql = string.Format("insert into admin (LoginId,LoginPwd) values ('{0}','{1}')",textBox1.Text,textBox2.Text);
SqlCommand com = new SqlCommand(sql,con );
con.Open();
//添加數據到數據庫 使用ExecutenNonQuery方法
int num =com.ExecuteNonQuery();
//如果添加成功側提示
if (num==1)
{
MessageBox.Show("馮磊老大添加成功!");
}
else {
MessageBox.Show("哦哦~~馮磊老大添加失敗!","",MessageBoxButtons.OK,MessageBoxIcon.Error);
}
con.Close();
//在加載 一遍 listView 可以將創建的listView 抽成方法 如 fillListView();
fillListView();
/// <summary>
/// 刪
/// 核心 if(listView1.SelectedItems.Count==0)
/// 核心 string sql = string.Format("delete from admin where AdminId='{0}'",(int)listView1.SelectedItems[0].Tag);
/// 核心 int test = com.ExecuteNonQuery();
/// </summary>
//確保用戶選擇了一個學員才執行修改操作
if(listView1.SelectedItems.Count==0)
{
MessageBox.Show("馮磊老大你不告訴我刪除那個我怎麼刪");
return;
}else{
//定義數據庫連接字符串 和 connection 對象
string sqlconString = "Data Source=ASUS//SQLEXPRESS;Initial Catalog=MySchool;Integrated Security=True";
SqlConnection con = new SqlConnection(sqlconString);
//拿ID
string sql = string.Format("delete from admin where AdminId='{0}'",(int)listView1.SelectedItems[0].Tag);
SqlCommand com = new SqlCommand(sql,con);
con.Open();
//執行SQL
int test = com.ExecuteNonQuery();
//提示刪除成功與否
if (test > 0)
{
MessageBox.Show("馮磊老大我成功的給你滅了它!");
}
else {
MessageBox.Show("馮磊老大我滅它失敗!");
}
con.Close();
}
/* listView */
FillListView();//加載FillListView();
/// <summary>
/// 右鍵 刪除
/// 核心 listView1.SelectedItems[0].Tag.ToString()
/// </summary>
DBManager.con.Open();
string sql = string.Format("delete from yuangong where id='{0}'",listView1.SelectedItems[0].Tag.ToString());//listView1.SelectedItems[0].Tag.ToString(); //拿到ID
SqlCommand com = new SqlCommand(sql,DBManager.con);
int shanChu = com.ExecuteNonQuery();
DBManager.con.Close();
/* listView */
FillListView();//加載FillListView();
/// <summary>
/// 改
/// 核心 (int)listView1.SelectedItems[0].Tag
/// 核心 update YuanGong set name='{0}',age='{1}',gongzi='{2}',jiguan='{3}' where id={4}
/// 核心 int Run = com.ExecuteNonQuery();
/// </summary>
SqlConnection sql = string.Format("update YuanGong set name='{0}',age='{1}',gongzi='{2}',jiguan='{3}' where id={4}", txtName.Text, txtAge.Text, txtGongZi.Text, txtJiGuan.Text, (int)listView1.SelectedItems[0].Tag);
SqlCommand com = new SqlCommand(sql, DBManager.con);
DBManager.con.Open();
int Run = com.ExecuteNonQuery();
if (Run == 1)
{
DBManager.con.Close();
FillListView();
}
else
{
MessageBox.Show("馮磊老大修改失敗!", "提示框", MessageBoxButtons.OK, MessageBoxIcon.Error);
DBManager.con.Close();
}
/// <summary>
/// 查
/// 核心 listView1.Items.Clear();
/// 核心 if (!datareader.HasRows)
/// 核心 SqlDataReader datareader = com.ExecuteReader();
/// </summary>
listView1.Items.Clear();
string id = "";
string name = "";
string age = "";
string gongzi = "";
string jiguan = "";
sql = string.Format("select * from yuangong where name='{0}' or age='{1}' or gongzi='{2}' or jiguan='{3}'", txtName.Text, txtAge.Text, txtGongZi.Text, txtJiGuan.Text);
com = new SqlCommand(sql, DBManager.con);
SqlDataReader datareader = com.ExecuteReader();
if (!datareader.HasRows)
{
MessageBox.Show("哦哦~~~馮磊老大沒有在國防部查到你要的數據!");
datareader.Close();
DBManager.con.Close();
return;
}
else {
while(datareader.Read())
{
id=datareader["ID"].ToString();
name=datareader["name"].ToString();
age=datareader["age"].ToString();
gongzi=datareader["gongzi"].ToString();
jiguan=datareader["jiguan"].ToString();
ListViewItem liv = new ListViewItem(id);
liv.Tag=(int)datareader["ID"];
listView1.Items.Add(liv);
liv.SubItems.AddRange(new string []{name,age,gongzi,jiguan});
}
datareader.Close();
DBManager.con.Close();
}
//============================================================================================
MessageBox.Show(listView1.SelectedItems[0].Tag.ToString()); //拿到ID
MessageBox.Show(listView1.SelectedItems[0].SubItems[0].Text); //拿到第一列的單元格的值
//============================================================================================
/// <summary>
/// 創建 全局變量
/// </summary>
//實例化 dataSet 和 聲明 dataAdapter
DataSet dataSet = new DataSet();
SqlDataAdapter dataAdapter;
//聲明字符
string sql ="";
/// <summary>
/// 創建 fillDataGridView方法
/// </summary>
private void fillDataGridView()
{
//拼基本 SQL 語句
sql = "select id as 編號,name as 姓名,age as 年齡,gongzi as 工資,jiguan as 籍貫 from yuangong ";
//實例化 dataAdapter
dataAdapter = new SqlDataAdapter(sql, DBManager.con);
//填充 dataSet
dataAdapter.Fill(dataSet, "yuanGong");
//將數據綁定到 dataGridView中
dataGridView1.DataSource = dataSet.Tables["yuanGong"];
}
/// <summary>
/// 篩選 數據
/// </summary>
//刷新基本 SQL 語句
sql = "select id as 編號,name as 姓名,age as 年齡,gongzi as 工資,jiguan as 籍貫 from yuanGong ";
//拼接 條件SQL 語句
switch(comboBox1.Text)
{
case "全部":
break;
case "河南":
sql = sql + "where jiguan='河南'";
break;
case "浙江":
sql = sql + "where jiguan='浙江'";
break;
case "陝西":
sql = sql + "where jiguan='陝西'";
break;
case "河北":
sql = sql + "where jiguan='河北'";
break;
case "青島":
sql = sql + "where jiguan='青島'";
break;
}
//清空 dataSet
dataSet.Tables["yuanGong"].Clear();
//實例化 dataAdapter
dataAdapter = new SqlDataAdapter(sql,DBManager.con);
//填充 dataSet
dataAdapter.Fill(dataSet, "yuanGong");
//將數據綁定到 dataGridView中
dataGridView1.DataSource = dataSet.Tables["yuanGong"];
/// <summary>
/// 更新 數據到數據源
/// </summary>
// 確認修改
DialogResult result = MessageBox.Show("馮磊老大確定要保存修改嗎?", "操作提示",MessageBoxButtons.OKCancel, MessageBoxIcon.Question);
if (result == DialogResult.OK)
{
// 自動生成更新數據用的命令
SqlCommandBuilder comBui = new SqlCommandBuilder(dataAdapter);
// 將修改過的數據提交到數據庫
dataAdapter.Update(dataSet, "yuanGong");
}
//清空 dataSet
dataSet.Tables["yuanGong"].Clear();
//重新加載數據到 dataGridView 中
fillDataGridView();
///窗體間傳值
/*公共類*/
//創建類
public class readEmail
{
public static string userName="";
public static string emailName = "";
public static string emailContent = "";
}
/*from1*/
//將鼠標點擊的 listView 行的數據存入 read 類中的變量中
readEmail.userName = listView1.SelectedItems[0].SubItems[0].Text.ToString();
readEmail.emailName = listView1.SelectedItems[0].SubItems[1].Text.ToString();
readEmail.emailContent = listView1.SelectedItems[0].SubItems[2].Text.ToString();
//打開新窗體
emailWinFrom emailwinfrom = new emailWinFrom();
emailwinfrom.ShowDialog();
/*from2*/
//將內容顯示在新窗體的textbox 中
textBox2.Text = readEmail.userName;
textBox3.Text = readEmail.emailName;
textBox1.Text = readEmail.emailContent;