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 )

浙公网安备 33010602011771号