批量插入数据到数据库SQL Server2000

《SQL Server 2000实用教程》:数据库管理与应用全面指南 本文还有配套的精品资源,点击获取 简介:《SQL Server 2000实用教程》是一本关于SQL Server 2000数据库管理系统的教学资料,以PPT格式提供易于理解的学习内容。本书深入探讨了SQL Server 2000的关键特性,涵盖安装配置、数据库基础操作、查询优化、事务处理、并发控制、安全性和报表服务等方面,致力于帮助读者掌握SQL Server 2000的核... 阅读详情

private DataTable getTableStruct(string tablename,string conn)
        {
           
            string sql = string.Format(@"Select top 1 {0} from {1} Where 1=0", GetFieldName(), tablename);
            return AccessHelper.GetDataTable(sql, conn).Clone();
           
        }

 

 

 

public void Insert(DataTable  SoureTable,string tablename,string strconn,Label lb)
        {
            //int j=0;
                DataSet firSet = new DataSet();
               
                SqlTransaction sqlOran = null;
                DataTable firTable = getTableStruct(tablename, strconn);
                DataRow firRow;
                firSet.Tables.Add(firTable);
    
                SqlConnection conn = SqlHelper.GetConn();
                conn.Open();
                try
                {
                string selectsql = "Select [DABH],[SFZMHM],[ZJCX],[QFRQ],[SYRQ],[YXQS],[YXQZ],[ZT],[JBR],[LSH],[FZRQ],[GLBM],[LJJF] FROM DriverInfo";
                string sql = "INSERT INTO [DriverInfo]([DABH],[SFZMHM],[ZJCX],[QFRQ],[SYRQ],[YXQS],[YXQZ],[ZT],[JBR],[LSH],[FZRQ],[GLBM],[LJJF])VALUES(@in_DABH,@in_SFZMHM,@in_ZJCX,@in_QFRQ,@in_SYRQ,@in_YXQS,@in_YXQZ,@in_ZT,@in_JBR,@in_LSH,@in_FZRQ,@in_GLBM,@in_LJJF)";
                //string updateSql = "Update DriverInfo SET [SFZMHM]=@in_SFZMHM,[ZJCX]=@in_ZJCX,[QFRQ]=@in_QFRQ,[SYRQ]=@in_SYRQ,[YXQS]=@in_YXQS,[ZT]=@in_ZT,[JBR]=@in_JBR,[LSH]=@in_LSH,[FZRQ]=@in_FZRQ,[GLBM]=@in_GLBM,[LJJF]=@in_LJJF WHERE [DABH]=@in_DABH";
                sqlOran = conn.BeginTransaction(IsolationLevel.ReadCommitted);
                SqlDataAdapter sd = new SqlDataAdapter();
                sd.SelectCommand = new SqlCommand(selectsql, conn, sqlOran);
                sd.InsertCommand = new SqlCommand(sql, conn, sqlOran);
               
                sd.InsertCommand.Parameters.Add("@in_DABH", SqlDbType.Char, 12, "DABH");
                sd.InsertCommand.Parameters.Add("@in_SFZMHM", SqlDbType.Char, 18, "SFZMHM");
                sd.InsertCommand.Parameters.Add("@in_ZJCX", SqlDbType.Char, 3, "ZJCX");
                sd.InsertCommand.Parameters.Add("@in_QFRQ", SqlDbType.DateTime, 8, "QFRQ");
                sd.InsertCommand.Parameters.Add("@in_SYRQ", SqlDbType.DateTime, 8, "SYRQ");
                sd.InsertCommand.Parameters.Add("@in_YXQS", SqlDbType.DateTime, 8, "YXQS");
                sd.InsertCommand.Parameters.Add("@in_YXQZ", SqlDbType.DateTime, 8, "YXQZ");
                sd.InsertCommand.Parameters.Add("@in_ZT", SqlDbType.Char, 2, "ZT");
                sd.InsertCommand.Parameters.Add("@in_JBR", SqlDbType.NVarChar, 50, "JBR");
                sd.InsertCommand.Parameters.Add("@in_LSH", SqlDbType.Char, 12, "LSH");
                sd.InsertCommand.Parameters.Add("@in_FZRQ", SqlDbType.DateTime, 8, "FZRQ");
                sd.InsertCommand.Parameters.Add("@in_GLBM", SqlDbType.Char, 6, "GLBM");
                sd.InsertCommand.Parameters.Add("@in_LJJF", SqlDbType.Int, 4, "LJJF");


                sd.InsertCommand.UpdatedRowSource = UpdateRowSource.None;
                sd.UpdateBatchSize = 0;
                sd.Fill(firSet);
                for (int i = 0; i < SoureTable.Rows.Count; i++)
                {
                    
                    firRow = firTable.NewRow();
                    firRow["DABH"] = SoureTable.Rows[i]["DABH"];
                    firRow["SFZMHM"] = SoureTable.Rows[i]["SFZMHM"];
                    firRow["ZJCX"] = SoureTable.Rows[i]["ZJCX"];
                    firRow["QFRQ"] = SoureTable.Rows[i]["QFRQ"];
                    firRow["SYRQ"] = SoureTable.Rows[i]["SYRQ"];
                    firRow["YXQS"] = SoureTable.Rows[i]["YXQS"];
                    firRow["YXQZ"] = SoureTable.Rows[i]["YXQZ"];
                    firRow["ZT"] = SoureTable.Rows[i]["ZT"];
                    firRow["JBR"] = SoureTable.Rows[i]["JBR"];
                    firRow["LSH"] = SoureTable.Rows[i]["LSH"];
                    firRow["FZRQ"] = SoureTable.Rows[i]["FZRQ"];
                    firRow["GLBM"] = SoureTable.Rows[i]["GLBM"];
                    firRow["LJJF"] = SoureTable.Rows[i]["LJJF"];
                    firSet.Tables[0].Rows.Add(firRow);
                    if (i % 300 == 0)
                    {
                        sd.Update(firSet.Tables[0]);
                        firSet.Tables[0].Clear();
                        lb.Text = (int)((float)(i) / (float)SoureTable.Rows.Count * 100) + "%";
                        lb.Refresh();
                    }
                       lb.Text = (int)((float)(i) / (float)SoureTable.Rows.Count * 100) + "%";
                    lb.Refresh();
                    Application.DoEvents();
                }
                sd.Update(firSet.Tables[0]);
              
                sqlOran.Commit();
                firSet.Tables[0].Clear();
         
                sd.Dispose();
                firSet.Dispose();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "异常信息");
                try
                {
                    sqlOran.Rollback();
                }
                catch (SqlException oe)
                {
                    MessageBox.Show(oe.Message, "回滚异常");
                }
            }
            finally
            {
                conn.Close();
            }

        }

