ADO.NET实现对SQL Server数据库的增删改查示例
作者:天青涩,再等你~ 发布时间:2024-01-12 17:37:54
标签:ado.net,增删改查
了解了上一篇的ADO.NET简介,我们就可以来对数据库进行增删改查等基本操作了!下面是每种操作的具体实现。
先在自定义类的头部定义好数据库连接对象和连接字符串:
string connectionString = "Data Source=SC-201607131829;Initial Catalog=Animal;Integrated Security=True";
SqlConnection conn;
1.数据库的查询操作,返回一个DataTable
public DataTable doSelect()
{
string sql = "select * from detial";
using (conn = new SqlConnection(connectionString))
{
conn.Open();
SqlDataAdapter da = new SqlDataAdapter(sql, conn);
DataSet ds = new DataSet();
da.Fill(ds); //填充DataSet
return ds.Tables[0];
}
}
2.数据库插入操作,返回布尔值
public bool doInsert(string name, string skin, string weight)
{
string sql = "insert into detial(name,skin,weight)values(@name,@skin,@weight)";
SqlParameter[] newAnimal = {
new SqlParameter("name",name),
new SqlParameter("skin",skin),
new SqlParameter("weight",skin)
};
using (conn = new SqlConnection(connectionString))
{
SqlCommand com = new SqlCommand(sql, conn);
try
{
if (newAnimal != null)
{
foreach (SqlParameter parameter in newAnimal)
{
com.Parameters.Add(parameter);
}
}
conn.Open();
int influence = com.ExecuteNonQuery();
if (influence > 0)
{
return true;
}
else
{
return false;
}
}
catch (Exception exception)
{
return false;
}
}
}
3.数据库删除操作,返回布尔值
public bool doDelete(string name)
{
string sql = "delete from detial where name = @name";
SqlParameter[] deleteParameter = { new SqlParameter("name", name) };
using (conn = new SqlConnection(connectionString))
{
SqlCommand com = new SqlCommand(sql, conn);
try
{
if (deleteParameter != null)
{
foreach (SqlParameter parameter in deleteParameter)
{
com.Parameters.Add(parameter);
}
}
conn.Open();
int influence = com.ExecuteNonQuery();
if (influence > 0)
{
return true;
}
else
{
return false;
}
}
catch (Exception exception)
{
return false;
}
}
}
4.数据库更新操作,返回布尔值
public bool doUpdate(string name , string skin) {
string sql = "update detial set skin = @skin where name = @name";
SqlParameter[] updateParameter = {
new SqlParameter("name",name),
new SqlParameter("skin",skin)
};
using (conn = new SqlConnection(connectionString)) {
SqlCommand com = new SqlCommand(sql,conn);
try {
if (updateParameter != null) {
foreach(SqlParameter parameter in updateParameter){
com.Parameters.Add(parameter);
}
}
conn.Open();
int influence = com.ExecuteNonQuery();
if (influence > 0)
{
return true;
}
else
{
return false;
}
}catch(Exception exception){
return false;
}
}
}
其中为了防止sql注入,用到了SqlParameter类。
来源:http://www.cnblogs.com/SunshineAgain/p/5721632.html
0
投稿
猜你喜欢
- 学习完如何生成一个 excel 文件之后,接下来我们继续学习一下如何在 excel 文件中写入一个比较简单的图表,先来看一下所需要的几个函数
- Python 的 httpx 包是一个复杂的 Web 客户端。当你安装它后,你就可以用它来从网站上获取数据。像往常一样,
- 1 np.arange(),类似于range,通过指定开始值,终值和步长来创建表示等差数列的一维数组,注意该函数和range一样结果不包含终
- Pycharm作为一款强力的Python IDE,在使用过程中感觉一直找不到全面完整的参考手册,因此决定对官网的Pycharm教程进行简要翻
- 本次我们选择的安卓游戏对象叫“单词英雄”,大家可以先下载这个游戏。游戏的界面是这样的:通过选择单词的意思进行攻击,选对了就正常攻击,选错了就
- 在实用美术中,常有"远看色彩近看花,先看颜色后看花,七分颜色三分花"的说法。这也就说明,在任何设计中,色彩对视觉的刺激起
- 行和列的位置都在以下三个列表中的一列中,则对应位置为1,其余位置全为0——[7-56,239-327,438-454,522-556,574
- 如何让animate在显示图片的过程保持窗口的标题不变animate -title "My Image Sequence"
- 1.请实现一个装饰器,把函数的返回值+100然后返回def wapper(func):def innner(*args,**kwargs):
- 相信很多人像我一样在学习python,pandas过程中对数据的选取和修改有很大的困惑(也许是深受Matlab)的影响。。。到今天终于完全搞
- 一个不错的js效果,实现了图片预加载,并实时显示图片加载进度。<script> var l=0; var i
- NopCommerce为了实现松耦合的框架设计目的,使用了IOC框架:Autofac。据有人测试,Autofac是性能很好的IOC工具。1、
- 本文实例讲述了Python变量、数据类型、数据类型转换相关函数用法。分享给大家供大家参考,具体如下:python变量的使用不需要进行类型声明
- 本文实例为大家分享了python遍历文件目录、批量处理同类文件的具体代码,供大家参考,具体内容如下目录操作1、获取当前目录import os
- 1.echo和print的区别PHP中echo和print的功能基本相同(输出),但是两者之间还是有细微差别的。echo输出后没有返回值,但
- 在数据分析中经常需要从csv格式的文件中存取数据以及将数据写书到csv文件中。将csv文件中的数据直接读取为 dict 类型和 DataFr
- 本文实例讲述了Python操作word常见方法。分享给大家供大家参考,具体如下:这里介绍两种方式:使用win32com使用docx1. 使用
- python与C的区别如下:1、语言类型不同。Python是一种动态类型语言,又是强类型语言。它们确定一个变量的类型是在您第一次给它赋值的时
- 简介今天试着用ptyhon做了一个抓取网页内容,并生成word文档的功能,功能很简单,做一下记录以备以后用到。生成word用到了第三方组件p
- 前言昨天团队的学妹来问关于POP3协议的问题,所以今天稍稍研究了下POP3协议的格式和Python里面的poplib。而POP服务器往回传的