博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ADO.NET复习——自己编写SqlHelper类
阅读量:5969 次
发布时间:2019-06-19

本文共 4211 字,大约阅读时间需要 14 分钟。

今天复习了一次ADO.NET基础,整理一下自己的认为的重点:

编写SqlHelper类,方便我们执行数据库语句,这时可以直接调用封装在SqlHelper类的方法。现在大多数公司面试的时候,给你的面试题都会要你自己手写一个SqlHelper的类,这考的是自己的基本功,如果一个根基不牢固的开发人员,你写的代码肯定好不到哪里去。

 

下面是SqlHelper的演示代码,一定要熟练:

1 public static SqlHelper 2  { 3          //这里定义一个字符串变量,把数据库连接字符串赋值给它,也可以把连接字符串添加到配置文件,这样整个项目可以方便访问,这里为了清楚直接赋值到字符串变量 4          static string connStr = "Data Source=127.0.0.1\\SQL2012; Initial Catalog=Test;User ID=test;Password=test"; 5   6   7          //执行查询语句并返回一个内存中的数据表 8          public DataTable ExecuteDataTable(string sql,params SqlParameter[] parameters) 9              //因为不确定SQL语句的参数有几个,所以使用了长度可变参数,但必须放到后面10         {11 12             using (SqlConnection conn = new SqlConnection(connStr))//到数据库的连接13             {14                 conn.Open();//打开数据库连接15                 using (SqlCommand cmd = conn.CreateCommand())//创建执行对象16                 {17                     cmd.CommandText = sql;//给cmd赋值SQL语句18                     cmd.Parameters.AddRange(parameters);//把SQL语句参数添加到cmd19                     DataSet dataset = new DataSet();//新建DataSet对象,用于保存查询结果20                     SqlDataAdapter adapter = new SqlDataAdapter(cmd);//把执行cmd,更新数据结果到adapter对象21                     adapter.Fill(dataset);//adapter对象的Fill方法把结果添加到DataSet对象中22                     return dataset.Tables[0];//返回一个查询结果的一个表23                 }24             }25         }26 27         //执行查询语句返回结果集合的第一行第一列28         public Object ExecuteScalar(string sql,params SqlParameter[] parameters)29         {30             using(SqlConnection conn = new SqlConnection(connStr))//到数据库的连接31             {32                 conn.Open();//打开数据库连接33                 using(SqlCommand cmd = conn.CreateCommand())//创建执行对象34                 {35                     cmd.CommandText=sql;//给cmd赋值SQL语句36                     cmd.Parameters.AddRange(parameters);//把SQL语句参数添加到cmd37                     return cmd.ExecuteScalar();//执行查询,返回查询结果的第一行的第一列38                 }39             }40         }41 42         //执行参数化SQL语句,返回受影响的行数43         public int ExecuteNonQuery(string sql,params SqlParameter[] parameters)44         {45 46             using (SqlConnection conn = new SqlConnection(connStr))//到数据库的连接47             {48                 conn.Open();//打开数据库连接49                 using(SqlCommand cmd= conn.CreateCommand())//创建执行对象50                 {51                     cmd.CommandText= sql;//给cmd赋值SQL语句52                     cmd.Parameters.AddRange(parameters);//添加SQL语句中的参数53                     return cmd.ExecuteNonQuery();//执行数据库语句并返回受影响的行数54                 }55             }56         }57 }

 

 

 

二、上面的SqlHelper类创建好了我们就可以在项目里面调用了,下面演示调用代码:

调用SqlHerlper类E的方法插入数据:

1     class Program 2     { 3         static void Main(string[] args) 4         { 5             //输入数据 6             Console.WriteLine("请输入要保存到数据库的名字:"); 7             string name = Console.ReadLine(); 8             Console.WriteLine("请输入年龄:"); 9             int age = Console.ReadLine();10 11             //调用ExecuteNonQuery(string sql,params SqlParameter[] parameters)函数,用于将获取的的数据插入到数据库12             int rows = sqlhelper.ExecuteNonQuery("insert into T_Test(Name,Age) vaules(@Name,@Age)", new SqlParameter("@Name", name), new SqlParameter("@Age", age));13 14             Console.WriteLine("成功插入{0}条数据", rows);//显示执行结果15             Console.ReadKey();16         }17 18     }

 

删除数据

1  1     class Program 2  2     { 3  3         static void Main(string[] args) 4  4         { 5  5             string name = "张三"; 6  6  7  7             int result = sqlhelper.ExecuteNonQuery("delete from T_Test where Name=@Name", new SqlParameter("@Name", name));//删除名字叫张三的数据 8  8             Console.WriteLine("成功删除{0}数据.", result); 9  9 10 10             Console.ReadKey();11 11         }12 13     }

查询数据

1. 创建一个winform窗体,放一个控件dataGridView

2.在窗体的载入事件中添加调用SqlHelper类的方法,并把结果赋值到dataGridView,代码如下:

1          private void Form1_Load(object sender, EventArgs e)2          {3              //在窗体的载入事件中添加调用SqlHelper类的方法,并把结果赋值到dataGridView4              dataGridView1.DataSource = sqlhelper.ExecuteDataTable("select Name from T_Test");5          }

 

3.运行窗体,显示的结果就是从数据库查询到的数据了

 

 

这是我今天复习过的觉得是的重点,虽然很菜啊,这是我第一次写带有代码的博客,自己终于走出这一步,自己以后也会多写博客,分享自己学习中的点点滴滴。

大神不要喷哈......

 

转载于:https://www.cnblogs.com/pirates/p/4232600.html

你可能感兴趣的文章
通过帧中继验证OSPF支持的不同网络类型
查看>>
Python OpenCV学习笔记之:分水岭算法分割图像
查看>>
11月国内网站统计:淘宝得益于双11流量直逼腾讯
查看>>
Android NDK JNI 的简单使用
查看>>
SVN 创建版本库
查看>>
Nginx安装与配置文件解析
查看>>
怎么把电脑网速变快
查看>>
oracle重做日志文件版本不一致问题处理
查看>>
各个系统动态多路径软件识别LUN的方法
查看>>
Intellij IDEA下一个Tomcat启动带多个虚拟目录和JDNI数据源应用的方法
查看>>
我的友情链接
查看>>
编译linux3内核,与busybox,用qemu模拟运行
查看>>
Linux中的进程创建函数fork
查看>>
Vista下硬盘管理
查看>>
我的友情链接
查看>>
Python3 统计 ftp 文件个数和大小
查看>>
Pytohn实现Linux shell中的wc命令
查看>>
C++学习手记五:C++流操作
查看>>
公众号自定义图文消息推送(2)
查看>>
引用的定义、使用及其和指针的区别与联系
查看>>