SQL Server 2000 JDBC驱动程序指南 SQL Server 2000是微软推出的一个经典的关系型数据库管理系统,以其强大的数据存储和管理能力,高性能的查询处理,以及高安全性的数据保护功能,成为了企业级应用的宠儿。尽管SQL Server 2000已经推出了很多年,但是由于其稳定性,以及广泛的应用基础,许多企业依然在使用这个版本。在Java环境中,通过使用JDBC(Java Database Connectivity)技术,我们能够轻松地连接并操作SQL Server 2000数据库。 阅读详情

相关推荐

SQL Server 2000简版MSDE数据库v2000修改版实战部署

数据定义语言用于创建、修改和删除数据库对象,如表、视图、索引、存储过程等。在MSDE环境下,由于不支持图形化企业管理器的部分高级功能,熟练运用DDL语句成为数据库结构管理的主要手段。除标准结构外,修改版安装包常增加以下自定义元素::存放安装完成后自动执行的SQL脚本,用于创建用户数据库、导入基础数据或启用特定选项。patches\:集成SP4补丁或其他安全更新,提升安装后的安全性。:提供授权信息与部署指南。

weixin_42476987的博客 779

SQL Server 批量插入数据的两种方法

在SQL Server 中插入一条数据使用Insert语句,但是如果想要批量插入一堆数据的话,循环使用Insert不仅效率低,而且会导致SQL一系统性能问题。下面介绍SQL Server支持的两种批量数据插入方法:Bulk和表值参数(Table-Valued Parameters)。运行下面的脚本,建立测试数据库和表值参数。 view plaincopy to clipbo

canduecho的专栏 2228

告别高延迟!用RV1106+4G模块+libdatachannel搭建低功耗WebRTC监控,保姆级避坑指南

