using System; using System.Collections; using System.Configuration; using System.Data; using System.Linq; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.HtmlControls; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Xml.Linq; namespace WebUI { public partial class _Default : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) BindGrid(); } protected void BindGrid() { BLL.EmployeeBLL empBLL = new BLL.EmployeeBLL(); dgdShowData.DataSource = empBLL.GetEmployee(); dgdShowData.DataBind(); } protected void btnSearch_Click(object sender, EventArgs e) { BLL.EmployeeBLL empBLL = new BLL.EmployeeBLL(); dgdShowData.DataSource = empBLL.GetEmployee(txtName.Text); dgdShowData.DataBind(); } protected void btnAdd_Click(object sender, EventArgs e) { Response.Redirect("EmployeeDetails.aspx?id=-1"); } protected void dgdShowData_RowDeleting(object sender, GridViewDeleteEventArgs e) { //删除一条数据 int id = (int)dgdShowData.DataKeys[e.RowIndex].Value; BLL.EmployeeBLL empBLL = new BLL.EmployeeBLL(); lblMsg.Text = empBLL.DeleteEmployee(id); BindGrid(); } protected void chkSelectAll_CheckedChanged(object sender, EventArgs e) { //全选操作 for (int i = 0; i < dgdShowData.Rows.Count; i++) { //CheckBox ch = (CheckBox)dgdShowData.Rows[i].FindControl("CheckBox1"); //ch.Checked=true; ((CheckBox)dgdShowData.Rows[i].FindControl("CheckBox1")).Checked = ((CheckBox)sender).Checked; } } protected void btnDeleteAll_Click(object sender, EventArgs e) { //批量删除 string ids = ""; for (int i = 0; i < dgdShowData.Rows.Count; i++) { if (((CheckBox)dgdShowData.Rows[i].FindControl("CheckBox1")).Checked) ids += dgdShowData.DataKeys[i].Value + ",";//把想要添加的键值添加到数组中 } BLL.EmployeeBLL empBLL = new BLL.EmployeeBLL(); ids = ids.Substring(0, ids.Length - 1); lblMsg.Text = empBLL.DeleteEmployee(ids); BindGrid(); } protected void btnDelete_Click(object sender, EventArgs e) { //乱添加的 } } }
把存在数组中的id的数据删除
using System; using System.Data; namespace DAL { public class EmployeeDAL { public DataTable GetEmployee() { SQLHelp db = new SQLHelp(); return db.FillTable("select * from vw_Employee"); } public DataTable GetEmployee(int id) { SQLHelp db = new SQLHelp(); return db.FillTable("select * from vw_Employee where [id]=" + id); } public DataTable GetEmployee(string name) { SQLHelp db = new SQLHelp(); return db.FillTable("select * from vw_Employee where [name] like '%" + name + "%'"); } public string InsertEmployee(Model.Employee emp) { string sql = "insert into employee values('" + emp.Name + "','" + emp.Gender + "','" + emp.Birthday + "','" + emp.Phone + "','" + emp.Email + "'," + emp.DepID + ",'" + emp.Remark + "')"; SQLHelp db = new SQLHelp(); int i = db.ExecQuery(sql); switch (i) { case -2: sql = "数据库连接异常!请检查您的数据库或联系管理员!"; break; case -1: sql = "数据库操作异常!请检查您的数据或联系管理员!"; break; case 0: sql = "没有影响到任何数据!"; break; default: sql = "成功添加" + i + "条数据!"; break; } return sql; } public string UpdateEmployee(Model.Employee emp) { string sql = "update employee set [Name]='" + emp.Name + "' where [ID]=" + emp.ID; SQLHelp db = new SQLHelp(); int i = db.ExecQuery(sql); switch (i) { case -2: sql = "数据库连接异常!请检查您的数据库或联系管理员!"; break; case -1: sql = "数据库操作异常!请检查您的数据或联系管理员!"; break; case 0: sql = "没有影响到任何数据!"; break; default: sql = "成功修改" + i + "条数据!"; break; } return sql; } public string DeleteEmployee(int id) { string sql = "delete employee where [ID]=" + id; SQLHelp db = new SQLHelp(); int i = db.ExecQuery(sql); switch (i) { case -2: sql = "数据库连接异常!请检查您的数据库或联系管理员!"; break; case -1: sql = "数据库操作异常!请检查您的数据或联系管理员!"; break; case 0: sql = "没有影响到任何数据!"; break; default: sql = "成功删除" + i + "条数据!"; break; } return sql; } public string DeleteEmployee(string ids)//删除多参数的键值······· { string sql = "delete employee where [ID] in (" + ids + ")"; SQLHelp db = new SQLHelp(); int i = db.ExecQuery(sql); switch (i) { case -2: sql = "数据库连接异常!请检查您的数据库或联系管理员!"; break; case -1: sql = "数据库操作异常!请检查您的数据或联系管理员!"; break; case 0: sql = "没有影响到任何数据!"; break; default: sql = "成功删除" + i + "条数据!"; break; } return sql; } } }
本文分享自華爲雲社區《10分鐘搞懂各種內存溢出案例!!(含完整源碼,建議收藏)》,作者:冰 河。 作爲程序員,多多少少都會遇到一些內存溢出的場景,如果你還沒遇到,說明你工作的年限可能比較短,或者你根本就是個假程序員!哈哈,開個玩笑。今天,我
var obj = {} var texts = 'hello' let ipt = document.querySelector('#input') let txt = document.querySelector(
pt-osc原理探索及其觸發器的深入分析 > 作者:莫善,某互聯網公司高級 DBA。 > > 愛可生開源社區出品,原創內容未經授權不得隨意使用,轉載請聯繫小編並註明來源。 > > 本文約 6000 字,預計閱讀需要 20 分鐘。 背景 自工
本文分享自華爲雲社區《一文徹底喫透MyBatis源碼!!》,作者:冰 河。 寫在前面 隨着互聯網的發展,越來越多的公司摒棄了Hibernate,而選擇擁抱了MyBatis。而且,很多大廠在面試的時候喜歡問MyBatis底層的原理和源碼實現
文|苟振東(花名:盛知) Koupleless 項目 committer 螞蟻集團技術專家 本文 5789 字 閱讀 12 分鐘 本篇文章屬於 Koupleless 進階系列文章第二篇,默認讀者對 Koupleless 的基礎概念、能力都
1. 引言 在現代軟件開發過程中,性能優化和故障排查是保證應用穩定運行的關鍵任務之一。Java作爲一種廣泛使用的編程語言,其生態中湧現出了許多優秀的監控和診斷工具,諸如:SkyWalking、Zipkin等,它們幫助開發者和運維人員
· 前言 · 在國內,公網服務器與本地服務器的通信一直是個難題,本地服務器因爲IP是動態變化的,公網服務器沒辦法將請求發送給本地服務器。爲了解決這個問題,所以採用WebSocket協議替換Http協議。爲了實現請求等待,使用Gu
在這裏分享一下通過拖取 DataCube 代碼審計後發現的一些漏洞,包括前臺的文件上傳,信息泄露出賬號密碼,後臺的文件上傳。當然還有部分 SQL 注入漏洞,因爲 DataCube 採用的是 SQLite 的數據庫,所以SQL 注入相對來說顯
轉載自劉茫茫看山 問題背景 某天我們的租戶反饋數據庫連接缺少必要的驅動,我們通過日誌查看確實是缺少部分數據庫的驅動,因爲DolphinScheduler默認只帶了Oracle和MySQL的驅動,並且需要將pom文件中的test模式去掉纔可以
鴻蒙原生應用再新丁!新華社 入局鴻蒙 來自 #HarmonyOS# 微博5月27日消息 #鴻蒙千帆起#新華社客戶端完成鴻蒙原生應用核心版本開發,將實現不同使用場景下更加智能、精準、及時的要聞推送,以及主流價值的全場景覆蓋和高效傳播!與此同
記一次攻防演練中幸運的從若依弱口令到後臺getshell的過程和分析。 0x01 漏洞發現 首先,我會先把目標的二級域名拿去使用搜索引擎來搜索收集到包含這個目標二級域名的三級域名或者四級域名的網站。 這樣子可以快速的定位到你所要測試的漏洞
通過類之間的關係圖,讀懂spring boot原理 RequestBodyAdvice接口用於對Controller方法接收的請求體進行全局處理,可以在請求體被讀取之前或之後對請求體進行修改、包裝或添加一些額外的處理邏輯。下面是Req
鴻蒙原生應用再新丁!學習強國 入局鴻蒙 來自 #HarmonyOS# 微博5月23日消息 中央宣傳部宣傳輿情研究中心宣佈,將基於HarmonyOS NEXT鴻蒙星河版啓動“學習強國”App鴻蒙原生應用開發!“學習強國”App將爲鴻蒙生態帶