ADO.NET对SqlServer进行简单的增删改查
对数据库进行增删改查,首先想到的应该就是连接字符串了。
我们的连接字符串是由"Server=地址(本机=local);Database=数据库名称;User Id=登陆用户名;Password=密码" ;当然连接字符串中的属性不可能就这么点,我们这篇随笔不在这里进行系统学习,小人准备专门写一篇关于连接字符串的随笔。
然后我们开始看下面代码
引用命名空间 using system.data.SqlClient
/// <summary>
/// 查
/// </summary>
/// <returns></returns>
public void ExecuteReader(string connectionString)
{
//sql语句
string sqlString = "select * from Employee where Name=@Name";
//在SqlConnection的using块内打开 ,这可确保在代码退出时关闭和释放资源。
using (SqlConnection sqlConnection = new SqlConnection(connectionString))
{
SqlCommand sqlCommand = new SqlCommand(sqlString, sqlConnection);
//CommandType=StoredProcedure,IDbCommand.CommandText 属性应设置为要访问的存储过程的名称。
//CommandType=TableDirect,IDbCommand.CommandText 属性应设置为要访问的表的名称。只有用于 OLE DB 的 .NET Framework 数据提供程序才支持 TableDirect,将 IDbCommand.CommandType 设置为 TableDirect时不支持多个表访问。
//CommandType默认为Text,SQL 文本命令。
sqlCommand.CommandType = CommandType.Text;
sqlCommand.CommandText = sqlString;
sqlCommand.Parameters.AddWithValue("@Name", "zsk");
try
{
sqlConnection.Open();
SqlDataReader reader = sqlCommand.ExecuteReader();
while (reader.Read())
{
Console.WriteLine("\t{0}\t{1}\t{2}",
reader[0], reader[1], reader[2]);
}
reader.Close();
}
catch (Exception ex)
{ Console.WriteLine(ex.Message);
}
}
}
这里的SqlDataReader类提供一种从 SQL Server 数据库中读取只进的行流的方式。若要创建,必须调用SqlCommand对象的 ExecuteReader 方法,而不是直接使用构造函数。
public void ExecuteNonQuery(string connectionString)
{
string SqlString = "insert into Employee(Name, Age) values(@Name, @Age)";
//建立连接
using (SqlConnection sqlConnection = new SqlConnection(connectionString))
{
SqlCommand sqlCommand = new SqlCommand(SqlString, sqlConnection);
sqlCommand.Parameters.AddWithValue("@Name","zm");
sqlCommand.Parameters.AddWithValue("@Age", 21);
try
{
sqlConnection.Open();
///返回受影响行数
int row = sqlCommand.ExecuteNonQuery();
if (row>0)
{
Console.WriteLine("添加成功");
}
}
catch (Exception ex)
{
Console.WriteLine(ex.Message); }
}
}
上面代码中使用的是SqlCommand的ExecuteNonQuery方法,这个方法提供的是返回受影响行数,可以用于大部分简单的增删改。
ADO.NET还为提供了一个SqlDataAdapter类,在 DataSet 和 SQL Server 之间充当检索和保存数据的桥梁。 SqlDataAdapter 通过映射 Fill来提供此桥。
ADO.NET对SqlServer进行简单的增删改查的更多相关文章
- java+jsp+sqlserver实现简单的增删改查操作 连接数据库代码
1,网站系统开发需要掌握的技术 (1)网页设计语言,html语言css语言等 (2)Java语言 (3)数据库 (4)等 2,源程序代码 (1) 连接数据库代码 package com.jaovo.m ...
- 初试KONCKOUT+WEBAPI简单实现增删改查
初试KONCKOUT+WEBAPI简单实现增删改查 前言 konckout.js本人也是刚刚接触,也是初学,本文的目的是使用ko和asp.net mvc4 webapi来实现一个简单增删改查操作.Kn ...
- BitAdminCore框架应用篇:(二)创建一个简单的增删改查模块
NET Core应用框架之BitAdminCore框架应用篇系列 框架演示:http://bit.bitdao.cn 框架源码:https://github.com/chenyinxin/cookie ...
- salesforce 零基础学习(五十一)使用 Salesforce.com SOAP API 实现用户登录以及简单的增删改查(JAVA访问salesforce)
此篇请参看:https://resources.docs.salesforce.com/202/latest/en-us/sfdc/pdf/salesforce_developer_environme ...
- MyBatis学习--简单的增删改查
jdbc程序 在学习MyBatis的时候先简单了解下JDBC编程的方式,我们以一个简单的查询为例,使用JDBC编程,如下: Public static void main(String[] args) ...
- 通过JDBC进行简单的增删改查
通过JDBC进行简单的增删改查(以MySQL为例) 目录 前言:什么是JDBC 一.准备工作(一):MySQL安装配置和基础学习 二.准备工作(二):下载数据库对应的jar包并导入 三.JDBC基本操 ...
- MyBatis简单的增删改查以及简单的分页查询实现
MyBatis简单的增删改查以及简单的分页查询实现 <? xml version="1.0" encoding="UTF-8"? > <!DO ...
- MVC3.0+knockout.js+Ajax 实现简单的增删改查
MVC3.0+knockout.js+Ajax 实现简单的增删改查 自从到北京入职以来就再也没有接触MVC,很多都已经淡忘了,最近一直在看knockout.js 和webAPI,本来打算采用MVC+k ...
- SpringMVC之简单的增删改查示例(SSM整合)
本篇文章主要介绍了SpringMVC之简单的增删改查示例(SSM整合),这个例子是基于SpringMVC+Spring+Mybatis实现的.有兴趣的可以了解一下. 虽然已经在做关于SpringMVC ...
随机推荐
- 第11.24节 Python 中re模块的其他函数
一. re.compile函数 正则表达式编译函数,在后面章节专门介绍. 二. re.escape(pattern) re.escape是一个工具函数,用于对字符串pattern中所有可能被视为正则表 ...
- PyQt(Python+Qt)学习随笔:部件拉伸策略sizePolicy优先级
部件的尺寸调整策略或拉伸策略sizePolicy有7个值,如果同一个布局中的不同部件设置了不同的拉伸策略策略,在整个布局空间拉伸时,它们会怎么进行拉伸处理呢? 在未设置拉伸因子的情况下,Qt中这些拉伸 ...
- Xpath基础学习
方法 获取文本 a/text() 获取a标签下的文本 a//text() 获取a标签下所有标签的文本 a[text()='xxx']获取文本为xxx的a标签 @符号 a/@href 获取a标签的hre ...
- spring整合mybatis01
title: spring整合mybatis01 date: 2020-03-09 19:47:40 tags:整合的第一种方式 spring整合mybatis 1.mybatis回顾 mybatis ...
- 深入理解python
1 python自身的威力 1.1 使用type.str.dir.其他内置函数 //type函数:返回任意对象的数据类型.比如:整型.字符串.列表.字典.元组.函数.类.模块,甚至类型对象都可以作为参 ...
- 老男孩培训作业day1
作业一:博客(开通博客园) 作业二:编写登录接口 输入用户名密码 认证成功后显示欢迎信息 输错三次后锁定 作业三:多级菜单 三级菜单 可依次选择进入各子菜单 所需新知识点:列表.字典(列表和字典的相互 ...
- 题解-CmdOI2019 口头禅
题面 CmdOI2019 口头禅 给 \(n\) 个 \(01\) 串 \(s_i\),\(m\) 个询问问 \(s_{l\sim r}\) 的最长公共子串长度. 数据范围:\(1\le n\le 2 ...
- Codeforces Edu Round 58 A-E
A. Minimum Integer 如果\(d < l\),则\(d\)满足条件 否则,输出\(d * (r / d + 1)\)即可. #include <cstdio> #in ...
- 题解-JSOI2011 分特产
题面 JSOI2011 分特产 有 \(n\) 个不同的盒子和 \(m\) 种不同的球,第 \(i\) 种球有 \(a_i\) 个,用光所有球,求使每个盒子不空的方案数. 数据范围:\(1\le n, ...
- 题解-洛谷P5217 贫穷
洛谷P5217 贫穷 给定长度为 \(n\) 的初始文本 \(s\),有 \(m\) 个如下操作: \(\texttt{I x c}\),在第 \(x\) 个字母后面插入一个 \(c\). \(\te ...