使用Npgsql参数

时间:2017-01-24 13:35:48

标签: c# postgresql npgsql

如果我只使用纯字符串查询Postgres数据库,则查询会很快发生(~31 ms):

using (var conn = new NpgsqlConnection(DatabaseConnStr))
{
    conn.Open();
    var command = conn.CreateCommand();
    command.CommandText = "select YoutubeID from Videos where YoutubeID='mmHX6dvXL8Y' limit 1;";

    var reader = command.ExecuteReader();
    if (reader.Read())
    {
        Console.WriteLine(reader["YoutubeID"]);
    }

    conn.Close();
}

但是,如果我使用Npgsql参数,就像你应该的那样,查询速度很慢(~11秒):

command.CommandText = "select YoutubeID from Videos where YoutubeID=@ytid limit 1;";
command.Parameters.AddWithValue("@ytid", "mmHX6dvXL8Y");

有谁知道为什么会这样?我认为这些将在大致相同的时间内完成。

0 个答案:

没有答案