日期:2014-05-18  浏览次数:20697 次

求教,求解释! 谢谢 这段代码是什么意思?
String connStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Application.StartupPath + "\\人事数据库.mdb";

OleDbConnection conn = new OleDbConnection(connStr);

//String sql = "select count(*) from 用户密码表 where username='" + textBoxName.Text + "' and password='" + textBoxPassword.Text + "'";

conn.Open();

string sql = "select count(*) from 用户密码表 where username=@name and password=@pass";

OleDbCommand cmd = new OleDbCommand(sql ,conn );

cmd.Parameters.Add(new OleDbParameter ("@name",OleDbType .Char ));

cmd.Parameters["@name"].Value = textBoxName.Text;

cmd.Parameters.Add(new OleDbParameter("@pass", OleDbType.Char));

cmd.Parameters["@pass"].Value = textBoxPassword.Text;

//OleDbDataAdapter da = new OleDbDataAdapter(sql, conn);

//DataTable dt = new DataTable();

//da.Fill(dt);

//int i = dt.Rows.Count;

int i =(int )cmd.ExecuteScalar ();

conn.Close();

------解决方案--------------------
验证登陆,判断用户名和密码是否正确
------解决方案--------------------
C# code
String connStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Application.StartupPath + "\\人事数据库.mdb";
//连接数据库的位置,Application.StartupPath:程序的起始位置,就是程序的当前目录(在没有打开文件夹对话框使用)

OleDbConnection conn = new OleDbConnection(connStr);
//创建数据库的连接

conn.Open();
//打开数据库
string sql = "select count(*) from 用户密码表 where username=@name and password=@pass";
//查询的sql语句,带二个参数(占位符)
OleDbCommand cmd = new OleDbCommand(sql ,conn );
//创建sql语句命令对象
cmd.Parameters.Add(new OleDbParameter ("@name",OleDbType .Char ));
//指明参数类型
cmd.Parameters["@name"].Value = textBoxName.Text;
//为参数指定值
cmd.Parameters.Add(new OleDbParameter("@pass", OleDbType.Char));

cmd.Parameters["@pass"].Value = textBoxPassword.Text;



int i =(int )cmd.ExecuteScalar ();
//执行,返回的时候 首行首列,你的查询sql也只有一个值
conn.Close();
//关闭连接

------解决方案--------------------
探讨

C# code
String connStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Application.StartupPath + "\\人事数据库.mdb";
//连接数据库的位置,Application.StartupPath:程序的起始位置,就是程序的当前目录(在没有打开文件夹对话框使用)

OleDbConnecti……

------解决方案--------------------
参数是 username和password两列 等于的 值

例如,请名字叫“凤姐”的同学举手,

然后你就举手了,算作一个

名字就是 username,@name是“凤姐”,在后面
cmd.Parameters["@name"].Value = textBoxName.Text;
这里指定