激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務(wù)器之家:專(zhuān)注于服務(wù)器技術(shù)及軟件下載分享
分類(lèi)導(dǎo)航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術(shù)|正則表達(dá)式|C/C++|IOS|C#|Swift|Android|VB|R語(yǔ)言|JavaScript|易語(yǔ)言|vb.net|

服務(wù)器之家 - 編程語(yǔ)言 - ASP.NET教程 - C#操作Excel數(shù)據(jù)增刪改查示例

C#操作Excel數(shù)據(jù)增刪改查示例

2019-11-20 14:07C#教程網(wǎng) ASP.NET教程

Excel數(shù)據(jù)增刪改查我們可以使用c#進(jìn)行操作,首先創(chuàng)建ExcelDB.xlsx文件,并添加兩張工作表,接下按照下面的操作步驟即可

C#操作Excel數(shù)據(jù)增刪改查。 

首先創(chuàng)建ExcelDB.xlsx文件,并添加兩張工作表。 

工作表1: 

UserInfo表,字段:UserId、UserName、Age、Address、CreateTime。 

工作表2: 

Order表,字段:OrderNo、ProductName、Quantity、Money、SaleDate。 

1、創(chuàng)建ExcelHelper.cs類(lèi),Excel文件處理類(lèi) 

復(fù)制代碼代碼如下:


using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using System.Data.OleDb; 
using System.Data; 

namespace MyStudy.DAL 

/// <summary> 
/// Excel文件處理類(lèi) 
/// </summary> 
public class ExcelHelper 

private static string fileName = AppDomain.CurrentDomain.SetupInformation.ApplicationBase + @"/ExcelFile/ExcelDB.xlsx"; 

private static OleDbConnection connection; 
public static OleDbConnection Connection 

get 

string connectionString = ""; 
string fileType = System.IO.Path.GetExtension(fileName); 
if (string.IsNullOrEmpty(fileType)) return null; 
if (fileType == ".xls") 

connectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source=" + fileName + ";" + ";Extended Properties=\"Excel 8.0;HDR=YES;IMEX=2\""; 

else 

connectionString = "Provider=Microsoft.ACE.OLEDB.12.0;" + "Data Source=" + fileName + ";" + ";Extended Properties=\"Excel 12.0;HDR=YES;IMEX=2\""; 

if (connection == null) 

connection = new OleDbConnection(connectionString); 
connection.Open(); 

else if (connection.State == System.Data.ConnectionState.Closed) 

connection.Open(); 

else if (connection.State == System.Data.ConnectionState.Broken) 

connection.Close(); 
connection.Open(); 

return connection; 



/// <summary> 
/// 執(zhí)行無(wú)參數(shù)的SQL語(yǔ)句 
/// </summary> 
/// <param name="sql">SQL語(yǔ)句</param> 
/// <returns>返回受SQL語(yǔ)句影響的行數(shù)</returns> 
public static int ExecuteCommand(string sql) 

OleDbCommand cmd = new OleDbCommand(sql, Connection); 
int result = cmd.ExecuteNonQuery(); 
connection.Close(); 
return result; 


/// <summary> 
/// 執(zhí)行有參數(shù)的SQL語(yǔ)句 
/// </summary> 
/// <param name="sql">SQL語(yǔ)句</param> 
/// <param name="values">參數(shù)集合</param> 
/// <returns>返回受SQL語(yǔ)句影響的行數(shù)</returns> 
public static int ExecuteCommand(string sql, params OleDbParameter[] values) 

OleDbCommand cmd = new OleDbCommand(sql, Connection); 
cmd.Parameters.AddRange(values); 
int result = cmd.ExecuteNonQuery(); 
connection.Close(); 
return result; 


/// <summary> 
/// 返回單個(gè)值無(wú)參數(shù)的SQL語(yǔ)句 
/// </summary> 
/// <param name="sql">SQL語(yǔ)句</param> 
/// <returns>返回受SQL語(yǔ)句查詢(xún)的行數(shù)</returns> 
public static int GetScalar(string sql) 

OleDbCommand cmd = new OleDbCommand(sql, Connection); 
int result = Convert.ToInt32(cmd.ExecuteScalar()); 
connection.Close(); 
return result; 


