中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

ADO.NET怎么制做一個登錄功能界面

發布時間:2021-08-12 14:11:36 來源:億速云 閱讀:124 作者:chen 欄目:開發技術

本篇內容主要講解“ADO.NET怎么制做一個登錄功能界面”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“ADO.NET怎么制做一個登錄功能界面”吧!

總體思路.根據用戶輸入的用戶名和密碼,來判斷,和數據庫里面存的是不是一樣,如果一樣就表明登錄成功,否則就登錄失敗。

方案一:
1.select* from 表名 where username="用戶輸入的用戶名" 
2.如果存在 reader.Read(),即用戶名存在,接著就判斷用戶輸入的密碼,和取到的密碼(reader.GetString(reader.GetOridinal("密碼字段")))是不是一樣,如果一樣就登錄成功,否則就登錄失敗。

方案二: 
select * from 表名 where username="用戶輸入的用戶名" and password="用戶輸入的密碼",如果查得到數據,就登錄成功。否則登錄失敗。 

下面,我們來使用方案一,來做一個登錄的案例吧。

這里,為了方便,還是用控制臺應用程序吧。
前奏:
我這次要把連接字符串寫在配置文件中, 
1.首先我們要添加命名空間的引用:System.Configuration; 
2.然后在我們的配置文件AppConfig中,的<Configuration>節點下面添加連接字符串的相關節點信息。 

<configuration><connectionStrings>
 <add name="ConStr" connectionString="server=.;database=DB_USERS;uid=sa;pwd=Pasword_1"/>
 </connectionStrings> <startup> 
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
 </startup>
</configuration>

標紅顏色的地方,就是我們添加的連接字符串節點信息; 

3.然后我習慣,創建一個DBHelper類,在里面聲明一個方法來獲取,連接字符串:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Configuration;//在項目中添加這個的引用,并在這個類里面添加這個命名空間

namespace ADO.NET登錄案例1
{
  public class DBHelper
  {
    public static string GetConnectionStrings()
    {
      //使用ConfigurationManager類,來獲取連接字符串的信息。
      return ConfigurationManager.ConnectionStrings["ConStr"].ConnectionString;
    }
  }
}

4.這次我依然使用存儲過程,創建一個根據用戶名查詢的存儲過程:

IF OBJECT_ID('Ins_User','P') IS NOT NULL 
 DROP PROCEDURE Ins_User
 GO
 CREATE PROCEDURE Ins_User
 @name NVARCHAR(20)

 AS 
 SELECT * FROM dbo.T_USERS WHERE T_NAME=@name
 GO

存儲過程

前期的準備工作,做好之后,現在我們來開始寫程序,編碼實現:
思路:方案一,說了,首先我們當然是讓用戶輸入,用戶名和密碼,然后根據用戶輸入的用戶名來查詢數據庫對應的表中,有沒有相關數據,如果沒有的話,就提示用戶名不存在,有的話,就繼續判斷用戶輸入的密碼是否正確(拿用戶輸入的密碼和數據庫對應的密碼,進行判斷),如果正確,就提示登錄成功,否則就提示密碼錯誤。 
*這里我使用參數化查詢,來寫登錄的案例,目的是為了防止SQL注入攻擊。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Data;
using System.Data.SqlClient;

namespace ADO.NET登錄案例1
{
  class Program
  {
    static void Main(string[] args)
    {
      //提示用戶輸入用戶名
      Console.WriteLine("請輸入用戶名:");
      //使用Console.ReadLine()接收用戶輸入的信息
      string userName = Console.ReadLine();
      //提示用戶輸入密碼
      Console.WriteLine("請輸入密碼:");
      string password = Console.ReadLine();


      //現在就是開始使用ADO.NET技術,來查詢數據庫了

      //連接方式訪問
      //1.創建連接對象(連接字符串)
      SqlConnection scon = new SqlConnection(DBHelper.GetConnectionStrings());

      //2.創建命令對象(并為命令對象設置屬性值)
      SqlCommand scmd = new SqlCommand();
      scmd.CommandText = "Ins_User";
      scmd.CommandType = CommandType.StoredProcedure;
      scmd.Connection = scon;

      //3打開連接
      scon.Open();


      //設置參數
      scmd.Parameters.Add(new SqlParameter("@name",userName.Trim()));

      //4.執行命令
      SqlDataReader reader = scmd.ExecuteReader(CommandBehavior.CloseConnection);


      //5處理數據
      if (reader.Read())
      {

        if (password.Trim().ToString() == reader["T_PWD"].ToString())
        {
          Console.WriteLine("登錄成功");
        }
        else
        {
          Console.WriteLine("密碼錯誤");
        }
      }
      else
      {
        Console.WriteLine("用戶名不存在");
      }
      //讀取器用完一定要關閉
      reader.Dispose();
      Console.ReadKey();

    }
  }
}

到此,相信大家對“ADO.NET怎么制做一個登錄功能界面”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

裕民县| 岗巴县| 乳山市| 大宁县| 丹寨县| 旌德县| 彭水| 宁河县| 和政县| 遂宁市| 行唐县| 资兴市| 榆中县| 郯城县| 保靖县| 广平县| 霍邱县| 广元市| 赫章县| 陕西省| 子长县| 绥德县| 中宁县| 万源市| 泸水县| 蒙山县| 诏安县| 尚义县| 内江市| 永兴县| 高州市| 洛阳市| 茶陵县| 兴海县| 景德镇市| 突泉县| 巴塘县| 枣强县| 霞浦县| 开封县| 承德市|