使用存储过程操作数据库

添加数据:

--创建一个存储过程,向表中插入一条数据

create proc usp_insertintoTbClass

@className nvarchar(50),

@classDes nvarchar(100)

as

begin

insert into TbClass values( @ClassName,@classDes)

end

exec usp_insertintoTbClass @className='初一三班',@classDes='中班'

string constr=ConfigurationManager.ConnectionStrings["sql"].ConnectionString;

using(SqlConnection con=new SqlConnection(constr))

{

using(SqlCommand cmd=new SqlCommand("usp_insertintoTbClass",con))

{

cmd.CommandType=System.Data.CommandType.StoredProcedure;

cmd.Parameters.AddWithValue("@className",txtinsertname.Text.Trim());

cmd.Parameters.AddWithValue("@classDes",txtinsertdes.Text.Trim().Trim());

con.Open();

int r=cmd.ExecuteNonQuery();

MessageBox.Show("成功插入"+r+"条数据");

}

}

修改数据:

---创建一个存储过程来修改表中的数据

create proc usp_TbClass_updateclass

@ClassId int,

@ClassName nvarchar(50),

@ClassDescription nvarchar(100)

as

begin

update TbClass set ClassName=@ClassName,ClassDescription=@ClassDescription

where ClassId=@ClassId

end

exec usp_TbClass_updateclass 2,'高一四班','重点理科班'

//1:引用配置文件,创建链接字符串

string constr=ConfigurationManager.ConnectionStrings["sql"].ConnectionString;

//2:创建链接对象

using(SqlConnection con=new SqlConnection(constr))

{

//3:创建链接对象把存储过程作为一个参数语句传递给数据库对象

using(SqlCommand cmd=new SqlCommand("usp_TbClass_updateclass",con))

{

//4:将数据库对象设这为存储过程对象StoredProcedure

cmd.CommandType=System.Data.CommandType.StoredProcedure;

cmd.Parameters.AddWithValue("@ClassName",txtname.Text.Trim());

cmd.Parameters.AddWithValue("@ClassDescription",txtdsc.Text.Trim());

cmd.Parameters.AddWithValue("@ClassId",txtid.Text.Trim());

con.Open();

int r=cmd.ExecuteNonQuery();

MessageBox.Show("成功更改"+r+"条数据");

}

}

删除数据:

---创建一个存储过程删除表中的数据

create proc usp_TbClass_deleteclass

@ClassId int

as

begin

delete TbClass where ClassId=@ClassId

end

string constr=ConfigurationManager.ConnectionStrings["sql"].ConnectionString;

using(SqlConnection con=new SqlConnection(constr))

{

using(SqlCommand cmd=new SqlCommand("usp_TbClass_deleteclass",con))

{

cmd.CommandType=System.Data.CommandType.StoredProcedure;

cmd.Parameters.AddWithValue("@ClassId",txtdelet.Text.Trim());

con.Open();

int r=cmd.ExecuteNonQuery();

txtdelet.Clear();

if(r!=0)

{

MessageBox.Show("成功删除"+r+"条数据");

}

else

{

MessageBox.Show("您输入的班级编号不存在");

}

}

}

读取数据:

----创建一个存储过程查询表中的数据---------

create proc usp_selectTbClass

@classId int

as

begin

select * from TbClass where ClassId=@classId

end

private void button1_Click(objectsender,EventArgse)

{

string constr=ConfigurationManager.ConnectionStrings["sql"].ConnectionString;

SqlConnection con=new SqlConnection(constr);

using(SqlCommand cmd=new SqlCommand("usp_select TbClass",con))

{

con.Open();

cmd.CommandType=System.Data.CommandType.StoredProcedure;

cmd.Parameters.AddWithValue("@classId",txtclassid.Text.Trim());

//SqlParameter p1 = new SqlParameter("@className", SqlDbType.NVarChar);

//SqlParameter p2 = new SqlParameter("@classDes", SqlDbType.NVarChar);

//p1.Direction = ParameterDirection.Output;

//p2.Direction = ParameterDirection.Output;

//cmd.Parameters.Add(p1);

//cmd.Parameters.Add(p2);

using(SqlDataReader reader=cmd.ExecuteReader())

{

if(reader.HasRows)

{

while(reader.Read())

{

txtname.Text=reader.GetString(1);

txtdsc.Text=reader.GetString(2);

//txtname.Text = reader.GetString(0).ToString();

//txtdsc.Text = reader.GetString(1).ToString();

//cmd.ExecuteReader(System.Data.CommandBehavior.CloseConnection);

MessageBox.Show("读取成功");

}

}

}

}

}