/// <summary> 
/// 返回單個(gè)值有參數(shù)的SQL語(yǔ)句 
/// </summary> 
/// <param name="sql">SQL語(yǔ)句</param> 
/// <param name="parameters">參數(shù)集合</param> 
/// <returns>返回受SQL語(yǔ)句查詢(xún)的行數(shù)</returns> 
public static int GetScalar(string sql, params OleDbParameter[] parameters) 

OleDbCommand cmd = new OleDbCommand(sql, Connection); 
cmd.Parameters.AddRange(parameters); 
int result = Convert.ToInt32(cmd.ExecuteScalar()); 
connection.Close(); 
return result; 


/// <summary> 
/// 執(zhí)行查詢(xún)無(wú)參數(shù)SQL語(yǔ)句 
/// </summary> 
/// <param name="sql">SQL語(yǔ)句</param> 
/// <returns>返回?cái)?shù)據(jù)集</returns> 
public static DataSet GetReader(string sql) 

OleDbDataAdapter da = new OleDbDataAdapter(sql, Connection); 
DataSet ds = new DataSet(); 
da.Fill(ds, "UserInfo"); 
connection.Close(); 
return ds; 


/// <summary> 
/// 執(zhí)行查詢(xún)有參數(shù)SQL語(yǔ)句 
/// </summary> 
/// <param name="sql">SQL語(yǔ)句</param> 
/// <param name="parameters">參數(shù)集合</param> 
/// <returns>返回?cái)?shù)據(jù)集</returns> 
public static DataSet GetReader(string sql, params OleDbParameter[] parameters) 

OleDbDataAdapter da = new OleDbDataAdapter(sql, Connection); 
da.SelectCommand.Parameters.AddRange(parameters); 
DataSet ds = new DataSet(); 
da.Fill(ds); 
connection.Close(); 
return ds; 



2、 創(chuàng)建實(shí)體類(lèi) 

2.1 創(chuàng)建UserInfo.cs類(lèi),用戶信息實(shí)體類(lèi)。 

復(fù)制代碼代碼如下:


using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using System.Data; 

namespace MyStudy.Model 

/// <summary> 
/// 用戶信息實(shí)體類(lèi) 
/// </summary> 
public class UserInfo 

public int UserId { get; set; } 
public string UserName { get; set; } 
public int? Age { get; set; } 
public string Address { get; set; } 
public DateTime? CreateTime { get; set; } 

/// <summary> 
/// 將DataTable轉(zhuǎn)換成List數(shù)據(jù) 
/// </summary> 
public static List<UserInfo> ToList(DataSet dataSet) 

List<UserInfo> userList = new List<UserInfo>(); 
if (dataSet != null && dataSet.Tables.Count > 0) 

foreach (DataRow row in dataSet.Tables[0].Rows) 

UserInfo user = new UserInfo(); 
if (dataSet.Tables[0].Columns.Contains("UserId") && !Convert.IsDBNull(row["UserId"])) 
user.UserId = Convert.ToInt32(row["UserId"]); 

if (dataSet.Tables[0].Columns.Contains("UserName") && !Convert.IsDBNull(row["UserName"])) 
user.UserName = (string)row["UserName"]; 

if (dataSet.Tables[0].Columns.Contains("Age") && !Convert.IsDBNull(row["Age"])) 
user.Age = Convert.ToInt32(row["Age"]); 

if (dataSet.Tables[0].Columns.Contains("Address") && !Convert.IsDBNull(row["Address"])) 
user.Address = (string)row["Address"]; 

if (dataSet.Tables[0].Columns.Contains("CreateTime") && !Convert.IsDBNull(row["CreateTime"])) 
user.CreateTime = Convert.ToDateTime(row["CreateTime"]); 

userList.Add(user); 


return userList; 



2.2 創(chuàng)建Order.cs類(lèi),訂單實(shí)體類(lèi)。 

復(fù)制代碼代碼如下:


using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using System.Data; 

namespace MyStudy.Model 

/// <summary> 
/// 訂單實(shí)體類(lèi) 
/// </summary> 
public class Order 

public string OrderNo { get; set; } 
public string ProductName { get; set; } 
public int? Quantity { get; set; } 
public decimal? Money { get; set; } 
public DateTime? SaleDate { get; set; } 

/// <summary> 
/// 將DataTable轉(zhuǎn)換成List數(shù)據(jù) 
/// </summary> 
public static List<Order> ToList(DataSet dataSet) 

List<Order> orderList = new List<Order>(); 
if (dataSet != null && dataSet.Tables.Count > 0) 

