对数据库进行增删改查,首先想到的应该就是连接字符串了。

我们的连接字符串是由"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进行简单的增删改查的更多相关文章

  1. java+jsp+sqlserver实现简单的增删改查操作 连接数据库代码

    1,网站系统开发需要掌握的技术 (1)网页设计语言,html语言css语言等 (2)Java语言 (3)数据库 (4)等 2,源程序代码 (1) 连接数据库代码 package com.jaovo.m ...

  2. 初试KONCKOUT+WEBAPI简单实现增删改查

    初试KONCKOUT+WEBAPI简单实现增删改查 前言 konckout.js本人也是刚刚接触,也是初学,本文的目的是使用ko和asp.net mvc4 webapi来实现一个简单增删改查操作.Kn ...

  3. BitAdminCore框架应用篇:(二)创建一个简单的增删改查模块

    NET Core应用框架之BitAdminCore框架应用篇系列 框架演示:http://bit.bitdao.cn 框架源码:https://github.com/chenyinxin/cookie ...

  4. salesforce 零基础学习(五十一)使用 Salesforce.com SOAP API 实现用户登录以及简单的增删改查(JAVA访问salesforce)

    此篇请参看:https://resources.docs.salesforce.com/202/latest/en-us/sfdc/pdf/salesforce_developer_environme ...

  5. MyBatis学习--简单的增删改查

    jdbc程序 在学习MyBatis的时候先简单了解下JDBC编程的方式,我们以一个简单的查询为例,使用JDBC编程,如下: Public static void main(String[] args) ...

  6. 通过JDBC进行简单的增删改查

    通过JDBC进行简单的增删改查(以MySQL为例) 目录 前言:什么是JDBC 一.准备工作(一):MySQL安装配置和基础学习 二.准备工作(二):下载数据库对应的jar包并导入 三.JDBC基本操 ...

  7. MyBatis简单的增删改查以及简单的分页查询实现

    MyBatis简单的增删改查以及简单的分页查询实现 <? xml version="1.0" encoding="UTF-8"? > <!DO ...

  8. MVC3.0+knockout.js+Ajax 实现简单的增删改查

    MVC3.0+knockout.js+Ajax 实现简单的增删改查 自从到北京入职以来就再也没有接触MVC,很多都已经淡忘了,最近一直在看knockout.js 和webAPI,本来打算采用MVC+k ...

  9. SpringMVC之简单的增删改查示例(SSM整合)

    本篇文章主要介绍了SpringMVC之简单的增删改查示例(SSM整合),这个例子是基于SpringMVC+Spring+Mybatis实现的.有兴趣的可以了解一下. 虽然已经在做关于SpringMVC ...

随机推荐

  1. linux搭建harbor与使用

    条件:安装docker&docker-compose 如未安装,请看:linux离线安装docker + docker-compose harbor 1.下载 下载地址:https://git ...

  2. Python正则表达式re.findall一个有趣的现象

    下面通过几个案例来分析一下, 注意:本节的parsematch函数请参考<妙用re.sub分析正则表达式解析匹配过程> 案例一: >>> re.findall(r&quo ...

  3. PyQt(Python+Qt)学习随笔:QTableView的gridStyle属性

    老猿Python博文目录 老猿Python博客地址 概述 gridStyle属性用于控制视图数据网格的样式,此属性只有在showGrid属性为True时才有作用. gridStyle属性取值含义 gr ...

  4. python socket 聊天室

    socket 发送的时候,使用的是全双工的形式,不是半双工的形式.全双工就是类似于电话,可以一直通信.并且,在发送后,如果又接受数据,那么在这个接受到数据之前,整个过程是不会停止的.会进行堵塞,堵塞就 ...

  5. 查询满足条件的最新数据(逐步优化,mysql、达梦数据库)

    1.条件:报警信息表sensor_warning 2.需求: 查询当前车厢的.不同设备的.所有处理未完成的.不同报警原因的.时间最新的数据集合,最后按设备id或报警时间排序 3.原始sql,不满足实际 ...

  6. vue 编程式导航

    // 命名的路由(这里的name为路由中定义的name名称) this.$router.push({ name: 'user', params: { userId: '123' }}) // 带查询参 ...

  7. 重庆聚焦区块链应用,Panda Global觉得春天真的来了!

    近日,由2020中国智博会组委会主办.重庆市大数据应用发展管理局与渝中区人民政府联合承办.重庆市区块链应用创新产业联盟和四川省区块链行业协会联合执行的"2020线上智博会区块链应用创新大赛& ...

  8. Java集合源码分析(九)——HashSet

    简介 HashSet就是一个集合,里面不能有重复的元素,元素也是无序的. HashSet其实就是调用了HashMap实现的,所以,它也不是线程安全的. HashSet通过iterator()返回的迭代 ...

  9. 深入理解Java虚拟机(四)——HotSpot垃圾收集器详解

    垃圾收集器 新生代收集器 1.Serial收集器 特点: 单线程工作,收集的时候就会停止其他所有工作线程,用户不可知不可控,会使得用户界面出现停顿. 简单高效,是所有收集器中额外内存消耗最少的. 没有 ...

  10. 云图说 | 云上资源管控有神器!关于IAM,你想知道的都在这里!

    摘要:统一身份认证(Identity and Access Management,简称IAM)是华为云上帮助您安全控制华为云资源访问权限的基础服务.通过本期云图说,您可以初步了解IAM的基本功能. 从 ...