本文详细介绍了如何利用RV1106低功耗处理器、4G模块和libdatachannel库构建嵌入式WebRTC监控系统,解决高延迟问题。通过硬件选型、系统优化和核心代码实现,提供了一套完整的低功耗实时视频传输方案,特别适合智能安防和工业物联网应用。

weixin_42527401的博客 192

SqlServer2000连接和批量插入

1、连接 SqlServer属于比较老的版本,驱动使用sqljdbc4-3.0.jar可以成功连接。 jdbc-url: jdbc:sqlserver://localhost:1433;DatabaseName=test username: sa password: 123456 driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver 2、引入本地jar 本地jar有条件最好上传到maven私

weixin_42143904的博客 448

Chkdsk误删文件?5步教你从FOUND.000文件夹找回重要数据(附工具推荐)

本文详细介绍了当Chkdsk误删文件后,如何从FOUND.000文件夹中找回重要数据的5个步骤。包括理解Chkdsk与FOUND.000的关系、定位与访问FOUND.000文件夹、手动恢复CHK文件的技巧、使用UnCHK工具自动化恢复以及预防数据丢失的关键措施。适用于Windows用户解决数据丢失问题,特别是NTFS文件系统下的文件恢复。

weixin_30687051的博客 384

shopee app算法分析第一篇

shopee app算法分析第一篇分析完整算法大概要好几篇,耐心等待下.国内只会发律师函,牛逼,一个律师套话,一个律师发函,大意了(警惕卡通律师头像),希望law可以保护好你,还是干国外好.

2531

SQL Server 批量插入数据 方法

https://blog.youkuaiyun.com/heyangyi_19940703/article/details/51981731 在SQL Server 中插入一条数据使用Insert语句,但是如果想要批量插入一堆数据的话,循环使用Insert不仅效率低,而且会导致SQL一系统性能问题。下面介绍SQL Server支持的两种批量数据插入方法:Bulk和表值参数(Table-Valued Parameters),高效插入数据。 新建数据库: --Create DataBase ...

zunguitiancheng的专栏 5903

GD32官方资料学习体系(主要包括MCU选型、原理图PCB设计、软件开发入门及用户手册等)

大部分还未更新,先占个坑,日后更新…… 目前国外芯片涨价涨的离谱(就是在说ST),国内最好的替代就是兆易创新出的系列芯片了。但是官方资料繁杂,小白上手不易,因此边入门边记录,也给后来者根据官方资料可以有一个较为完整的学习体系。

Eddie的博客 1万+

一次Insert插入多条数据的方法

我们知道插入一条语句的sql是: insert into report_batch(report_id,batch_id) values (1,2) 那有时可能需要同时插入多条记录:1.第一种办法就是循环来多次insert,将记录全部插入,这个是最简单的方法,但运行效率非常低 2.一次Insert插入多条数据的方法 开始我使用的sql语句如下: insert into rep...

weixin_33912453的博客 1540

基于STM32单片机设计的智能水温控制系统

本项目研究并实现了一种基于STM32单片机的智能水温控制系统。系统以STM32F103RCT6作为主控制器,通过DS18B20温度传感器实时采集水温数据,利用PID控制算法精确调节5V直流防水型70W加热棒的功率输出,确保水温恒定在设定范围内。此外,采用OLED显示屏显示当前水温和预设上限阀值,并集成ESP8266-WiFi模块与自研Android手机APP进行远程通信和控制。用户可通过本地按键或手机APP设置温度阀值,实现实时监控与智能化管理。整个系统设计旨在提高水资源利用效率,提升生活及工业用水环境的舒

8789

【C/C++ 性能优化】提高C++程序的缓存命中率以优化性能

在探讨计算机性能优化的旅程中,我们常常被引导去关注算法的复杂度、代码的优化,或是更高效的数据结构。然而,有一个经常被忽视的角色在幕后默默地影响着程序的运行效率——那就是缓存(Cache)。正如哲学家亨利·戴维·梭罗在《瓦尔登湖》中所说:“细节是造成美丽的源泉”,在软件开发的世界里,对缓存的理解和优化,就是那些决定程序性能优雅与否的细节。

探索C++编程的奥秘,分享深入的技术见解和实践,旨在激发读者创造力与解决问题的思维。 3732

