webform 连接连接数据的操作

web-form

查询数据库 ,从配置文件中读取字符信息 查询

 // 从配置文件中读取数据 
            string sqlstr =  // 获取数据库连接字符串ConfigurationManager.ConnectionStrings["staffConnectionString2"].ConnectionString;
            DataTable dt = new DataTable();  // 存储数据
            using (SqlConnection conn = new SqlConnection(sqlstr)) // 连接数据库
            {
                conn.Open();  //  打开数据库
                using (SqlCommand cmd = conn.CreateCommand()) //sql 执行性句柄
                {
                    cmd.CommandText = "select * from tb_dept";  // 添加sql语句
                    SqlDataAdapter adapter = new SqlDataAdapter(cmd); // 执行句柄
                    adapter.Fill(dt); // 添加到表里面
                }
            }

查询数据库,直接写字符串来连接 查询

string connectionString = "Data Source=MOGFPLQEEJOTGON\\SQLEXPRESS;Initial Catalog=staff;Integrated Security=True"; // 直接写sql语句
                // 原来少了一个分号
                // 表的名字弄错了
      string selectDate = "select * from tb_emp where dept_id = @nodeValue";
      using (SqlConnection conn = new SqlConnection(connectionString)) // 连接数据库
          {
         using (SqlCommand cmd = new SqlCommand(selectDate, conn)) // 执行sql语句
             {
          // 没有查到数据就是空的 
     cmd.Parameters.AddWithValue("@nodeValue", nodeValue);// 添加参数
     SqlDataAdapter adapter = new SqlDataAdapter(cmd); // 查询数据将添加到数据表中
                        adapter.Fill(dt);
                    }
                }
  // 导致响应不生效了    重定向
  //Response.Redirect("WebForm1.aspx");
  // 转发保留之前的参数  转发
  Server.Transfer("WebForm1.aspx");

数据库 修改

// 这还要转义一下不然后不去
string connectionString = "Data Source=MOGFPLQEEJOTGON\\SQLEXPRESS;Initial Catalog=staff;Integrated Security=True ";
// 这样就可以解决这个问题了,只要能获取到这个参数就好
string param1 = Session["id"].ToString().Trim();
int params_id = Convert.ToInt32(param1);
// 原来少了一个分号
string updateQuery = "update tb_emp set e_name = @name,dept_id= @dept_id,position = @position,phone= @phone,address= @address,emp_code= @emp_code where id = @params_id";   // 
            using (SqlConnection conn = new SqlConnection(connectionString))
            {
                using (SqlCommand cmd = new SqlCommand(updateQuery, conn))
                {
                    cmd.Parameters.AddWithValue("@name", name.Text.Trim());
                    cmd.Parameters.AddWithValue("@dept_id", dept_id.Text.Trim());
                    cmd.Parameters.AddWithValue("@phone", phone.Text.Trim());
                    cmd.Parameters.AddWithValue("@position", position.Text.Trim());
                    cmd.Parameters.AddWithValue("@address", address.Text.Trim());
                    cmd.Parameters.AddWithValue("@emp_code", emp_code.Text.Trim());
                    conn.Open();
                    int rowsAffected = cmd.ExecuteNonQuery();
                    if (rowsAffected > 0)
                    {// 数据添加成功 重定向是服务器发送过来,没有数据了,页面不是第一次加载呢,那就没有绑定数据源
                        // 导致响应不生效了,
                        //Response.Redirect("WebForm1.aspx");
                        // 转发保留之前的参数
                        Server.Transfer("WebForm1.aspx");
                    }
                    else
                    {
                        // 数据添加失败
                        Response.StatusCode = 403;
                    }
                }
            }

删除 数据库

 // 这还要转义一下不然后不去
            string connectionString = "Data Source=MOGFPLQEEJOTGON\\SQLEXPRESS;Initial Catalog=staff;Integrated Security=True";
            // 原来少了一个分号
            // 表的名字弄错了
            string deteleQuery = "delete from tb_emp where id = @id";
​
            int id = Convert.ToInt32(Session["id"].ToString().Trim());
