首先申明,做这个对比不代表数据库性能,纯属好奇。勿喷,感谢。
测试连续11次插入数据库,每次100万行数据。
测试环境:单机测试,就是所有数据库都装在本机上。操作系统:windows server 2016,使用语言c#,数据库访问技术ado.net,使用工具hpctb。
测试过程:我们取了11个100万行数据的excel电子表格,按顺序调入内存,再分别导入到数据库中。下面是测试结果,按速度快慢排序。
1、postgresql 用时3-4秒 (版本:postgresql-16.2-1-windows-x64,使用技术NpgsqlBinaryImporter )
2、oracle 用时4-6秒 (版本:OracleXE184_Win64,使用技术:OracleBulkCopy)
3、mssql (sql server) 用时6秒(mssql里面有很多数据,其他类型数据库是空的)(版本:2019,使用技术:SqlBulkCopy)
4、sqlite 用时7秒(版本:3,使用技术:SQLiteTransaction批量提交)
5、mysql 用时21秒 (版本:mysql-8.3.0_Win64免安装版,使用技术:LOAD DATA LOCAL INFILE )