目录
C#登录界面连数据库
一、在数据库中先创建一个数据库。
数据库命名为NamePwd,使用SQL语言创建两个表,一个表命名为name,另一个表命名为pwd。在两个表中都只创建一个列。
create table [name]
(
Pname varchar(16)
)
create table [pwd]
(
pwd varchar(32)
)
运行成功后显示效果为:
二、在VS中创建C#的windows窗体应用程序
三、在VS中连接到数据库
点击服务器资源管理器,右键选择数据连接,点击添加连接。(也可以在工具中选择连接数据库)。
输入数据库的名,在选择或输入数据库名称中选择刚刚创建好的NamePwd数据库。测试连接成功后,点击确定。
四、设计登录界面
选择工具箱窗口,组成界面form1。
五、设置注册界面
选择解决方案资源管理器,右键项目--添加--Windows窗体。创建第二个窗体form2.
通过工具箱对form2进行布局。
六、将form1的按钮和form2进行关联
双击form1的注册按钮,注册按钮代码如下:
private void button2_Click(object sender, EventArgs e)
{
using (Form2 dlg = new Form2()) //caozuo是窗口类名,确保访问;后面的是构造函数
{
dlg.ShowDialog();
}
}
在运行之后,点击注册按钮可以弹出form2界面。
七、设置form2界面的注册按钮
form2注册按钮代码:
private void button1_Click(object sender, EventArgs e)
{
string connectionStr = "Data Source=DESKTOP-785QN2F;Initial Catalog=NamePwd;Persist Security Info=True;User ID=sa;Password=123456dyy";
//创建连接对象
SqlConnection myConnection = new SqlConnection(connectionStr);
//测试是否连接成功
string username = textBox1.Text; //获取用户名
string password = textBox2.Text; //获取密码
string myinsert = "insert into namepwd values('"+username+"','"+password+"')";
SqlCommand mycom = new SqlCommand(myinsert, myConnection); //定义对象并连接数据库
myConnection.Open();//打开数据库
mycom.ExecuteNonQuery(); //执行插入语句
myConnection.Close(); //关闭对象并释放所占内存空间
// myConnection.Dispose();
MessageBox.Show("注册成功,请前往登录界面登录!");
// Test f2 = new Test();
// this.Close();
// f2.Show();
}
注意: string connectionStr = "Data Source=*******;Initial Catalog=NamePwd;Persist Security Info=True;User ID=sa;Password=****";中的data source=数据库名称,password为SQL登录密码
八、form1的登录按钮设置
按钮代码如下:
private void button1_Click(object sender, EventArgs e)
{
string name = textBox1.Text;
string pwd = textBox2.Text;
if (name.Equals("") || pwd.Equals(""))//用户名或密码为空
{
MessageBox.Show("用户名或密码不能为空");
}
else //到数据库中验证
{
string str = "Data Source=DESKTOP-785QN2F;Initial Catalog=NamePwd;Persist Security Info=True;User ID=sa;Password=123456dyy";
string selectSql = "select count(*) from namepwd where Name='"+name+"' and pwd='"+pwd+"'";
SqlConnection con = new SqlConnection(str); //创建连接对象
SqlCommand mycom = new SqlCommand(selectSql, con); //定义对象并连接数据库
SqlCommand cmd = new SqlCommand(selectSql,con);//定义对象并连接数据库
cmd.CommandType = CommandType.Text;
con.Open(); //打开连接
Console.WriteLine("数据库打开"); //正常打印说明没问题,否则会抛出异常
// SqlDataReader sqlDataReader = mycom.ExecuteReader();
if (Convert.ToInt64(cmd.ExecuteScalar())>0)//满足用户名与密码一致,进入下一个界面
{
MessageBox.Show("登录成功!");
}
else
{
MessageBox.Show("登录失败!\n"+"用户名或密码错误!");
}
con.Close(); //关闭连接
}
}
注意: string str = "Data Source=*******;Initial Catalog=NamePwd;Persist Security Info=True;User ID=sa;Password=****";中的data source=数据库名称,password为SQL登录密码
九、运行成果
点击运行,点击form1的注册界面。
可以在SQL数据中查询刚刚注册的用户信息。
select *from name
select *from pwd