Mysql存储函数实现增删改查_使用存储过程操作数据库(实现增删改查)相关推荐

  1. django-model操作数据库(增删改查)

    django-model操作数据库(增删该查) 一.数据库操作 1.创建model表 ​ 基本结构 更多字段: + View Code 更多参数 + View Code 2.注册APP,setting ...

  2. 十天学会mysql增删改查_第11天 MySQL-SQL普通增删改查

    一.如何设计表****关系 自然界中的关系通过数据对应的模式进行分析之后,得出结果:可以大致分为三种,一对一,一对多(多对一),多对多 一对多 一对多与多对一是一个概念,指的是一个实体的某个数据与另外 ...

  3. uniCloud云函数中通过传统方式操作数据库的-增删改查

    云函数 可以看做java或者php,作为后端服务 cloudfunctions/myCloud/index.js exports.main = async (event, context) => ...

  4. java数据库edit_Java数据库连接——JDBC基础知识(操作数据库:增删改查)

    一.JDBC简介 JDBC是连接java应用程序和数据库之间的桥梁. 什么是JDBC? Java语言访问数据库的一种规范,是一套API. JDBC (Java Database Connectivit ...

  5. Java数据库连接--JDBC基础知识(操作数据库:增删改查)

    一.JDBC简介 JDBC是连接java应用程序和数据库之间的桥梁. 什么是JDBC? Java语言访问数据库的一种规范,是一套API. JDBC (Java Database Connectivit ...

  6. 使用LitePal操作数据库(CRUD增删改查) 项目已上传GitHub

    GitHub项目地址: https://github.com/Skymqq/LitePalSave.git LitePal是一款开源的Android数据库框架,它采用了对象关系映射(ORM)映射的模式 ...

  7. mysql5建函数报1064错误,MySQL存储函数创建错误ERROR 1064和1327

    我正在使用MySQL v5.1.36,我正在尝试使用此代码创建存储函数. DELIMITER // CREATE FUNCTION `modx`.getSTID (x VARCHAR(255)) RE ...

  8. mysql存储函数声明float_mysql存储float

    Mysql中,int(10)和int(11)的区别 int(M) M指示最大显示宽度.最大有效显示宽度是255.显示宽度与存储大小或类型包含的值的范围无关 首先说一下mysql的数值类型,MySQL支 ...

  9. mysql创建有参数的函数,使用动态数量的参数创建MySQL存储函数

    我正在尝试创建一个MySQL函数IS_IN_ENUM('value','val1′,'val2′,'val3′),如果'value'在('val1′,'val2′,'val3')中,则返回true.我 ...

最新文章

  1. Docker网络——实现容器间通信、容器与外网通信以及容器的跨主机访问
  2. gitlab更改默认Nginx
  3. AndroidStudio打开新项目提示:Module: ‘app‘ platform ‘android-29‘ not found
  4. Method.invoke 异常捕获
  5. python退出帮助系统_Python退出脚本并返回Main
  6. 45. Use member function templates to accept all compatible types.
  7. Android RecyclerView 子条目(item)嵌套 RecyclerView
  8. 六子棋 java_六子棋——人工智能系统的设计与研究_Java
  9. Vulkan 多线程渲染
  10. 【论文】 Skeletonization of Ribbon-Like Shapes Based on Regularity and Singularity Analyses
  11. JavaScript判断浏览器内核
  12. 零基础搭建私人影音媒体平台【远程访问Jellyfin播放器】
  13. 养猫日记-20200411
  14. ADATE320介绍
  15. Learning from Synthetic Data: Addressing Domain Shift for Semantic Segmentation
  16. 三大特性看明白中国电影市场
  17. 杂谈之WEB前端project师身价
  18. DiaKG:用于构建医学知识图谱的糖尿病标注数据集【命名实体识别(NER)和关系抽取(RE)】
  19. IAR forARM 建立第一个STM32F051的工程
  20. Linux学习及红帽认证--01day

热门文章

  1. 用于SaaS和NoSQL的Jdbi
  2. jackson使用_如何在Jackson中使用PropertyNamingStrategy
  3. Spring Webflux – Kotlin DSL –实现的演练
  4. jmeter异步请求测试_使用JMeter对异步HTTP / REST服务进行压力/负载测试
  5. 新ANTLR 4.6的重要更改
  6. 摆脱困境:将运行时配置作为JSON返回
  7. IntelliJ IDEA内部设计
  8. Maven和Java多版本模块
  9. 优化您的ApplicationContext
  10. 关于Java垃圾收集