建了一个登陆界面,让用户输入用户名与密码之后会连接Oracle数据库,来验证是否为真,如果为真则进入form2,(form1为那个登陆界面),如果否则有一个messagebox提示输入密码错误,请重新输入,我现在最主要是想知道怎么样连数据库,在button1的click事件里怎么样连接,有收藏的源代码的朋友们分享一下,谢谢了..
解决方案 »
- WCF 更新服务引用报错
- C# 循环的问题
- sender与菜单索引
- indexof可不可以输出全部符合条件的下标
- 播放列表不能保存到XML
- window server2003+IIS 6.0崩溃, 怀疑是cache的文件过大.
- 奇怪!奇怪!.Net 写文件 BUG!!!
- [求助]反序列化的时候,能不能忽略xmlns,因为我有几十万个文件要反序列化,他们的命名空间并不完全一样(在线等)
- 如何做像 金山影霸2003 导航条的界面??就是在任何情况下,当鼠标移动到窗口屏幕上方时,就显示一个导航窗口。
- 我对C#的一点“成见”:)
- 如何进行对象和DataTable间的自动转换?
- 问个简单的关于运行顺序问题
然后写一个数据库语句,然后判断都相同的话,form2显示,form1隐藏。
前提要打开数据库连接
public int MyOraConnect()
{
//!!!加入连接数据库
if(this.oracleConnection1.State != System.Data.ConnectionState.Open)
{
this.oracleConnection1.ConnectionString = "user id=顾客;data source=餐厅;password=不差钱";
m_cmd.Connection = oracleConnection1;
try
{
oracleConnection1.Open();
MyWriteLog("行,他有钱!");
form2.show();//差不多是这意思,你自己改
}
catch (Exception myerror)//catch (OracleException myerror)
{
string errorMessage = "Source: " + myerror.Source + "\n" +"Message: " + myerror.Message;
MyWriteLog(errorMessage);
Messagebox("据说您以前赖账,请证明您的信誉!")
return -1;//连接失败
}
m_bOraConnect = true;
return 1;//连接成功
}
return 2;//在此之前已成功建立连接。刚吃完,您确定您还要吃?
}
string sql_string = "select nick_name,name from blog_user where name='" + TextBox1.Text.Trim() + "'and password='" + TextBox2.Text.Trim() + "'";
SqlDataAdapter sda = new SqlDataAdapter(sql_string, mycon);
DataSet ds = new DataSet();
sda.Fill(ds, "用户表");
if (ds.Tables[0].Rows.Count > 0)
{
string s = ds.Tables[0].Rows[0][1].ToString();
sql_string = "update blog_user set blog_user.lastlogin_data=getdate() where name '" + s + "'";
SqlCommand mycmd = new SqlCommand(sql_string, mycon);
mycon.Open();
mycmd.ExecuteNonQuery();
mycon.Close();
Session["UserName"] = ds.Tables[0].Rows[0][0].ToString();
this.Server.Transfer("user.aspx?user_name=" + s); }
else
{
Label1.Text = "用户名或密码错误,请重新输入!!";
TextBox1.Text = "";
TextBox2.Text = "";
}
把SQL换成OLE就行了.
假如 用户名s1,密码s2连接数据库就不写了
select * from 用户表 where UserName='s1' and UserPwd='s2';
通过DataRead中是否有记录从而来判断 你输入的用户名和密码是否在数据库中
也就是通过read.HasRow属性来判断
select count(*)
from 表
where UserName='用户名' and UserPwd='密码'