关闭

DataAdapter 批量插入、更新、删除数据库!

标签: sql serverVisualStudio删除插入更新
2117人阅读 评论(0) 收藏 举报
分类:
程序实现了,批量插入,更新,删除;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;

namespace DXApplication3
{
    public partial class Form1 : DevExpress.XtraEditors.XtraForm
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            SaveChange();
            getall();
        }
        string Add = string.Format(@"server=192.168.60.18;database=浙江先芯科技;uid=sa;pwd=lierda");
        DataSet DS=new DataSet();
        private  void  SaveChange()
        {
            
            SqlConnection connection = new SqlConnection(Add);
            string Select = string.Format(@"SELECT MPN],品牌],[结存数量],[货位号],[ID] FROM [dbo].[备品]");//ID为主键
            string Insert = string.Format(@"Insert into [dbo].[备品](MPN,品牌,结存数量,货位号) values(@MPN,@品牌,@结存数量,@货位号)");//不需要主键
            string Update = string.Format(@"Update [dbo].[备品] SET MPN=@MPN,品牌=@品牌,结存数量=@结存数量,货位号=@货位号 where ID=@OLDID");
            string Delete = string.Format(@"Delete From [dbo].[备品] where ID=@ID");
            SqlDataAdapter adapter=new SqlDataAdapter();
            SqlCommand command = new SqlCommand(Select,connection);
            adapter.SelectCommand = command;

            command=new SqlCommand(Insert,connection);//插入不需要主键
            command.Parameters.Add("@MPN", SqlDbType.NVarChar, 15, "MPN");
            command.Parameters.Add("@品牌", SqlDbType.NVarChar, 15, "品牌");
            command.Parameters.Add("@结存数量", SqlDbType.NVarChar, 15, "结存数量");
            command.Parameters.Add("@货位号", SqlDbType.NVarChar, 15, "货位号");
            adapter.InsertCommand = command;

            command = new SqlCommand(Update,connection);//更新需要主键
            command.Parameters.Add("@MPN", SqlDbType.NVarChar, 15, "MPN");
            command.Parameters.Add("@品牌", SqlDbType.NVarChar, 15, "品牌");
            command.Parameters.Add("@结存数量", SqlDbType.NVarChar, 15, "结存数量");
            command.Parameters.Add("@货位号", SqlDbType.NVarChar, 15, "货位号");
            command.Parameters.Add("@ID", SqlDbType.Int, 15, "ID");
            SqlParameter parameter = command.Parameters.Add("@OLDID",SqlDbType.NVarChar,5,"ID");
            parameter.SourceVersion = DataRowVersion.Original;
            adapter.UpdateCommand = command;

            command = new SqlCommand(Delete, connection);//删除需要主键
            parameter = command.Parameters.Add("@ID", SqlDbType.NVarChar, 15, "ID");
            parameter.SourceVersion = DataRowVersion.Original;
            adapter.DeleteCommand = command;
            adapter.Update(DS.Tables[0]);
            DS.AcceptChanges();//只提交更改的了的内容
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            getall();

        }
        private void getall()
        {
            try
            {
                SqlConnection connection = new SqlConnection(Add);
                string Select = string.Format(@"SELECT MPN,品牌,结存数量,货位号,ID FROM [dbo].[备品]");
                SqlDataAdapter adapter = new SqlDataAdapter(Select, connection);
                adapter.Fill(DS);
                dataGridView1.DataSource = DS.Tables[0];
            }
            catch (Exception err)
            {
                MessageBox.Show(err.Message);
            }
        }
    }
}
实际效果如下图,单击button1。可以实现保存操作!表格最后一行为新增行!<img alt="安静" src="http://static.blog.csdn.net/xheditor/xheditor_emot/default/quiet.gif" />

0
0
查看评论
发表评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场

C#之数据适配器:DataAdapter对象

在ADO.NET中,能够用于执行命令操作的不但有有Command对象,还有DataAdapter对象,DataAdapter对象执行查询的返回数据将存储在DataSet对象中。        Data...
  • erlian1992
  • erlian1992
  • 2015-05-25 20:16
  • 1456

Hibernate 数据的批量插入、更新和删除

Hibernate完全以面向对象的方式来操作数据库,当程序里以面向对象的方式操作持久化对象时,将被自动转换为对数据库的操作。例如调用Session的delete()方法来删除持久化对象,Hiberna...
  • zmx729618
  • zmx729618
  • 2016-05-18 11:37
  • 4000

.Net中DataAdapter批量插入和更新数据总结

前段时间一直在忙着项目上线,在做项目的同时遇到了一些之前不曾碰到的问题,因为没有经验,只能从网上找一些相关的解决方案,但是网上提供的资料实在是太杂,有的根本不能用,耗时又耗力。   我希望把我这...
  • u013169011
  • u013169011
  • 2013-12-16 00:43
  • 432

DataAdapter执行批量更新的实例代码

分享下DataAdapter执行批量更新的实例代码。 在以前版本的 ADO.NET 中,使用 DataSet 中的更改来更新数据库时,DataAdapter 的 Update 方法每次更新数据库...
  • vip_linux
  • vip_linux
  • 2013-07-28 06:14
  • 474

数据集和数据库的同步-DataAdapter的使用--vs2003

  • 2009-01-14 11:13
  • 9.93MB
  • 下载

数据集和数据库的同步-DataAdapter的使用

DataBase和DataSet同步数据 数据适配器概述 l         DataAdapter 连接到数据库以填充DataSet 的对象。然后,它又连接回数据库,根据DataSet 保留数据时所...
  • mikemiller2
  • mikemiller2
  • 2016-04-16 16:12
  • 985

数据集和数据库的同步-DataAdapter的使用-教程

  • 2007-06-07 13:19
  • 184KB
  • 下载

数据集和数据库的同步-DataAdapter的使用

  • 2007-09-06 12:51
  • 8.60MB
  • 下载

c#中数据库对象的介绍:dataset,dataadapter,connection,command,datareader

c#数据库对象的简介。
  • emoheithree
  • emoheithree
  • 2016-05-21 09:44
  • 354

jdbc 批量操作数据库(插入、更新)

package jdbc.json; import java.sql.Connection; import java.sql.DriverManager; import java.sql.Prepa...
  • shuzhupeng
  • shuzhupeng
  • 2016-07-04 15:39
  • 5050
    个人资料
    • 访问:65144次
    • 积分:1020
    • 等级:
    • 排名:千里之外
    • 原创:36篇
    • 转载:1篇
    • 译文:0篇
    • 评论:14条
    最新评论