小白自己打算做一个学生管理系统,打算写下自己的心得和步骤,本次采用C#和ACCESS数据库,开发环境用的VS2013,如有幸被别人看到,勿喷。
首先做了一个login登陆界面
用户名和密码用的是lable控件,文本框text控件,分别起名为textuser和textpsw,登陆用的button控件。
1.获取用户
string uname = textname.Text.Trim();
string upsw = textpsw.Text.Trim();
2.判断是否为空
if (string.IsNullOrEmpty(uname))
{
MessageBox.Show(“请输入账号”, “登录提示”, MessageBoxButtons.OK, MessageBoxIcon.Error);
//判空语句IsNullOrEmpty,提示窗口MessageBox
return;
}
if (string.IsNullOrEmpty(upsw))
{
MessageBox.Show(“请输入密码”, “登录提示”, MessageBoxButtons.OK, MessageBoxIcon.Error);
return;
}
//下图是没输入账号就点登陆按钮的图
3.与sql链接
//建立连接
首先要在VS中建立数据库链接,数据源选择ACCESS,数据库选你自己的地址,接着连接测试,如图;
在“高级”中最下面可以看到自己数据库所在地址:Provider啥啥
//创建oledconnection,把刚复制的地址添加进去:
OleDbConnection con = new OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=D:\\Documents\\student.accdb");
//打开
con.Open();
//创建command 查询sql
注意表名要加[],否则会报错。
string Access = "select * from [user] where id='" + this.textname.Text + "'and password='" + this.textpsw.Text + "'";
OleDbCommand cmd = new OleDbCommand(Access, con);
OleDbDataReader dr = cmd.ExecuteReader();
//判断输入的用户名和密码是否和数据库用户表中的数据一致
if (dr.Read())
{
uname = textname.Text;
upsw = textpsw.Text;
//一旦连接成功了就弹出窗口
MessageBox.Show("登录成功!", "登录提示",MessageBoxButtons.OK);
}
else
{
//信息错误,判断条件不成立
MessageBox.Show("密码错误", "登录提示", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
//关闭链接
con.Close();
这是我数据库的user表
接下来,测试结果:
完整代码如下:
private void btnlogin_Click(object sender, EventArgs e)
{
//获取用户
string uname = textname.Text.Trim();
string upsw = textpsw.Text.Trim();
//判断是否为空
if (string.IsNullOrEmpty(uname))
{
MessageBox.Show("请输入账号", "登录提示", MessageBoxButtons.OK, MessageBoxIcon.Error);
return;
}
if (string.IsNullOrEmpty(upsw))
{
MessageBox.Show("请输入密码", "登录提示", MessageBoxButtons.OK, MessageBoxIcon.Error);
return;
}
//与sql链接
{//建立连接
OleDbConnection con = new OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=D:\\Documents\\student.accdb");
//打开
con.Open();
//创建command 查询sql
string Access = "select * from [user] where id='" + this.textname.Text + "'and password='" + this.textpsw.Text + "'";
OleDbCommand cmd = new OleDbCommand(Access, con);
OleDbDataReader dr = cmd.ExecuteReader();
//判断输入的用户名和密码是否和数据库用户表中的数据一致
if (dr.Read())
{
uname = textname.Text;
upsw = textpsw.Text;
//一旦连接成功了就弹出窗口
MessageBox.Show("登录成功!", "登录提示",MessageBoxButtons.OK);
}
else
{
//信息错误,判断条件不成立
MessageBox.Show("密码错误", "登录提示", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
con.Close();
}
}
}