​
            using (SqlConnection conn = new SqlConnection(connectionString))
            {
                using (SqlCommand cmd = new SqlCommand(deteleQuery, conn))
                {
                    cmd.Parameters.AddWithValue("@id",id );
                    conn.Open();
                    // 执行成功就返回非一的数,
                    int rowsAffected = cmd.ExecuteNonQuery();
                    if (rowsAffected > 0)
                    {
                        // 删除添加成功
                        Response.Redirect("WebForm1.aspx");
                    }
                    else
                    {
                        // 数据添加失败
                        Response.StatusCode = 403;
                    }
                }
            }

添加 数据库

 // 这还要转义一下不然后不去
            string connectionString = "Data Source=MOGFPLQEEJOTGON\\SQLEXPRESS;Initial Catalog=staff;Integrated Security=True";
            string insertQuery = "INSERT INTO tb_emp (e_name,dept_id,position,phone,address,emp_code)" +
            "VALUES (@name,@dept_id,@position,@phone,@address,@emp_code)";
            using (SqlConnection conn = new SqlConnection(connectionString))
            {
                using (SqlCommand cmd = new SqlCommand(insertQuery, conn))
                {
                    cmd.Parameters.AddWithValue("@name", name.Text.Trim());
                    cmd.Parameters.AddWithValue("@dept_id", dept_id.Text.Trim());
                    cmd.Parameters.AddWithValue("@phone", phone.Text.Trim());
                    cmd.Parameters.AddWithValue("@position", position.Text.Trim());
                    cmd.Parameters.AddWithValue("@address", address.Text.Trim());
                    cmd.Parameters.AddWithValue("@emp_code", emp_code.Text.Trim());
                    conn.Open();
                    int rowsAffected = cmd.ExecuteNonQuery();
                    if (rowsAffected > 0)
                    {
                        // 数据添加成功
                        Response.Redirect("WebForm1.aspx");
                    }
                    else
                    {
                        // 数据添加失败
                        Response.StatusCode = 403;
                    }
                }
            }

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/759472.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Keepalive技术

文章目录 一、Keepalive基础vrrp技术Keepalived介绍Keepalived架构 二、 Keepalived 相关文件配置文件组成全局配置虚拟路由器配置 三、配置lvs和keepalive联动服务器架构抢占模式配置配置单播、组播配置通知模块日志功能脑裂现象 四、keepalived和nginx联动keepalive和其他应用…

探索MySQL核心技术:理解索引和主键的关系

在数据密集型应用中,数据库的性能往往是决定一个应用成败的重要因素之一。其中,MySQL作为一种开源关系型数据库管理系统,以其卓越的性能和丰富的功能被广泛应用。而在MySQL数据库优化的众多技巧中,索引和主键扮演着极其重要的角色…

专题一: Spring生态初探

咱们先从整体脉络上看下Spring有哪些模块,重要的概念有个直观印象。 从Spring框架的整体架构和组成对整体框架有个认知。 Spring框架基础概念 Spring基础 - Spring和Spring框架组成 上图是从官网4.2.x获取的原图,目前我们使用最广法的版本应该都是5.x&am…

svn怎么新建分支,切换分支

在当前分支下,点svn右键,选择分支/标记 在选择远端地址时,点右边更多选项,打开远端版本库。找到对应的分支上级位置,点击确定 填写新分支名称,我这儿是将分支建在了branches下,分支名称为V1.1 填…

WEB攻防【4】——JavaWeb项目/JWT身份攻击/组件安全/访问控制

一、知识点 1、Javaweb常见安全及代码逻辑 Javaweb的架构: 如何通过包查找到文件,通过URL对应源码的文件,或者通过源码文件对应URL地址。 2、目录遍历&身份验证&逻辑&JWT Javaweb里面有身份认证的JWT的技术,pyth…

二级建造师(建筑工程专业)考试题库,高效备考!!!

16.在施工合同履行期间发生的变更事项中,属于工程变更的是()。 A.质量要求变更 B.分包单位变更 C.合同价款变更 D.相关法规变更 答案:A 解析:工程变更一般是指在工程施工过程中,根据合同约定对施工的…

SSM学习2:依赖注入、依赖自动装配、集合注入、加载properties文件

