【學習筆記】ASP.NET簡易的SQLHelper幫助類
SqlHelper.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Configuration;
using System.Data;
using System.Data.SqlClient;
namespace LingJuDAL
{
public class SqlHelper
{
//定義只讀靜態連線字串變數
public static readonly string connStr = ConfigurationManager.ConnectionStrings["LingJuDBConn"].ConnectionString;
//ExecuteNonQurey
public static int ExecuteNonQuery(CommandType cmdType, string sqlCmdText, params SqlParameter[] parameters)
{
using (SqlConnection conn = new SqlConnection(connStr))
{
conn.Open();
using (SqlCommand cmd = conn.CreateCommand())
{
cmd.CommandType = cmdType;
cmd.CommandText = sqlCmdText;
cmd.Parameters.Clear();
cmd.Parameters.AddRange(parameters);
return cmd.ExecuteNonQuery();
}
}
}
//ExecuteScalar
public static object ExecuteScalar(CommandType cmdType, string sqlCmdText, params SqlParameter[] parameters)
{
using (SqlConnection conn = new SqlConnection(connStr))
{
conn.Open();
using (SqlCommand cmd = conn.CreateCommand())
{
cmd.CommandType = cmdType;
cmd.CommandText = sqlCmdText;
cmd.Parameters.Clear();
cmd.Parameters.AddRange(parameters);
return cmd.ExecuteScalar();
}
}
}
//DataTable
public static DataTable ExecuteDataTable(CommandType cmdType, string sqlCmdText, params SqlParameter[] parameters)
{
using (SqlConnection conn = new SqlConnection(connStr))
{
conn.Open();
using (SqlCommand cmd = conn.CreateCommand())
{
cmd.CommandType = cmdType;
cmd.CommandText = sqlCmdText;
cmd.Parameters.Clear();
cmd.Parameters.AddRange(parameters);
SqlDataAdapter adapter = new SqlDataAdapter(cmd);
DataSet ds = new DataSet();
adapter.Fill(ds);
return ds.Tables[0];
}
}
}
//DataSet
public static DataSet GetDataSet(CommandType cmdType, string sqlCmdText, params SqlParameter[] parameters)
{
using (SqlConnection conn = new SqlConnection(connStr))
{
conn.Open();
using (SqlCommand cmd = new SqlCommand())
{
cmd.CommandType = cmdType;
cmd.CommandText = sqlCmdText;
cmd.Parameters.AddRange(parameters);
using (SqlDataAdapter adapter = new SqlDataAdapter(cmd))
{
DataSet ds = new DataSet();
try
{
adapter.Fill(ds);
cmd.Parameters.Clear();
}
catch (System.Data.SqlClient.SqlException ex)
{
conn.Close();
throw new Exception(ex.Message);
}
return ds;
}
}
}
}
}
}
DAL層Admin.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data.SqlClient;
using System.Data;
namespace LingJuDAL
{
public class LJAdmin
{
//登入
public bool AdminLogin(LingJuModel.AdminModel admin)
{ //使用的是儲存過程
int flag= (int)SqlHelper.ExecuteScalar(System.Data.CommandType.StoredProcedure, "LingJuAdminSelect",
new SqlParameter("@adminName", admin.adminName),
new SqlParameter("@password", admin.password));
if (flag == 1)
{
return true;
}
else
{
return false;
}
}
//刪除管理員(軟刪除)
public void DeleteAdminById(long id)
{
SqlHelper.ExecuteNonQuery(CommandType.Text, "updata Lj_admin set lj_isdel=1 where id=@id",
new SqlParameter("@id", id));
}
}
}
儲存過程:LingJuAdminSelect.sql
USE [LingJuSchoolDB]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER PROCEDURE [dbo].[LingJuAdminSelect]
@lj_admin_name nvarchar(20),
@lj_password nvarchar(20)
AS
BEGIN
SET NOCOUNT ON;
SELECT COUNT(*) FROM lj_admin
WHERE lj_admin_name=@lj_admin_name AND lj_password=@lj_password AND lj_isdel='False' AND lj_islock='False';
END
//實現軟刪除的SQL儲存過程
//軟刪除實質是在表中加入一個標誌欄位,記錄是否被“刪除”,如果使用者想刪除使用者,那isDel=ture,
//登入時候查詢條件寫上isDel=false即可。
使用者感覺刪除了,但是資料庫還在,防止誤刪和以後維護的問題!
相關文章
- xhtml & css 簡易學習筆記(一)HTMLCSS筆記
- ASP.NET Web Pages – 幫助器簡介ASP.NETWeb
- ASP.NET 網頁- WebMail 幫助器簡介ASP.NET網頁WebAI
- ASP.NET Web Pages – Chart 幫助器簡介ASP.NETWeb
- JUC併發程式設計學習筆記(七)常用的輔助類程式設計筆記
- ASP.NET學習筆記2ASP.NET筆記
- 單模式匹配 KMP 演算法 簡易版學習筆記模式KMP演算法筆記
- 類的基礎學習筆記筆記
- docker筆記7-docker的幫助命令Docker筆記
- 【ASP.NET Core】標記幫助器——抽象層ASP.NET抽象
- ASP.NET 網頁- WebGrid 幫助器簡介ASP.NET網頁Web
- TS學習筆記(三):類筆記
- CAS學習筆記一:CAS 授權伺服器簡易搭建筆記伺服器
- [Linux]學習⑨----其他幫助命令Linux
- 【ASP.NET Core】標記幫助器——元素篩選ASP.NET
- List簡易筆記一筆記
- Git極簡學習筆記Git筆記
- gcc簡介(學習筆記)GC筆記
- IO——簡略的學習筆記(1)筆記
- 抽象類特點 學習筆記抽象筆記
- java學習筆記(包裝類)Java筆記
- Kotlin學習筆記(5)- 類Kotlin筆記
- 微軟原版SQLHelper類微軟SQL
- 字元操作普通幫助類字元
- 資料庫幫助類資料庫
- C# HTTP幫助類C#HTTP
- Java學習筆記(二)JavaSE簡易學生管理系統(適合小白練手)Java筆記
- numpy的學習筆記\pandas學習筆記筆記
- Git 簡單使用學習筆記Git筆記
- OCI學習筆記--簡介(一)筆記
- MuJoCo 學習筆記:簡介 Overview筆記View
- ASP.NET MVC學習筆記:(一)路由匹配ASP.NETMVC筆記路由
- Asp.Net Core學習筆記:入門篇ASP.NET筆記
- Asp.net控制元件開發學習筆記(七)—-WebControl基類ASP.NET控制元件筆記Web
- 類歐幾里得演算法學習筆記演算法筆記
- TypeScript學習筆記之五類(Class)TypeScript筆記
- iOS學習筆記43 Swift(三)類iOS筆記Swift
- Kotlin學習筆記-類和介面Kotlin筆記