建议你直接用Jdbc好了 , 用batch,这样是最快的 。
如何实现大数据量数据库的历史数据归档
打开数据库
con.Open();
读取数据
OdbcDataReader reader = cmd.ExecuteReader();
把数据加载到临时表
dt.Load(reader);
在使用完毕之后 , 一定要关闭 , 要不然会出问题
reader.Close();
这个问题是这样的:
首先你要明确你的插入是正常业务需求么?如果是,那么只能接受这样的数据插入量 。
其次你说数据库存不下了 那么你可以让你的数据库上限变大 这个你可以在数据库里面设置的 里面有个数据库文件属性 maxsize
最后有个方法可以使用,如果你的历史数据不会对目前业务造成很大影响 可以考虑归档处理 定时将不用的数据移入历史表 或者另外一个数据库 。
注意平时对数据库的维护 定期整理索引碎片
时间维度分区表,然后定情按照规则将属于历史的分区数据迁移到,历史库上,写个存储自动维护分区表 。
如何用java jdbc 向数据库表插入大数据量
一次性插入大量数据 , 只能使用循环,
如:游标,while 循环语句
下面介绍While 循环插入数据,
SQL 代码如下:
IF OBJECT_ID('dbo.Nums') IS NOT NULL
DROP TABLE dbo.Nums;
GO
CREATE TABLE dbo.Nums(n INT NOT NULL PRIMARY KEY);
DECLARE @max AS INT, @rc AS INT;
SET @max = 5000000;
SET @rc = 1;
INSERT INTO Nums VALUES(1);
WHILE @rc * 2 = @max
BEGIN
INSERT INTO dbo.Nums SELECT n + @rc FROM dbo.Nums;
SET @rc = @rc * 2;
END
INSERT INTO dbo.Nums SELECT n + @rc FROM dbo.Nums WHERE n + @rc = @max;
--以上函数取自Inside SQL Server 2005: T-SQL Query一书 。
INSERT dbo.Sample SELECT n, RAND(CAST(NEWID() AS BINARY(16))) FROM Nums
php 怎么解决 大数据量 插入数据库
ini_set('max_execution_time','0');
$pdo = new PDO("mysql:host=localhost;dbname=test","root","123456");
$sql = "insert into test(name,age,state,created_time) values";
for($i=0; $i100000; $i++){
$sql .="('zhangsan',21,1,'2015-09-17')";
}
$sql = substr($sql,0,strlen($sql)-1);
var_dump($sql);
if($pdo - exec($sql)){
echo "插入成功!";
echo $pdo - lastinsertid();
}
试试吧 。10万条1分钟多 , 我觉得还行
请教如何通过WCF传输大数据量数据
就是直接把DataSet 类型作为参数直接传递给服务端
WCF默认支持这么做,直接传Datatable不行 。
你看一下 “服务引用设置”中你选的 *** 类型是什么,我选的是System.Array
字典 *** 类型是默认第一项 System.Collections.Generic.Dictionary
又是一个把自己架在火上烤的需求啊 ,
如果不考虑传输因素,可以调整wcf配置,提升传递的容量 , 如果是对象传递可能还要调整对象层次的深度
【php如何优化数据库连接 php连接数据库mysql配置】php如何优化数据库连接的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于php连接数据库mysql配置、php如何优化数据库连接的信息别忘了在本站进行查找喔 。
推荐阅读
- saphanatools的简单介绍
- 电商如何去起步,电商怎样起步
- 电商如何绕过监管售假,如何规避电商风险
- 主播怎么打开变声器直播,主播怎么打开变声器直播唱歌
- vb.net读取股票 vb读取数据
- java的伪代码怎么写,java伪代码是什么意思
- 不用密码的路由器怎么登陆,不用密码的路由器怎么登陆网页
- go语言ctrlb Go语言中文网
- 启动flutter总是报错,flutter run没反应