C# 连接SQL数据库使用账号登录应用 带UI

Posted 小马的棺材板

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C# 连接SQL数据库使用账号登录应用 带UI相关的知识,希望对你有一定的参考价值。

文章为进阶栏目,对代码不做太多的解释,基础可以看基础栏目每一行代码都有解释
在这里插入图片描述

文章主要介绍C#与数据库里的账号连接,密码正确即登录,密码错误返回登录错误信息

C#连接SQL数据库和查询数据功能
数据库配置及下载可以参考这个文章


正文:

先看效果
在这里插入图片描述
用户输入账号,把他输入的账号和密码带到数据库进行比对,如正确弹出登录窗口界面

界面:
在这里插入图片描述

窗体清除边框

在这里插入图片描述
窗口属性设置为None,但这样窗口就无法移动

无边框移动窗体

Point mouseOff;
        //鼠标移动位置变量


        bool
        leftFlag;
        //标签是否为左键


        private void Form1_MouseMove(object sender, MouseEventArgs e) 

        {
            if
            (leftFlag)

            {
                Point mouseSet = Control.MousePosition;

                mouseSet.Offset(mouseOff.X, mouseOff.Y);
                //设置移动后的位置

                Location = mouseSet;
            }

        }
        private void Form1_Load(object sender, EventArgs e)
        {

        }
        private void Form1_MouseDown(object sender, MouseEventArgs e)
        {
            if
            (e.Button == MouseButtons.Left)

            {
                mouseOff = new Point(-e.X, -e.Y);


                //得到变量的值

                leftFlag = true ;

                //点击左键按下时标注为true;
            }
        }

        private void  Form1_MouseUp( object  sender, MouseEventArgs e)

        {
           if
            (leftFlag)
            {
                leftFlag =
                false
                ;
                //释放鼠标后标注为false;
            }

        }

然后设置窗口对应的事件
在这里插入图片描述
然后拖出来两个文本框和几个标签,按我上面界面设置Text即可,
这里给账号文本框的name设置:user, 密码name:password

设置密码长度和内容不可见

对文本框属性进行设置,
设置为:●
也可以使用*代替、
长度就是最大只能输入10个字符
在这里插入图片描述

退出按钮和鼠标经过事件

private void close_Click(object sender, EventArgs e)
        {
            Environment.Exit(0);//退出
        }
  private void close_MouseLeave(object sender, EventArgs e)
        {
            Color a = Color.White;
            close.ForeColor = a;
            //鼠标离时
        }
 private void label5_MouseMove(object sender, MouseEventArgs e)
        {
            Color a = Color.Black;
            close.ForeColor = a;
            //鼠标经过时
        }

设置数据库

表名为:user1

表的属性
在这里插入图片描述
数据是账号和密码
在这里插入图片描述


连接数据库

点击登录时连接数据库进行比对

 private void button1_Click(object sender, EventArgs e)
        {
            try
            {
                a.Password = "xxxx";
                a.UserID = "xxxx";
                a.DataSource = "xxxx";
                a.InitialCatalog = "xxxx";
                SqlConnection b = new SqlConnection(a.ToString());

                b.Open();
                string sql = "SELECT * FROM user1 WHERE userid = '" + user.Text + "' AND password='" + password.Text + "'";


                SqlCommand d = new SqlCommand(sql, b);


                SqlDataReader du = d.ExecuteReader();

                string l = "";

                user jm =new user();
                while (du.Read())
                {
                    l = du["userid"].ToString() + du["password".ToString()];                 

                }
                du.Close();            
                if (l == "")
                {
                    MessageBox.Show("账号或密码错误");
                    return;
                }
                try
                {
                   FileStream file = new FileStream(@fileDir, FileMode.Create);
                    user name = new user();
                    {
                        name.user1 = this.user.Text.Trim();
                        name.password1 = this.password.Text.Trim();
                    }
                    BinaryFormatter c = new BinaryFormatter(); //二进制格式化器
                     c.Serialize(file, name);
                     file.Close();
                }
                catch {                               
                }
                string 窗口id查询 = "select * from user1 where userid ='"+user.Text+ "'";
                SqlCommand 窗口id创建 = new SqlCommand(窗口id查询, b);
                SqlDataReader 窗口id执行 = 窗口id创建.ExecuteReader();             
                while (窗口id执行.Read()) {
                    jmuser = 窗口id执行["username"].ToString();                  
                }
                窗口id执行.Close();
                b.Close();
                登录成功界面 a2 = new 登录成功界面();
                a2.Show();
                this.Hide();//隐藏现在这个窗口
            }
            catch
            {


            }
           

        }

纯手打,点个赞呗~

以上是关于C# 连接SQL数据库使用账号登录应用 带UI的主要内容,如果未能解决你的问题,请参考以下文章

C# 连接SQL数据库使用账号登录应用 带UI

c#怎么和sql数据库连接

用java怎么连接一个不带账号密码的mongodb数据库

C# sqlconnector 上的未知登录

c# winform程序怎么连接到本地sqlserver 数据库啊

结对编程:带ui设计的学生答题系统