foreach (DataRow row in dataSet.Tables[0].Rows) 

Order order = new Order(); 
if (dataSet.Tables[0].Columns.Contains("OrderNo") && !Convert.IsDBNull(row["OrderNo"])) 
order.OrderNo = (string)row["OrderNo"]; 

if (dataSet.Tables[0].Columns.Contains("ProductName") && !Convert.IsDBNull(row["ProductName"])) 
order.ProductName = (string)row["ProductName"]; 

if (dataSet.Tables[0].Columns.Contains("Quantity") && !Convert.IsDBNull(row["Quantity"])) 
order.Quantity = Convert.ToInt32(row["Quantity"]); 

if (dataSet.Tables[0].Columns.Contains("Money") && !Convert.IsDBNull(row["Money"])) 
order.Money = Convert.ToDecimal(row["Money"]); 

if (dataSet.Tables[0].Columns.Contains("SaleDate") && !Convert.IsDBNull(row["SaleDate"])) 
order.SaleDate = Convert.ToDateTime(row["SaleDate"]); 

orderList.Add(order); 


return orderList; 



3、創(chuàng)建業(yè)務(wù)邏輯類(lèi) 

3.1 創(chuàng)建UserInfoBLL.cs類(lèi),用戶信息業(yè)務(wù)類(lèi)。 

復(fù)制代碼代碼如下:


using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using System.Data; 
using MyStudy.Model; 
using MyStudy.DAL; 
using System.Data.OleDb; 

namespace MyStudy.BLL 

/// <summary> 
/// 用戶信息業(yè)務(wù)類(lèi) 
/// </summary> 
public class UserInfoBLL 

/// <summary> 
/// 查詢(xún)用戶列表 
/// </summary> 
public List<UserInfo> GetUserList() 

List<UserInfo> userList = new List<UserInfo>(); 
string sql = "SELECT * FROM [UserInfo$]"; 
DataSet dateSet = ExcelHelper.GetReader(sql); 
userList = UserInfo.ToList(dateSet); 
return userList; 


/// <summary> 
/// 獲取用戶總數(shù) 
/// </summary> 
public int GetUserCount() 

int result = 0; 
string sql = "SELECT COUNT(*) FROM [UserInfo$]"; 
result = ExcelHelper.GetScalar(sql); 
return result; 


/// <summary> 
/// 新增用戶信息 
/// </summary> 
public int AddUserInfo(UserInfo param) 

int result = 0; 
string sql = "INSERT INTO [UserInfo$](UserId,UserName,Age,Address,CreateTime) VALUES(@UserId,@UserName,@Age,@Address,@CreateTime)"; 
OleDbParameter[] oleDbParam = new OleDbParameter[] 

new OleDbParameter("@UserId", param.UserId), 
new OleDbParameter("@UserName", param.UserName), 
new OleDbParameter("@Age", param.Age), 
new OleDbParameter("@Address",param.Address), 
new OleDbParameter("@CreateTime",param.CreateTime) 
}; 
result = ExcelHelper.ExecuteCommand(sql, oleDbParam); 
return result; 


/// <summary> 
/// 修改用戶信息 
/// </summary> 
public int UpdateUserInfo(UserInfo param) 

int result = 0; 
if (param.UserId > 0) 

string sql = "UPDATE [UserInfo$] SET UserName=@UserName,Age=@Age,Address=@Address WHERE UserId=@UserId"; 
OleDbParameter[] sqlParam = new OleDbParameter[] 

new OleDbParameter("@UserId",param.UserId), 
new OleDbParameter("@UserName", param.UserName), 
new OleDbParameter("@Age", param.Age), 
new OleDbParameter("@Address",param.Address) 
}; 
result = ExcelHelper.ExecuteCommand(sql, sqlParam); 

return result; 


/// <summary> 
/// 刪除用戶信息 
/// </summary> 
public int DeleteUserInfo(UserInfo param) 

int result = 0; 
if (param.UserId > 0) 

string sql = "DELETE [UserInfo$] WHERE UserId=@UserId"; 
OleDbParameter[] sqlParam = new OleDbParameter[] 

new OleDbParameter("@UserId",param.UserId), 
}; 
result = ExcelHelper.ExecuteCommand(sql, sqlParam); 

return result; 



3.2 創(chuàng)建OrderBLL.cs類(lèi),訂單業(yè)務(wù)類(lèi) 

