ADO.NET(一),创建一个登陆验证窗口,用SQL存储实现

需要的Winform控件:btnLogin按钮,txtUid txtPwd 文本框

需要的程序配置文件如下

<connectionStrings>
        <add name="connStr" connectionString="Data Source=118.114.244.83;Initial Catalog=学生成绩管理系统;User Id=sa;Password=5510390" />
</connectionStrings>

 

C#完整d代码如下

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Configuration;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Data.SqlClient;

namespace 登陆验证程序_调用SQL存储_
{
    public partial class Login : Form
    {
        public Login()
        {
            InitializeComponent();
        }

        private void btnLogin_Click(object sender, EventArgs e)
        {
            //约束用户名密码不为空
            if (txtUid.Text != "" && txtPwd.Text != "")
            {

                //从配置文件读取SQL连接字符串
                string connStr = ConfigurationManager.ConnectionStrings["connStr"].ToString();
                SqlConnection con = new SqlConnection(connStr);
                con.Open();
                //创建一个吧使用SQL语句的对象
                SqlCommand sqlcmd = new SqlCommand();
                sqlcmd.Connection = con;
                //设置SQL命令类型为存储过程
                sqlcmd.CommandType = CommandType.StoredProcedure;
                sqlcmd.CommandText = "USP_USERLOGIN";
                //创建一个SQL参数组,加入存储过程所需的变量的参数映射。
                SqlParameter[] paras = { new SqlParameter("@uid", txtUid.Text), new SqlParameter("@pwd", txtPwd.Text) };
                sqlcmd.Parameters.AddRange(paras);
                //执行语句,通过返回值来判断是否登陆成功
                int rn = 0;
                rn = Convert.ToInt32(sqlcmd.ExecuteScalar());
                if (rn == 0)
                {
                    MessageBox.Show("用户名或密码错误");
                }
                else
                {
                    MessageBox.Show("登陆成功");
                }
            }
            else
            {
                MessageBox.Show("用户名或密码不能为空");
            }
        }
    }
}


SQL存储代码如下

ALTER PROCEDURE USP_USERLOGIN
    @uid NVARCHAR(50) ,
    @pwd NVARCHAR(50)
AS
    SELECT  COUNT(*)
    FROM    USERLOGIN
    WHERE   USERLOGIN.NAME = @uid
            AND USERLOGIN.PWD = @pwd

需要的数据库创建明令如下

CREATE TABLE UserLogin
    (
      AUTOID INT IDENTITY(1, 1)
                 NOT NULL ,
      NAME NVARCHAR(50) ,
      PWD NVARCHAR(50)
    ) 
 
INSERT  INTO UserLogin
VALUES  ( 'huxin', 5528698 )
INSERT  INTO UserLogin
VALUES  ( 'wbkboy', 5528698 )

 

 

posted @ 2013-12-22 15:59  wbkboy  阅读(160)  评论(0)    收藏  举报