PostgreSQL
 sql >> база данни >  >> RDS >> PostgreSQL

C# SqlConnection Изключение:Ключовата дума не се поддържа „Порт“

SqlConnection е специфичен за SQL Server. Ще трябва да използвате NpgsqlConnection за да използвате връзка с Postgres, което означава, че ще ви трябват препратките към сглобките на Postgres.

Но възнамерявате да преминете към друг доставчик в бъдеще, така че за да сведете до минимум въздействието от това преместване, опитайте да използвате общите базови класове във вашия код. Например:

var connString = "Host=myserver;Username=mylogin;Password=mypass;Database=mydatabase";
using (DbConnection conn = new NpgsqlConnection(connString))
{
    conn.Open()
    using (DbCommand command = conn.CreateCommand())
    {
        // etc
    }
}

По този начин, когато сменяте, всичко, което трябва да направите, е да замените NpgsqlConnection във вашето решение с SqlConnection . Ако искате да използвате DbProviderFactory (там има добър пример), тогава можете, но по същество си спестявате само това едно търсене/замяна, премахване на препратките и пускане на нова версия на кода.

Бих предложил поставяне низът за връзка в конфигурационния файл вместо код (както е показано във въпроса), за да избегнете наличието му на множество места и да улесните промяната без повторно изграждане.

И, разбира се, може да се наложи да коригирате всички специфични за изпълнението детайли в самия SQL.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Генерирайте стойности по подразбиране в CTE UPSERT с помощта на PostgreSQL 9.3

  2. Как да съхранявате изображение в база данни на postgres с помощта на хибернация

  3. заявка с подзаявка за броене, вътрешно присъединяване и група

  4. Django makemigrations Не са открити промени в приложението

  5. Postgres pg_dump изхвърля базата данни в различен ред всеки път