开学第一天,应该给自己打气的,但是说的再多也没用,以后走着瞧吧
以下是今天的收获
数据库的连接
混合身份登录:
Data Source=本机名\SQLSERVER2008;Initial Catalog=要连接的数据库名字;Persist Security Info=True;User ID=sa;Password=自己的密码
windows登录:datasource=.\SQLSERVER2008;database=csdnnews;integrated security=true
连接SQLExpress
Data Source=.\SQLEXPRESS;AttachDBFilename=|DataDirectory|
\Database1.mdf;Integrated Security=True;UserInstance=True
WinForm做用户登录
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Configuration;
using System.Data.SqlClient;
namespace 复习_用户登录
{
publicpartial class Form1 : Form
{
publicForm1()
{
InitializeComponent();
}
private void btnLogin_Click(object sender,EventArgs e)
{
//从app.config文件中获取节点的name属性为strcon的connectionString的值,也就是获取对应的连接字符串
string strcon =ConfigurationManager.ConnectionStrings["strcon"].ConnectionString;
//建立了程序到数据库的连接,好比铺设了一条水管
SqlConnection sqlcnn = new SqlConnection(strcon);
//存储要像数据库管理系统发送的一条sql语句
SqlCommand sqlcmm = new SqlCommand();
//指明要像哪个数据库发送sql语句
sqlcmm.Connection = sqlcnn;
sqlcmm.CommandText = "select*from T_Userwhere UserName=@username and Password=@password";
//使用用户输入的内容替换sql语句中@username和@password占位符
//sqlcmm.Parameters.Add(new SqlParameter("@username",txtUserName.Text));
//sqlcmm.Parameters.Add(new SqlParameter("@password",txtPassword.Text));
/*最新的方式,内部还是调用了sqlcmm,parameter,add方法*/
sqlcmm.Parameters.AddWithValue("@username", txtUserName.Text);
sqlcmm.Parameters.AddWithValue("@password", txtPassword.Text);
//数据适配器,向数据库发送命令
SqlDataAdapter adapter = new SqlDataAdapter(sqlcmm);
//内存中的表格,用来存储从数据库中返回的数据
DataTable dt = new DataTable();
adapter.Fill(dt);
//根据datatable对象中的数据的行数来判断用户输入的是否正确
if(dt.Rows.Count <= 0)
{
MessageBox.Show("请输入正确的用户名或密码");
}
elseif (dt.Rows.Count > 1)
{
MessageBox.Show("系统中存在重复的用户,请联系管理员");
}
else
{
MessageBox.Show("登录成功");
}
sqlcmm.Dispose();
//关闭连接
//sqlcnn.Close();
//释放资源
sqlcnn.Dispose();
}
}
}