【求助】C#连接数据库,忙活了几个小时了!真心求助!!!
这几段都看不懂啊!其实就这一小段。关键是数据库我没听讲,C#还行,就这几行,看不懂,纠结几个小时了!!!
谁能告诉我,真心感谢!!!
main.Tag = this.FindForm(); //主窗口.Tag不知道是什么属性
SqlDataReader dr; //不认识
cmd.CommandText = sql; //有点模糊
dr = cmd.ExecuteReader(); //ExecuteReader网上查过也不懂
dr.Read(); //不明白
if ((bool)dr.GetValue(2)) //GetValue真心不认识
下面是登录窗口的全部代码:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;
namespace LibraryMIS
{
public partial class frmLogin : Form
{
private SqlConnection myCon = null;
public frmLogin()
{
InitializeComponent();
this.myCon = new SqlConnection(LibraryMIS.database.dbConnection.connection);
}
private void btOk_Click(object sender, EventArgs e)
{
if (txtName.Text.Trim() == "" || txtPassword.Text.Trim() == "")
MessageBox.Show("请输入用户名和密码", "提示");
else
{
myCon.Open();
SqlCommand cmd = new SqlCommand("", myCon);
if (rdoManage.Checked == true)
{
string sql = "select * from tb_Manager where MName='" + txtName.Text.Trim() + "' and MCode='" + txtPassword.Text.Trim() + "'";
cmd.CommandText = sql;
if ( cmd.ExecuteScalar() != null)
{
//隐藏登录窗口
this.Visible = false;
//创建并打开主界面
frmMain main = new frmMain();
main.Tag = this.FindForm();
SqlDataReader dr;
cmd.CommandText = sql;
dr = cmd.ExecuteReader();
dr.Read();
if ((bool)dr.GetValue(2))
{
main.menuItem1.Visible = true;
main.menuItem2.Visible = true;
main.menuItem3.Visible = true;
main.menuItem4.Visible = true;
main.menuItem5.Visible = true;
}
if ((bool)dr.GetValue(3))
{
main.menuItem4.Visible = true;
}
if ((bool)dr.GetValue(4))
{
main.menuItem5.Visible = true;
}
main.statusBarPanel2.Text = txtName.Text.Trim();
main.statusBarPanel6.Text = "管理员";
main.ShowDialog();
}
else
MessageBox.Show("用户名或密码错误", "警告");
}
else if (rdoPerson.Checked == true)
{
string sql = "select * from tb_Person where PID='" + txtName.Text.Trim() + "' and PCode='" + txtPassword.Text.Trim() + "'";
cmd.CommandText = sql;
if ( cmd.ExecuteScalar()!=null)
{
//隐藏登录窗口
this.Visible = false;
//创建并打开主界面
frmMain main = new frmMain();
main.Tag = this.FindForm();
SqlDataReader dr;
cmd.CommandText = sql;
dr = cmd.ExecuteReader();
dr.Read();
if ((bool)dr.GetValue(9))
{
main.menuItem5.Visible = true;
}
main.statusBarPanel2.Text = txtName.Text.Trim();
main.statusBarPanel6.Text = "读者";
main.ShowDialog();
}
else
MessageBox.Show("用户名或密码错误", "警告");
}
else
MessageBox.Show("没有选择角色", "提示");
myCon.Close();
}
}
private void btClose_Click(object sender, EventArgs e)
{
myCon.Close();
this.Close();
}
private void frmLogin_Load(object sender, EventArgs e)
{
}
}
}