復(fù)制代碼代碼如下:


using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using System.Data; 
using MyStudy.Model; 
using MyStudy.DAL; 
using System.Data.OleDb; 

namespace MyStudy.BLL 

/// <summary> 
/// 訂單業(yè)務(wù)類(lèi) 
/// </summary> 
public class OrderBLL 

/// <summary> 
/// 查詢(xún)訂單列表 
/// </summary> 
public List<Order> GetOrderList() 

List<Order> orderList = new List<Order>(); 
string sql = "SELECT * FROM [Order$]"; 
DataSet dateSet = ExcelHelper.GetReader(sql); 
orderList = Order.ToList(dateSet); 
return orderList; 


/// <summary> 
/// 獲取訂單總數(shù) 
/// </summary> 
public int GetOrderCount() 

int result = 0; 
string sql = "SELECT COUNT(*) FROM [Order$]"; 
result = ExcelHelper.GetScalar(sql); 
return result; 


/// <summary> 
/// 新增訂單 
/// </summary> 
public int AddOrder(Order param) 

int result = 0; 
string sql = "INSERT INTO [Order$](OrderNo,ProductName,Quantity,Money,SaleDate) VALUES(@OrderNo,@ProductName,@Quantity,@Money,@SaleDate)"; 
OleDbParameter[] oleDbParam = new OleDbParameter[] 

new OleDbParameter("@OrderNo", param.OrderNo), 
new OleDbParameter("@ProductName", param.ProductName), 
new OleDbParameter("@Quantity", param.Quantity), 
new OleDbParameter("@Money",param.Money), 
new OleDbParameter("@SaleDate",param.SaleDate) 
}; 
result = ExcelHelper.ExecuteCommand(sql, oleDbParam); 
return result; 


/// <summary> 
/// 修改訂單 
/// </summary> 
public int UpdateOrder(Order param) 

int result = 0; 
if (!String.IsNullOrEmpty(param.OrderNo)) 

string sql = "UPDATE [Order$] SET ProductName=@ProductName,Quantity=@Quantity,Money=@Money WHERE OrderNo=@OrderNo"; 
OleDbParameter[] sqlParam = new OleDbParameter[] 

new OleDbParameter("@OrderNo",param.OrderNo), 
new OleDbParameter("@ProductName",param.ProductName), 
new OleDbParameter("@Quantity", param.Quantity), 
new OleDbParameter("@Money", param.Money) 
}; 
result = ExcelHelper.ExecuteCommand(sql, sqlParam); 

return result; 


/// <summary> 
/// 刪除訂單 
/// </summary> 
public int DeleteOrder(Order param) 

int result = 0; 
if (!String.IsNullOrEmpty(param.OrderNo)) 

string sql = "DELETE [Order$] WHERE OrderNo=@OrderNo"; 
OleDbParameter[] sqlParam = new OleDbParameter[] 

new OleDbParameter("@OrderNo",param.OrderNo), 
}; 
result = ExcelHelper.ExecuteCommand(sql, sqlParam); 

return result; 


延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 国产精品9191 | 一级大片一级一大片 | 视频h在线| 国产精品看片 | 竹内纱里奈55在线观看 | 一区二区三区四区在线观看视频 | 粉嫩蜜桃麻豆免费大片 | 久草视频福利在线观看 | 色妇视频| 国产一级在线免费观看 | 69av导航| 亚洲影视在线观看 | 99久久自偷自偷国产精品不卡 | 国产九九在线视频 | 夜夜看 | 色屁屁xxxxⅹ在线视频 | 欧美高清视频一区 | 国产中文一区 | 国产成人高潮免费观看精品 | 精品亚洲国产视频 | 成人情欲视频在线看免费 | 一级一级一级毛片 | 在线成人免费观看视频 | chinese 军人 gay xx 呻吟 | 欧美黄色一级带 | 激情视频在线播放 | 黄色免费视频在线 | 在线1区| 一级国产免费 | 宅男视频在线观看免费 | 久久精品欧美一区二区三区不卡 | 久久蜜桃香蕉精品一区二区三区 | 在线观看av国产一区二区 | 精品国产一区二区三区久久久 | 性爱视频在线免费 | 中文字幕涩涩久久乱小说 | 国产大片全部免费看 | 免费黄色在线电影 | 国产精品一区在线看 | 主人在调教室性调教女仆游戏 | 国产免费一区二区三区在线能观看 |