private void button1_Click(object sender, EventArgs e){//Sqlite使用事务批量操作 极大的提高速度DateTime starttime =DateTime.Now;using (SQLiteConnection con = new SQLiteConnection(connStr)){con.Open();DbTransaction trans = con.BeginTransaction();//开始事务 SQLiteCommand cmd = new SQLiteCommand(con);try{cmd.CommandText = "INSERTINTO MyTable(username,useraddr,userage) VALUES(@a,@b,@c)";for (int n ...
//需求:因为项目刚上传,没有票数,为了表现出一定的人气,须要在一開始把各项目的票数赋一个值 ,但每一个项目不能一样,否则easy看出问题,呵呵 。DECLARE @Id varchar(50)
DECLARE My_Cursor CURSOR --定义游标
FOR (SELECT Id FROM dbo.kinpanAwardProject where session=9) --查出须要的集合放到游标中
OPEN My_Cursor; --打开游标
FETCH NEXT FROM My_Cursor INTO @Id; --读取第一行数据(将Id放到@Id变量中)
WHILE @@FETCH...
前台: <x:FileUpload ID="btnUpField" runat="server" Label="上传Excel批量导入用户信息" ShowLabel="true" ></x:FileUpload><x:Button ID="Button1" Text="上传" runat="server" Icon="SystemSaveNew"OnClick="btnUpField_Click"></x:Button>后台:protectedvoid btnUpField_Click(object sender, EventArgs e){//将需要导入的文件上传到服务器 string filePath = "";string fileExtName = "";string myFileName;//用不到,但...
DECLARE @tablename VARCHAR(30),@sql VARCHAR(500)DECLARE
cur_delete_table CURSOR READ_ONLY FORWARD_ONLY FORSELECT name FROM
sysobjects WHERE name LIKE ‘PUB%‘ AND
type=‘U‘OPEN cur_delete_tableFETCH NEXT FROM cur_delete_table
INTO @tablenameWHILE @@FETCH_STATUS = 0BEGINSELECT @sql=‘delete
from ‘+@tablenameEXEC (@sql)FETCH NEXT FROM cur_delete_table INTO
@tablenameENDCLOSE cur_delete_tabl...
首先新建一个WPF的项目,名为ExcelToServerDemo 到Nuget去安装NPOI的Nuget包,点击安装即可,会自动引用项目。 新建一个Student的表格,有名字,年龄,性别,地址,以及民族,以及出生日期 查看Sudent 表格的数据为空 新建个Excel表格数据如下,这里的表头我用了英文,不影响。 再来设计一下WPF的界面,我们就用一个按钮和一个按钮事件处理就好了,如下图 后台代码如下 var datatble = new DataTable();var connectionsti...
SQL语句实现SQL Server 2000及Sql Server 2005日志收缩(批量) 代码如下:DECLARE @name VARCHAR(25) DECLARE @SQL VARCHAR(1000) DECLARE @logid INT DECLARE sysdatabase_name CURSOR FOR SELECT name FROM master.dbo.sysdatabases OPEN sysdatabase_name FETCH NEXT FROM sysdatabase_name INTO @name WHILE @@FETCH_STATUS = 0 BEGIN IF ( @name NOT IN (xxx)) --不需要进行日志收缩的数据库名 BEGIN SET @SQL = DECLARE @logid...
你是否想知道为什么事务日志文件会变得越来越大?事务日志有时候甚至会比你的实际数据库文件还要大,尤其是在应用数据仓库的情况下。为什么会发生这种情况呢?如何控制其大小?数据库恢复模型如何控制事务日志增长?在本系列文章中,我们就将一一给出解答。
批量日志恢复模式
批量日志恢复模式与完整恢复模式类似,都预期会有大批量的数据修改操作(例如,创建索引,SELECT INTO,INSERT SELECT,BCP,BULKINSERT),在这种情况下可以...
代码如下:DECLARE @name VARCHAR(25) DECLARE @SQL VARCHAR(1000) DECLARE @logid INT DECLARE sysdatabase_name CURSOR FOR SELECT name FROM master.dbo.sysdatabases OPEN sysdatabase_name FETCH NEXT FROM sysdatabase_name INTO @name WHILE @@FETCH_STATUS = 0 BEGIN IF ( @name NOT IN (xxx)) --不需要进行日志收缩的数据库名 BEGIN SET @SQL = DECLARE @logid INT USE + @name+ SELECT @logid = fileid FROM sysfiles WH...
mssql的每个varchar、text字段都被自动插入一段js代码,即使删除这段代码,如果没有从源头上解决,几分钟后,js代码就又会自动插入数据库。 经过飘易的观察,这很有可能是程序自动执行的,黑客先从搜索引擎google、百度等搜索存在漏洞的采用asp+mssql设计的网站,然后采用小明子这样的注入扫描工具,扫描整个网站,一旦发现有sql注入的漏洞或者上传漏洞,黑客就通过各种手段,上传自己的大马,如海阳木马;然后,黑客就把这个网站纳...
若只是需要大批量插入数据使用bcp是最好的,若同时需要插入、删除、更新建议使用SqlDataAdapter我测试过有很高的效率,一般情况下这两种就满足需求了 bcp方式 代码如下:/// <summary> /// 大批量插入数据(2000每批次) /// 已采用整体事物控制 /// </summary> /// <param name="connString">数据库链接字符串</param> /// <param name="tableName">数据库服务器上目标表名</param> /// <param name="dt">含有和目标数据库表结构完全...
这种方法操作繁琐,而且一般不是很懂数据库的人很难操作。于萌发了要写一个小程序的念头,经过两天时间的折腾这个小软件终于和各位见面了,希望各位童鞋多给点意见。说了这么些之后还是先上界面吧,^..^ 现在就来说说这个小程序的开发思路吧。第一步:通过 sp_helpdb系统存储过程得到SqlServer中的所有数据库名称。 代码如下:#region 测试数据库连接,并显示数据库列表 /// <summary> /// 测试数据库连接,并显示数据库列表 /// </...
//Sqlite使用事务批量操作 极大的提高速度DateTime starttime = DateTime.Now;using (SQLiteConnection con = new SQLiteConnection(connStr)){con.Open();DbTransaction trans = con.BeginTransaction();//开始事务 SQLiteCommand cmd = new SQLiteCommand(con);try{cmd.CommandText = "INSERT INTO MyTable(username,useraddr,userage) VALUES(@a,@b,@c)";for (int n = 0; n < 100000; n++){cmd.Parameters.Add(new SQLitePa...
第一种方法:Insert部分数据还ok 批量数据性能问题。第二种方法:sqlbulkcopy 方法 主要思想 是在客户端将数据缓存到datatable里面,然后用sqlbulkcopy 一次性将数据插入到数据库表中方法如下:
System.Data.SqlClient.SqlBulkCopy bcp = new System.Data.SqlClient.SqlBulkCopy(connectionString);
//指定目标数据库的表名
bcp.DestinationTableName = "resulttable";
//建立数据...
代码如下:/// <summary> /// 大批量插入数据(2000每批次) /// 已采用整体事物控制 /// </summary> /// <param name="connString">数据库链接字符串</param> /// <param name="tableName">数据库服务器上目标表名</param> /// <param name="dt">含有和目标数据库表结构完全一致(所包含的字段名完全一致即可)的DataTable</param> public static void BulkCopy(string connString, string tableName, DataTable dt) { using (SqlConne...
update dt_article_attribute_value set end_time = dateadd(mi,30,start_time)
create table tb(dt datetime)
insert into tb values(‘2006-10-10‘)
insert into tb values(‘2006-10-11‘)
insert into tb values(‘2006-10-12‘)
insert into tb values(‘2006-10-13‘)
insert into tb values(‘2006-10-14‘)
insert into tb values(‘2006-10-15‘)
go
--search
select dateadd(yy,1,dt) dt from tb
--update
updat...