增删查改常用代码

static string  sqlcon = "server=.;database=;Integrated Security=true;";
        /// <summary>
        /// 新增数据
        /// </summary>
        public static void Add()
        {
            //string sqlcon = "server=.;database=;Integrated Security=true;";
            SqlConnection conn=new SqlConnection(sqlcon);
            string sqlStr="insert into Boook(b_id,b_title,b_author,b_money)values(1,'ASP.NET','莫言',100)";
            SqlCommand cmd=new SqlCommand(sqlStr,conn);
            conn.Open();
            int i = cmd.ExecuteNonQuery();
            conn.Close();
            if (i>0)
            {
                Console.Write("新增成功!");
            }
            else
            {
                Console.Write("新增失败!");
            }
        }
        /// <summary>
        /// 删除数据
        /// </summary>
        public static void Delete()
        {
            //string sqlcon = "server=.;database=;Integrated Security=true;";
            SqlConnection conn = new SqlConnection(sqlcon);
            string sqlStr = "delete from book where b_id=1";
            SqlCommand cmd = new SqlCommand(sqlStr,conn);
            conn.Open();
            int i = cmd.ExecuteNonQuery();
            conn.Close();
            if (i > 0)
            {
                Console.Write("删除成功!");
            }
            else
            {
                Console.Write("删除失败!");
            }
        }
        /// <summary>
        /// 数据更新,软删除
        /// </summary>
        private static void Update()
        {
            //string sqlcon = "server=.;database=;Integrated Security=true;";
            SqlConnection conn = new SqlConnection(sqlcon);
            string sqlStr = "update Boook set b_id =2 where b_id=1";
            SqlCommand cmd = new SqlCommand(sqlStr, conn);
            conn.Open();
            int i = cmd.ExecuteNonQuery();
            conn.Close();
            if (i > 0)
            {
                Console.Write("更新成功!");
            }
            else
            {
                Console.Write("更新失败!");
            }
        }
        /// <summary>
        /// 读取单个值
        /// </summary>
        private static void selectSingle()
        {
            SqlConnection conn = new SqlConnection(sqlcon);
            string sqlStr = "select * from Book";
            SqlCommand cmd = new SqlCommand(sqlStr, conn);
            conn.Open();
            object obj = cmd.ExecuteScalar();
            conn.Close();
            Console.Write(obj.ToString());
        }
        /// <summary>
        /// dateReader读取数据,逐行读取,通过下表访问列
        /// </summary>
        private static void dateReader()
        {
            SqlConnection conn = new SqlConnection(sqlcon);
            string sqlStr = "select * from Book";
            SqlCommand cmd = new SqlCommand(sqlStr, conn);
            conn.Open();
            SqlDataReader dr = cmd.ExecuteReader();
            if (dr.HasRows)
            {
                while (dr.Read())//如果读到下一行数据就返回True,且本身就属于那一行数据
                {
                    Console.Write(dr[0].ToString() + '_' + dr[1].ToString()+'_'+dr["ID"].ToString());
                }
            }
            else
            {
                Console.Write("无数据");
            }
            dr.Close();
            conn.Close();
        }

        //使用适配器填充数据集  SqlDataAdapter不需要手动开关,它能够自己开关
        public static void QueryListAdapter()
        {
            SqlConnection con = new SqlConnection(sqlcon);
            string sqlStr = "select*from book";
            SqlDataAdapter da = new SqlDataAdapter(sqlStr,con);
            DataSet ds = new DataSet();
            da.Fill(ds);
            DataTable dt = ds.Tables[0];
            //循环数据表中的每一行
            for (int i = 0; i < dt.Rows.Count; i++)
            {
                DataRow dr = dt.Rows[i];//将表中的一行拿出来给行对象
                Console.WriteLine(dr[0].ToString() + "_" + dr["ID"].ToString());
            }
        }

        //使用适配器填充数据集  SqlDataAdapter不需要手动开关,它能够自己开关
        public static void QueryListAdapter2()
        {
            SqlConnection con = new SqlConnection(sqlcon);
            string sqlStr = "select*from book";
            SqlDataAdapter da = new SqlDataAdapter(sqlStr, con);
            DataSet ds = new DataSet();
            da.Fill(ds);
            DataTable dt = ds.Tables[0];
            //循环数据表中的每一行
            for (int i = 0; i < dt.Rows.Count; i++)
            {
                DataRow dr = dt.Rows[i];//将表中的一行拿出来给行对象
                Console.WriteLine(dr[0].ToString() + "_" + dr["ID"].ToString());
            }
        }
        //调用存储过程查询数据
        public static void QuerListByProc()
        {
            SqlConnection conn = new SqlConnection(sqlcon);
            SqlCommand cmd=new SqlCommand("usp_GetBookMyCateId",conn);
            //无参数的存储过程
            SqlParameter sp2 = new SqlParameter();
            sp2.ParameterName = "@cateId";
            sp2.SqlDbType = SqlDbType.Int;
            sp2.Value = 2;
            cmd.Parameters.Add(sp2);
            //有两个参数的存储过程
            SqlParameter sp = new SqlParameter("@cateId", 2);
            cmd.Parameters.Add(sp);
            SqlDataAdapter da = new SqlDataAdapter();
            DataTable dt = new DataTable();
            da.Fill(dt);
            foreach(DataRow dr in dt.Rows)
            {
                Console.WriteLine(dr[0].ToString() + "_" + dr["ID"].ToString());
            }
        }
        //调用多个参数的存储过程查询
        private static void QueryListByProc2()
        {
            SqlConnection conn = new SqlConnection(sqlcon);
            SqlCommand cmd = new SqlCommand("proGetPageData", conn);
            cmd.CommandType = CommandType.StoredProcedure;
            //尽量不要使用两个参数的存储过程,类型是枚举类型,另外一个两个参数的函数值混淆
            //SqlParameter par = new SqlParameter("@Id", DbType.Int32);
            //SqlParameter par = new SqlParameter("@id", 11);
            //赋值多个参数
            SqlParameter[] paras ={
                                     new SqlParameter("@pageIndex",SqlDbType.Int,4),//这里的4是代表整型的长度
                                     new SqlParameter("@pageSize",SqlDbType.Int,4)
                                 };
            //cmd.Parameters.AddRange(paras);
            paras[0].Value = 1;//搜索第一页
            paras[1].Value = 2;//赋值的
            cmd.Parameters.AddRange(paras);//为command对象添加pameters数组
            conn.Open();
            //SqlDataReader dr = cmd.ExecuteReader();
            //while (dr.Read())
            //{
            //    Console.Write("id=" + dr[0].ToString());
            //}
            //dr.Close();
            SqlDataAdapter da = new SqlDataAdapter(cmd);
            DataTable dt = new DataTable();
            da.Fill(dt);
            foreach (DataRow dr in dt.Rows)
            {
                Console.WriteLine(dr[0].ToString() + "_" + dr[1].ToString());
            }
            conn.Close();
        }

        //调用带输出参数的存数过程
        private static void QuerListProc3()
        {
            SqlConnection conn = new SqlConnection(sqlcon);
            SqlCommand cmd = new SqlCommand("proGetData2", conn);
            SqlParameter[] paras ={
                                     new SqlParameter("@pageIndex",SqlDbType.Int),
                                     new SqlParameter("@pageSize",SqlDbType.Int),
                                     new SqlParameter("@pageCount",SqlDbType.Int),
                                     new SqlParameter("@rowCount",SqlDbType.Int)
                                 };
            paras[0].Value = 1;
            paras[1].Value = 2;
            paras[2].Direction = ParameterDirection.Output;
            paras[3].Direction = ParameterDirection.Output;//设置参数的输出方向
            cmd.Parameters.AddRange(paras);
            SqlDataAdapter da = new SqlDataAdapter(cmd);
            DataTable dt = new DataTable();
            da.Fill(dt);
            foreach (DataRow dr in dt.Rows)
            {
                Console.WriteLine(dr[0].ToString() + "_" + dr[1].ToString());
            }
            int pageCount=Convert.ToInt32(cmd.Parameters[2].Value);
            int rowCount=Convert.ToInt32(cmd.Parameters[3].Value);//获取输出参数
            Console.WriteLine("pageCount=" + pageCount + ",rowCount=" + rowCount);
        }
