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的主要内容,如果未能解决你的问题,请参考以下文章