同时向SQL数据库插入多行数据

    SQL Server2000存储过程只支持一次插入一条记录。如果要插入多条记录的话就得重复执行Insert语句,但是利用SQL Server2000的XML支持却可以实现一次向数据库插入多条记录。    程序代码如下:    //创建表    DataTable dt=new DataTable();    SqlConnection sqlConnection=new SqlConnec

IAdapter的专栏 7453

python实现DoIP基本通信(收发报文)

python实现DoIP基本通信(收发报文)

天赐好车的博客 894

用C#同时向SQL Server插入多行数据

SQL Server2000存储过程只支持一次插入一条记录。如果要插入多条记录的话就得重复执Insert语句,但是利用SQL Server2000的XML支持却可以实现一次向数据库插入多条记录。程序代码如下: //创建表 DataTable dt=new DataTable(); SqlConnection sqlConnection=new SqlConnectio...

weixin_30553837的博客 470

【嵌入式硬件】DRV8874电机驱动

1)N沟道H桥电机驱动;2)驱动1个双向有刷直流电机;3)2个单向有刷直流电机;4)4.5V-37V工作电压范围;5)集成电流感测和调节;6)成比例电流输出(IPROPI);7)可选电流调节(IMODE):逐周期或固定关断时间;8)支持1.8、3V、5V逻辑输入;9)集成保护:欠压、电荷泵欠压、过流保护、输出关闭、热关断、自动故障恢复。

qq_39200110的博客 4419

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

C#批量插入Sybase数据库,Anywhere 8

数据库版本是Adaptive Server Anywhere 8 1、添加引用,程序集iAnywhere.Data.AsaClient。这个和SQLServer的System.Data.SqlClient类似,一般方法和用法都差不多。 2、对于批量插入SqlClient提供了BulkCopy方法,很方便。可惜AsaClient里面没有。但和SqlClient一样的是,可以使用adapter....

weixin_30561177的博客 341

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

(转)数据库 'tempdb' 的日志已满的解决方法

数据库 'tempdb' 的日志已满。请备份该数据库的事务日志以释放一些日志空间问题: 一个使用SQLServer2000做后台的数据库在执行百万条纪录级数据导出的时候总报:“数据库 'tempdb' 的日志已满。请备份该数据库的事务日志以释放一些日志空间” 事件查看里面的应用程序日志里也记录了同样的错误。 事情原因: 问题应该是往临时表里大批量的插入数据造成的,有黑客活动的迹象 解决过程...

雨水霂 5662

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

关于SqlServer 2000 多行插入

sqlserver2000多行插入

yufan_xiaowu的博客 2307

sql server中批量插入与更新两种解决方案分享

sql server中批量插入与更新两种解决方案分享

weixin_46020146的博客 94

SQL server 2000 插入数据同时返回自动生成的id

插入记录的同时返回最大值。Id是一条语句是同时的。 INSERT INTO users       (username) VALUES ('aaa')  SELECT SCOPE_IDENTITY() AS [lastid]

chengyue2007的专栏 218

SQL Server——表数据的插入、修改和删除

本篇文章详细介绍了在Server Management Studio(SSMS)中使用操作台和使用SQL代码对表数据进行插入、修改、删除的基本操作。

Gyy1314521的博客 3243

导入和导出数据库sql server2000

一、导出导入SQL Server里某个数据库1.在SQL Server企业管理器里选中要转移的数据库,按鼠标右键,选所有任务->备份数据库。2.备份 选数据库-完全,  目的 备份到 按添加按钮   文件名 在SQL Server服务器硬盘下输入一个自定义的备份数据库文件名(后缀一般是bak)  重写 选重写现

zhoubaiwen的专栏 9527

SQL SERVER 2000使用链接服务器操作ORACLE数据库

SQL SERVER 2000使用链接服务器操作ORACLE数据库一、使用SQL Server企业管理器1.                 打开SQL Server 2000企业管理器2.                 选择“安全性”—>链接服务器—>右键“新建链接服务器”,如图1所示:图1)        在上图1中,链接服务器一栏输入链接服务器名称:为链

swfcsunboy 6582
上一篇: 获取Access用户定义的表名和各表的字段名
下一篇: 加密解密函数
xiaoding133
博客等级 码龄19年 415粉丝 159原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值