NpgsqlDataAdapter上的NpgsqlCommand

问题描述 投票:0回答:1

为什么要在NpgsqlDataAdapter上使用NpgsqlCommand?

NpgsqlCommand的用法,使用阅读器

var _command = new NpgsqlCommand();
var _reader = _command.ExecuteReader();
...
while (_reader.Read())
{
...

NpgsqlDataAdapter的用法,使用数据集

IDbDataAdapter dbDataAdapter = new NpgsqlDataAdapter();
dbDataAdapter.SelectCommand = selectCommand;
...
dbDataAdapter.Fill (dataSet);

Basic的用法未提及DataAdapter。NpgsqlCommand和阅读器是否更有效,应该是首选?

.net postgresql npgsql
1个回答
0
投票

NpgsqlCommand是更底层的API-您负责提供原始SQL,还负责通过NpgsqlDataReader读取结果集。 DataAdapter / DataTable是位于其上方的一层;它有一些缺点(例如,结果集缓存在内存中),通常被认为有些过时/遗留。如果您要发送的是SQL并回读结果,请考虑使用NpgsqlCommand,除非有充分的理由使用NpgsqlAdapter。

© www.soinside.com 2019 - 2024. All rights reserved.