关于数据库连接和在WINFROM下做用户登录

开学第一天,应该给自己打气的,但是说的再多也没用,以后走着瞧吧
以下是今天的收获

 

数据库的连接

 

混合身份登录:

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();

        }

    }

}

 

你可能感兴趣的:(数据库,sqlserver,security,database,sql,存储)