依赖注入 依赖注入方式 setter注入——引用类型 setter注入——简单类型 public class BookDaoImpl implements BookDao {public void setDatabaseName(String databaseName) {this.databaseName databaseName;}public void setNum(int num) {this.num num;}private Stri…

Spark学习3.0

目录 10.3.4 Spark运行原理 1.设计背景 2.RDD概念 3.RDD特性 4.RDD之间的依赖关系 窄依赖和宽依赖 5.Stage的划分 Stage的类型包括两种:ShuffleMapStage和ResultStage 6.RDD运行过程 10.3.4 Spark运行原理 1.设计背景 许多 迭代式算法(比如机器学习、图…

【C++】————string基础用法及部分函数底层实现

作者主页: 作者主页 本篇博客专栏:C 创作时间 :2024年6月30日 前言: 本文主要介绍STL容器之一 ---- string,在学习C的过程中,我们要将C视为一个语言联邦(摘录于Effective C 条款一&#x…

读书笔记-《Spring技术内幕》(三)MVC与Web环境

前面我们学习了 Spring 最核心的 IoC 与 AOP 模块(读书笔记-《Spring技术内幕》(一)IoC容器的实现、读书笔记-《Spring技术内幕》(二)AOP的实现),接下来继续学习 MVC,其同样也是经典…

朋友问我Java中“::”是什么意思?我汗流浃背了......

目录 一:什么是::? 二:方法引用的几种类型 1.引用静态方法 2.引用特定对象的实例方法 3.引用特定类型的任意对象的实例方法 4.引用构造方法 三:方法引用的适用场景 四:总结 一&#xff1…

数学建模比赛介绍与写作建议

0 小序 本文的写作起因是导师要求我给打算参加相关竞赛的师弟们做一次讲座和汇报。我梳理了一个ppt提纲,并经过整理,因此有了这篇文章。 我打算从数学建模论文写作格式和写作技巧入手,接着介绍数学建模常用的数学模型,最后提出一…

sheng的学习笔记-AI-聚类(Clustering)

ai目录 sheng的学习笔记-AI目录-CSDN博客 基础知识 什么是聚类 在“无监督学习”(unsupervised learning)中,训练样本的标记信息是未知的,目标是通过对无标记训练样本的学习来揭示数据的内在性质及规律,为进一步的数据分析提供基础。此类学…

【电源专题】为什么带电量计芯片的电池MOS保护要放在高侧

在实际的电量计电池开发中,发现一个很奇怪的现象。传统电池保护IC往往都是将充电保护和放电保护的两个MOS管放在低侧的。如下所示是文章:【电源专题】读一读单节锂电池保护IC规格书 可以看到M1和M2两个MOS管是放在PB-(也就是电池的负端),我们叫做低端。 而BQ28Z610电…

清华大学世界排名:2025QS世界大学排名第20名

近日,国际高等教育研究机构QS Quacquarelli Symonds正式发布了2025QS世界大学排名,其中麻省理工学院连续第13年蝉联榜首,北京大学排名由去年的全球第17上升至全球第14名,清华大学位列2025QS世界大学排名第20名,以下是查…

Linux——/etc/passwd文件含义,grep,cut

/etc/passwd文件含义 作用 - 记录用户账户信息:共分为7段,使用冒号分割 含义 - 文件内容意义:账户名:密码代号x:UID:GID:注释:家目录:SHELL - 第7列/sbin/nologin&#x…

大数据可视化实验(七):Python数据可视化

目录 一、实验目的... 1 二、实验环境... 1 三、实验内容... 1 1)绘制带颜色的柱状图。.. 1 2)绘制堆叠柱状图。.. 3 3)绘制数学函数曲线图。.. 4 4)使用seaborn绘制组合图形。... 5 5)使用Boken绘制多个三角形…

软件框架(Framework)是什么?

可实例化的、部分完成的软件系统或子系统,它为一组系统或子系统定义了统一的体系结构(architecture),并提供了构造系统的基本构造块(building blocks),还为实现具体功能定义了扩展点(extending points)。 框架实现了体系结构级别的复用。 其…

深度学习评价指标:Precision, Recall, F1-score, mIOU, 和 mDice

在深度学习和机器学习中,评价模型性能是至关重要的一环。本文将详细讲解一些常见的评价指标,包括精确率(Precision)、召回率(Recall)、F1-score、平均交并比(mIOU)和平均Dice系数&am…

[leetcode]beautiful-arrangement. 优美的排列

. - 力扣&#xff08;LeetCode&#xff09; class Solution { public:vector<vector<int>> match;vector<int> vis;int num;void backtrack(int index, int n) {if (index n 1) {num;return;}for (auto &x : match[index]) {if (!vis[x]) {vis[x] tru…
最新文章