[ADO.NET]写入数据
关键字:.NET,SQL SERVER,SQLBULKCOPY
插入一条数据的操作(SqlCmd)。
public void InsertOneIntoSourceDB()
{
if (DBConnection(GetConnectionString()))
{
string sqlinsert = null;
SqlTransaction tran = con.BeginTransaction();
SqlCommand cmd = con.CreateCommand();
cmd.Transaction = tran;
try
{
sqlinsert = "insert into MeterMeasureHistories values(@meterMeasureID,@value,@quality,@timestamp)";
cmd.CommandText = sqlinsert;
SqlParameter[] parameters = new SqlParameter[]
{
new SqlParameter("@meterMeasureID",SqlDbType.Int){Value = },
new SqlParameter("@value",SqlDbType.Float){Value = },
new SqlParameter("@quality",SqlDbType.NVarChar){Value = "good"},
new SqlParameter("@timestamp",SqlDbType.DateTime){Value = DateTime.Now}
};
cmd.Parameters.AddRange(parameters);
cmd.ExecuteNonQuery();
tran.Commit();
}
catch (Exception e)
{
throw e;
}
DBShutdown();
}
}
插入多条数据,利用了SqlBulkCopy、DataTable、DataRow,效率比循环高(SqlDataAdapter)。
public void InsertIntoSourceDB()
{
if (DBConnection(GetConnectionString()))
{
try
{
DataTable dt = new DataTable();
dt.Columns.AddRange(new DataColumn[]
{
new DataColumn("MeterMeasureHistoryID"),
new DataColumn("MeterMeasureID"),
new DataColumn("Value"),
new DataColumn("Quality"),
new DataColumn("Timestamp")
});
foreach (var item in meterMeasureHistories)
{
DataRow dr = dt.NewRow();
dr[] = item.MeterMeasureID;
dr[] = item.Value;
dr[] = item.Quality;
dr[] = item.Timestamp;
dt.Rows.Add(dr);
}
SqlBulkCopy bulkcopy = new SqlBulkCopy(con);
bulkcopy.DestinationTableName = "dbo.MeterMeasureHistories";
bulkcopy.WriteToServer(dt);
}
catch (Exception e)
{
throw e;
}
DBShutdown();
}
}
[ADO.NET]写入数据的更多相关文章
- spark读取hdfs上的文件和写入数据到hdfs上面
def main(args: Array[String]): Unit = { val conf = new SparkConf() conf.set("spark.master" ...
- java向Excel文件写入数据
/*使用之前要记得导入第三的jar包这个是我之前使用的时候那别人的东西自己修改了一下 还没来得及好好地封装一下还望见谅,注释我感觉写的挺清楚的就在不进行解释代码了*/package com.zzp.E ...
- NPOI操作excel之写入数据到excel表
在上一篇<NPOI操作excel之读取excel数据>我们把excel数据写入了datatable中,本篇就讲如何把datatable数据写入excel中. using System; u ...
- Python中,添加写入数据到已经存在的Excel的xls文件,即打开excel文件,写入新数据
背景 Python中,想要打开已经存在的excel的xls文件,然后在最后新的一行的数据. 折腾过程 1.找到了参考资料: writing to existing workbook using xlw ...
- java io流 创建文件、写入数据、设置输出位置
java io流 创建文件 写入数据 改变system.out.print的输出位置 //创建文件 //写入数据 //改变system.out.print的输出位置 import java.io.*; ...
- 用多态来实现U盘,Mp3,移动硬盘和电脑的对接,读取写入数据。
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...
- PHP文件操作 之往一个文件写入数据
//打开一个文件 $f = fopen($filename,'wb'); $filename:打开一个文件,不存在则自动创建,如果不能创建,说明指定的文件目录有错误 wb:写入的方式 ---- 覆盖原 ...
- 转载-python学习笔记之输入输出功能读取和写入数据
读取.写入和 Python 在 “探索 Python” 系列以前的文章中,学习了基本的 Python 数据类型和一些容器数据类型,例如tuple.string 和 list.其他文章讨论了 Pytho ...
- 向post请求中写入数据,最终保存在了HttpWebRequest.Params中
一.向post请求中写入数据,最终保存在了HttpWebRequest.Params中: 1)如果存入的是IDictionary类型的字符串变量,如:“username=administrator”, ...
随机推荐
- android模拟器访问localhost或127.0.0.1报错
在一般的Java Web程序开发中,我们通常使用localhost或者127.0.0.1来访问本机的Web服务,但是如果我们在Android模拟器中也采用同样的地址来访问,Android模拟器将无法正 ...
- CMD-NET命令详解(转载)
本文转自http://www.cnblogs.com/chenjq0717/archive/2010/05/09/1730934.html net命令大全,net命令用法,net网络命令,net命令使 ...
- linux ssh 配置 添加用户 另外一种方法
[root@localhost ~]# vi /etc/pam.d/sshd #%PAM-1.0auth required pam_stack.so service=system- ...
- 有关AES加密的问题
遇到一个项目,需要用AES加密密码,android的已经写好了,java源码: private static final String AES_OPTIONS = "AES/ECB/PKCS ...
- mysql select 报错
代码片段: sql_url = "select * from webpage where url = '%s'" % b try: cursor.execute(sql_url) ...
- Files to be needed by importing the android application with eclipse
1. AndroidManifest.xml 2. project.properties # This file is automatically generated by Android Tools ...
- 详解Android Handler的使用
我们进行Android开发时,Handler可以说是使用非常频繁的一个概念,它的用处不言而喻.本文就详细介绍Handler的基本概念和用法. Handler的基本概念 Handler主 ...
- android学习日记15--WebView(网络视图)
一.WebView 1.简述 WebView(网络视图)内置WebKit引擎,能加载显示网页,还支持JS,并且能够在Android平台使用AJAXWebView可以在布局中声明,也可以在Activit ...
- XAMPP环境下用phpStorm+XDebug进行断点调试的配置
具体过程: 服务器端(本地调试的情况下就是在本机)安装好XAMPP,停止apache服务(注意,如果直接退出XAMPP,是不会停止apache的) 在安装目录下找到php.ini,类似于D:\xamp ...
- [Effective C++ --017]以独立语句将newed对象置入智能指针
这一节也比较简单,先假设我们有如下的函数: int foo(); void memFoo(shared_ptr<T> pw, int foo); 现在假设我们要调用memFoo函数: me ...