日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

第五节 8登陆练习操作

發布時間:2025/3/20 编程问答 18 豆豆
生活随笔 收集整理的這篇文章主要介紹了 第五节 8登陆练习操作 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
using System; using System.Windows.Forms; using System.Data.SqlClient; using System.IO;namespace _8登陸練習操作 {public partial class Form1 : Form{public Form1(){InitializeComponent();}private void SetErrorTimes(){using (SqlConnection conn = new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDbFilename=E:\MyProjects\C#net傳智播客\第五季ADO.NET\8登陸練習操作\8登陸練習操作\Database1.mdf;Integrated Security=True;User Instance=True")){conn.Open();using (SqlCommand upComd = conn.CreateCommand()){upComd.CommandText = "update T_User set ErrorTimes = ErrorTimes + 1 WHERE UserName=@UserName";upComd.Parameters.Add(new SqlParameter("UserName", UserName.Text));upComd.ExecuteNonQuery();}}}private void ResetErrorTimes(){using (SqlConnection conn = new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDbFilename=E:\MyProjects\C#net傳智播客\第五季ADO.NET\8登陸練習操作\8登陸練習操作\Database1.mdf;Integrated Security=True;User Instance=True")){conn.Open();using (SqlCommand updateCmd = conn.CreateCommand()){updateCmd.CommandText = "update T_User set ErrorTimes = 0 WHERE UserName=@UserName";updateCmd.Parameters.Add(new SqlParameter("UserName", UserName.Text));updateCmd.ExecuteNonQuery();}}}private void button1_Click(object sender, EventArgs e){using (SqlConnection conn = new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDbFilename=E:\MyProjects\C#net傳智播客\第五季ADO.NET\8登陸練習操作\8登陸練習操作\Database1.mdf;Integrated Security=True;User Instance=True")){conn.Open();using (SqlCommand cmd = conn.CreateCommand()) {cmd.CommandText = "Select * FROM T_User WHERE UserName=@UserName";cmd.Parameters.Add(new SqlParameter("UserName", UserName.Text));using (SqlDataReader reader = cmd.ExecuteReader()) {if (reader.Read()){int errotTimes = reader.GetInt32(reader.GetOrdinal("ErrorTimes"));if (errotTimes >= 3){//Console.WriteLine("對不起用戶已經被鎖定!");MessageBox.Show("對不起用戶已經被鎖定!");}else{string passwd = Password.Text;string t_passwd =reader.GetString(reader.GetOrdinal("Password"));if (passwd == t_passwd){//清空一下ErrorTimes//這里還沒有其它的辦法,只能另外寫一個函數用于來更新ErrorTimes的值/*cmd.Parameters.Clear();cmd.CommandText = "update T_User set ErrorTimes = 0 WERE UserName=@UserName";cmd.Parameters.Add(new SqlParameter("UserName", UserName.Text));cmd.ExecuteNonQuery();* */ResetErrorTimes();MessageBox.Show("登陸成功!");//Console.WriteLine("登陸成功!");}else {//添加ErrorTimes/*cmd.Parameters.Clear(); //這里選清空一下Parameterscmd.CommandText = "update T_User set ErrorTimes = ErrorTimes + 1 WHERE UserName=@UserName";cmd.Parameters.Add(new SqlParameter("UserName",UserName.Text));cmd.ExecuteNonQuery();*///在同一個連接中,如果SqlDataReader沒關閉,那么是不能執行Update之類的語句的SetErrorTimes();MessageBox.Show("密碼錯誤!");//Console.WriteLine("密碼錯誤!");}}}else {//Console.WriteLine("用戶名不存在!");MessageBox.Show("用戶名不存在!");}}}}}//文件導入private void button2_Click(object sender, EventArgs e){//當點擊彈出窗口,然后點擊了確定if (openFileDialog1.ShowDialog() == DialogResult.OK) {//取得文件流using (FileStream fileStream = File.OpenRead(openFileDialog1.FileName)) {//讀取文件using (StreamReader streamReader = new StreamReader(fileStream)) {string line = null;while ((line = streamReader.ReadLine()) != null) {string[] str = line.Split('|');string name = str[0];string passwd = str[1];int errorTimes = Convert.ToInt32(str[2]);using (SqlConnection conn = new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDbFilename=E:\MyProjects\C#net傳智播客\第五季ADO.NET\8登陸練習操作\8登陸練習操作\Database1.mdf;Integrated Security=True;User Instance=True")){conn.Open();using (SqlCommand cmd = conn.CreateCommand()){//MessageBox.Show("name:"+name+",passwd:"+passwd+",errorTimes:"+errorTimes+"");//在這里測試了一會兒,唉,自己不小心,把變量給寫錯了,看來以后還要多加小心才行cmd.CommandText = "Insert into T_User(UserName, Password, ErrorTimes) values(@username,@password,@errortimes) ";cmd.Parameters.Add(new SqlParameter("username", name));cmd.Parameters.Add(new SqlParameter("password", passwd));cmd.Parameters.Add(new SqlParameter("errortimes", errorTimes));cmd.ExecuteNonQuery();} }}}}}MessageBox.Show("導入成功!");}//文件導出private void button3_Click(object sender, EventArgs e){using (SqlConnection conn = new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDbFilename=E:\MyProjects\C#net傳智播客\第五季ADO.NET\8登陸練習操作\8登陸練習操作\Database1.mdf;Integrated Security=True;User Instance=True")){conn.Open();using (SqlCommand cmd = conn.CreateCommand()){cmd.CommandText = "select * FROM T_User";//讀取多行數據using (SqlDataReader reader = cmd.ExecuteReader()){StreamWriter sw = File.CreateText(@"c:\2.txt");while (reader.Read()) //循環數據{long id = reader.GetInt64(reader.GetOrdinal("Id"));string name = reader.GetString(reader.GetOrdinal("UserName"));string passwd = reader.GetString(reader.GetOrdinal("Password"));int errortimes = reader.GetInt32(reader.GetOrdinal("ErrorTimes"));sw.WriteLine("{0}|{1}|{2}|{3}",id,name,passwd,errortimes);//MessageBox.Show("id:" + id + ",name:" + name + ",passwd:" + passwd + ",errortimes:" + errortimes);}sw.Close();}}}MessageBox.Show("導出數據成功!");}/*省市選擇程序,數據全部來自于數據庫:http://www.programfan.com/blog/article.asp?id=28128* 把createtable中的varchar改為nvarchar,在insert語句的漢字前面加上N(查找","替換為".N")我不做好像也沒事* ComboBox的顯示值,Items.Add的參數是Object類型,也就是可以放任意數據類型的數據* 可以設置DisplayMember屬性設定顯示的屬性,通過SelectItem屬性取得到就是選擇的條目對應的對像,例子* 疑問: 取出來的是Object,怎么能轉換為對應的類型?變量名只是"標簽".顯示的值和實際的對像不一樣,在ASP.Net中也有相同的東西* 創建一個ProvinceItem類,將數據填充在這個對像中添加到ComBoBox中* **/private void Form1_Load(object sender, EventArgs e){//MessageBox.Show("一進入就開始加載省份信息!");//設定comboBox的DisplayMember屬性為name,就會顯示對像的Name屬性的值/*cb_city.DisplayMember = "Name";ProvinceItem item = new ProvinceItem();item.Id = 1;item.Name = "北京";cb_city.Items.Add(item);ProvinceItem item2 = new ProvinceItem();item2.Id = 2;item2.Name = "上海";cb_city.Items.Add(item2);*/using (SqlConnection conn = new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDbFilename=E:\MyProjects\C#net傳智播客\第五季ADO.NET\8登陸練習操作\8登陸練習操作\Database1.mdf;Integrated Security=True;User Instance=True")){conn.Open();using (SqlCommand cmd = conn.CreateCommand()) {cmd.CommandText = "select * FROM promary ";cb_city.DisplayMember = "Name";using (SqlDataReader reader = cmd.ExecuteReader()) {while (reader.Read()) {int proid = reader.GetInt32(reader.GetOrdinal("proID"));string proName = reader.GetString(reader.GetOrdinal("proName"));ProvinceItem item = new ProvinceItem();item.Id = proid;item.Name = proName;cb_city.Items.Add(item);}}}}}private void cb_city_SelectedIndexChanged(object sender, EventArgs e){/*string text = cb_city.SelectedText;int index = cb_city.SelectedIndex;//string value = cb_city.SelectedValue;string item = cb_city.SelectedItem.ToString();MessageBox.Show("item=" + item);*/ProvinceItem item = (ProvinceItem)cb_city.SelectedItem;int proId = item.Id;string name = item.Name;//MessageBox.Show("proId:"+proId+",name:"+name);using (SqlConnection conn = new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDbFilename=E:\MyProjects\C#net傳智播客\第五季ADO.NET\8登陸練習操作\8登陸練習操作\Database1.mdf;Integrated Security=True;User Instance=True")){conn.Open();using (SqlCommand cmd = conn.CreateCommand()) {cmd.CommandText = "select * FROM city WHERE proID="+proId;using (SqlDataReader reader = cmd.ExecuteReader()) {cb_city_small.Items.Clear();cb_city_small.SelectedIndex = -1;cb_city_small.DisplayMember = "Name";while (reader.Read()) {ProvinceItem city = new ProvinceItem();int cityID = reader.GetInt32(reader.GetOrdinal("cityID"));string cityName = reader.GetString(reader.GetOrdinal("cityName"));city.Id = cityID;city.Name = cityName;cb_city_small.Items.Add(city);}}}}}}class ProvinceItem {public string Name { get; set; }public int Id { get; set; }} }

  

總結

以上是生活随笔為你收集整理的第五节 8登陆练习操作的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。