C#的winform怎样能在1秒内向数据库中添加10000条数据?
发布网友
发布时间:2022-04-07 17:41
我来回答
共8个回答
热心网友
时间:2022-04-07 19:10
如果是插入重复的10000倒还是有办法的
下面就是一段在SQL SERVER上可以执行通过的代码,
往表中插入16000行重复的数据,使用笔记本执行
也不过耗时0.3秒而已。
祝你好运!
假定表结构如下:
CREATE TABLE [t] (
[a] [int] NULL ,
[b] [float] NULL
) ON [PRIMARY]
declare @s datetime, @t datetime
set @s=GETDATE()
set nocount on
insert into t values(1,2)
declare @a int
set @a=0
while @a<14
begin
insert into t
select*from t
set @a=@a+1
end
set @t=GETDATE();
--显示耗费的时间
print DATEDIFF(ms,@s,@t)
热心网友
时间:2022-04-07 20:28
楼上的说法都没错。
目前技术条件下每秒一万条的确是多了点,即使只是每秒一千条,对软件与硬件的要求都很高。
首先,C#或者说.NET类语言效率很低,想达到高速度,C++或C或汇编比较现实;
其次,程序肯定要多线程,单线程绝对忙不过来。
上面是软件方面要求。
硬件方面:
硬盘RAID是必不可少了,别看SATA总线理论150MB/S,那是总线传输率,速度真正的瓶颈在硬盘内部,因此垂直记录技术才这么热。
多处理器;单处理器处理速度肯定不行,多线程是软件支持,多处理器就是硬件支持了。
不管怎么说,每秒一万次的确是多了点,像百度这样的门户,并发访问量都不见得到得了每秒一万,更何况查询和写入根本不是一回事,像这样的网站,估计都是“超高效索引+超大数据缓存+刀片服务器+磁盘阵列”,家用机上没可能的。
热心网友
时间:2022-04-07 22:03
我插入1W条都要2分钟,你想提高速度的话,建议用存储过程,这样速度肯定会快些,效率肯定会高些,不信自己试,
C#做不到1秒钟,其它语言应该可以
热心网友
时间:2022-04-07 23:54
Winform应该只是一个壳子,添加的操作还是后台交给操作系统(或者CLR)执行的,我觉得瓶颈也在处理能力上吧?
热心网友
时间:2022-04-08 02:02
这可不光是程序能完成的 需要硬件的支持
热心网友
时间:2022-04-08 04:27
升级硬件,
热心网友
时间:2022-04-08 07:08
楼主想像力很丰富啊,可惜现在不是2046年
热心网友
时间:2022-04-08 10:06
等你的硬盘有100万转了就行了
C#的winform怎样能在1秒内向数据库中添加10000条数据?
如果是插入重复的10000倒还是有办法的 下面就是一段在SQL SERVER上可以执行通过的代码,往表中插入16000行重复的数据,使用笔记本执行 也不过耗时0.3秒而已。祝你好运!假定表结构如下:CREATE TABLE [t] ([a] [int] NULL ,[b] [float] NULL ) ON [PRIMARY]declare @s datetime, @t datetime ...
C#winform如何通过Datagridview向数据库增加数据
tring constr = "server=.;database=School;uid=123;pwd=123;";SqlConnection conn = new SqlConnection(constr);//创建数据库连接conn.Open();//打开连接//往表 Tittle里插入指定内容。string str = string.Format("insert into Tittle (name,sex,age,birthday) values ('{0}','{1}','{2...
c# winform 如何批量更新数据库数据
在处理百万级的数据方面,也不一定需要存储过程,用C#一样可以;ADO.NET提供了常用对象即可解决,就是数据适配器,在处理海量数据的时候,表现还是可圈可点的。先指定参数,接着一个循环,例: for (int i = 0; i < 100; i++){ dataset.Tables[0].Rows[i].BeginEdit();dataset.Tables[0...
c# winform 如何批量更新数据库数据
在处理百万级的数据方面,也不一定需要存储过程,用C#一样可以;ADO.NET提供了常用对象即可解决,就是数据适配器,在处理海量数据的时候,表现还是可圈可点的。先指定参数,接着一个循环,例: for (int i = 0; i < 100; i++){ dataset.Tables[0].Rows[i].BeginEdit();dataset.Tables[0...
在C#的winform中怎么直接在DataGridView里面修改,添加数据.(添加,修...
之前必须创建一个数据适配器(SqlDataAdapter)即SqlDataAdapter adp = new SqlDataAdapter();这样,adp就具备了添加,修改,删除的功能,再让adp影响数据库,当它具备了以上的这些功能,就可以让数据集所做的修改影响数据库的改变 adp.Update(DataSet对象名, "数据集里的表名");...
C# winform 插入多条数据到oracle数据库!!!
= new DataTable();输入的数据放入DataTable里 dataGridView1.DataSource = dt;//将数据放入datagridview 每次点击提交时,读取datagridview数据存入数据库即可 //循环行 for (int i = 0;i < dataGridView1.Rows.Count - 1;i++){ str += dataGridView1.Rows[i].Cells["列1"].Value;//列...
C# WinForm中,如何清空ListBox并重新从数据库载入数据?
调试后你会发现,你的dataset数据增加了。那个ds的变量就是DataSet对象。一看就知道是在loadinfo()函数外面声明的了。作为全局变量,每次刷新都会运行这个函数,那么ds也每次都增加。你应该把ds声明在loadinfo里面。这样就每次是声明新的dataset,数据也就跟数据库里面的一样了。
C# winform 插入多条数据到oracle数据库!!!
C#插入多条数据到oracle数据库:实例代码:using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;using System.IO;using System.Data.OleDb;using System.Data;using System.Data.OracleClient;using System.Text;namespace ExportInfo{ public partial class Form1 : Fo...
winform下的程序,可以查询数据库并且显示在datagridview上,但是无法完 ...
insert into TCS(Name,Score) values ('" + name + "','" + score + "')。这个需要你知道Score是什么类型的,如果是数字类型的,需要insert into TCS(Name,Score) values ('" + name + "'," + score + ")去掉单引号的,这个你在自己安装的数据库下面试一下撒。
请教,c#winform ListBox新增和修改数据
ListBox是个选项卡组,他的内容需要绑定ListBox.Items 即一条一条的加入进去,比如 Mylistbox.Items.Add("1");Mylistbox.Items.Add("2");如果你指的是修改新增ListBox显示的数据,那么直接在后台重新加入一条新数据,或者修改指定的行即可,如 Mylistbox.Items[1] = "更改后的2";即可。