时间: 2024-11-03 18:57:41

增删查改常用代码的相关文章

增删查改最优化代码

问题描述 技术:ADO.NET+ASP.NET+三层结构控件:GridView.DataList.Repeter均可 解决方案 解决方案二:usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;usingSystem.Data.SqlClient;usingSystem.Configuration;usingSystem.Data;namespaceDals{publicclassDBHelpe

Java中单向链表的实现:增删查改功能

写一个大家都比较熟悉的数据结构:单向链表. 不过先告诉大家一个小秘密,java的API里面已经提供了单向链表的类,大家可以直接拿来用,不过学习数据结构课程的时候想必大家也已经知道,虽然系统会给我们提供一些常用的数据结构,但是自定义的总是能够带来不同的喜感的,而且通过自己的编写也更能够让我们了解其中实现的过程,而且我们还可以写一些比较个性化的方法作为属于自己的数据结构.这里主要是介绍一些常用结构里面都会用到的方法,以及链表具体是如何操作的. 首先,单链表相对于队列的优势在于存储地址不是连续的,这样

qt-如何在QSqlQueryModel中实现增删查改,然后如何与mysql数据库同步更新

问题描述 如何在QSqlQueryModel中实现增删查改,然后如何与mysql数据库同步更新 本人是个菜鸟在做一个简单的同学录系统,这是进入之后的界面 我想实现鼠标选取一个表格点击"修改同学信息"之后能对它在修改并且修改确定后能同步刷新MySQL数据库而且表格中的数据也更新. 下面是我的代码:#include ""record.h""#include ""ui_record.h""#include &qu

多级索引算法只增删查改

问题描述 多级索引算法只增删查改 多级索引算法 在链表描述的具有length个元素的集合中进行搜索,至多需要length次访问节点.如果在链的中部节点加一个指针,并记录头部到中部的距离,则访问的节点数可以减少到n/2+1次.搜索时,首先将欲搜索的索引与头部到中部的距离进行比较,如果欲搜索的索引较小,则仅需搜索链表的左半部,否则,只要从中部开始搜索右半部. 图3-1a的链表中有七个元素.该链表有一个头节点和一个尾节点.节点中的数表示该节点的索引值.如果要访问索引值为7的节点,对该链表的搜索要进行七

界面-列表增删查改数据库字段值

问题描述 列表增删查改数据库字段值 网页主界面页面上显示一些数据列表,然后我想对页面上的数据进行修改.修改后能够自动的对数据进行入库保存,而且是对已有的数据进行更新,数据库中没有的数据进行自动插入.而且最好是可复用性高,对任何数据表的任何数据字段都可以进行保存,并且更新条件最好是可以自定义设置.用JS+java实现,本人对代码只是略懂,最好是实现起来简单. 解决方案 这个问题实现的方法比较多,不过如果对于初学者,不管哪种实现方式,写代码都不简单.因为要从数据库取数,把数据显示在网页上,还需要获取

SQL Server 中BIT类型字段增删查改那点事

原文:SQL Server 中BIT类型字段增删查改那点事 话说BIT类型字段之前,先看"诡异"的一幕,执行Update成功,但是查询出来的结果依然是1,而不是Update的2 当别人问起我来的时候,本人当时也是处于懵逼状态的,后面联想具体的业务突然想起来这个字段是bit类型的 如果把这个现象跟BIT类型字段连续起来就不觉得奇怪了. 废话不多,直接上代码看结果就好了. 先建一个测试表 CREATE TABLE TestBIT ( Id INT IDENTITY(1,1), BitCol

8天学通MongoDB——第二天 细说增删查改

      看过上一篇,相信大家都会知道如何开启mongodb了,这篇就细说下其中的增删查改,首先当我们用上一篇同样的方式打开mongodb,突然 傻眼了,擦,竟然开启不了,仔细观察"划线区域"的信息,发现db文件夹下有一个类似的"lock file"阻止了mongodb的开启,接下来我们要做的就 是干掉它,之后,开启成功,关于mongodb的管理方式将在后续文章分享.   一: Insert操作      上一篇也说过,文档是采用"K-V"格式

SSH框架网上商城项目第2战之基本增删查改、Service和Action的抽取_java

上一节<SSH框架网上商城项目第1战之整合Struts2.Hibernate4.3和Spring4.2>我们搭建好了Struts2.Hibernate和Spring的开发环境,并成功将它们整合在一起.这节主要完成一些基本的增删改查以及Service.Dao和Action的抽取.1. Service层的抽取        上一节中,我们在service层简单写了save和update方法,这里我们开始完善该部分的代码,然后对service层的代码进行抽取.1.1 完善CategoryServic

MongoDB入门教程之细说MongoDB数据库的增删查改操作_MongoDB

      看过上一篇,相信大家都会知道如何开启mongodb了,这篇就细说下其中的增删查改,首先当我们用上一篇同样的方式打开mongodb,突然 傻眼了,擦,竟然开启不了,仔细观察"划线区域"的信息,发现db文件夹下有一个类似的"lock file"阻止了mongodb的开启,接下来我们要做的就 是干掉它,之后,开启成功,关于mongodb的管理方式将在后续文章分享.  一: Insert操作      上一篇也说过,文档是采用"K-V"格式存