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

Мигриране от MySQL към PostgreSQL

Стив, трябваше да мигрирам старото си приложение обратното, това е PgSQL->MySQL. Трябва да кажа, че трябва да се смятате за късметлия;-) Често срещани проблеми са:

  • SQL всъщност е доста близък до езиковия стандарт, така че може да страдате от диалекта на MySQL, който вече познавате
  • MySQL тихо съкращава varchars, които надвишават максималната дължина, докато Pg се оплаква – бързото решение е тези колони да са като „текст“ вместо „varchar“ и да се използват тригери за съкращаване на дълги редове
  • двойни кавички се използват вместо обратни апострофи
  • булевите полета се сравняват с помощта на оператори IS и IS NOT, но съвместим с MySQL INT(1) със =и <> все още е възможен
  • няма ЗАМЕНА, използвайте комбинацията ИЗТРИВАНЕ/ВМЕСВАНЕ
  • Pg е доста стриктно за налагане на целостта на външните ключове, така че не забравяйте да използвате ON DELETE CASCADE при препратки
  • ако използвате PHP с PDO, не забравяйте да предадете параметър на метода lastInsertId() – това трябва да бъде име на последователността, което обикновено се създава по следния начин:[tablename]_[primarykeyname]_seq

Надявам се това да помогне поне малко. Забавлявайте се много да играете с Postgres!



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. PostgreSQL конвенции за именуване

  2. Гарантирано ли е запазване на реда в подзаявка?

  3. Как да съпоставя цял ден с поле за дата и час?

  4. Как Log() работи в PostgreSQL

  5. Как да намерите името на ограничение в PostgreSQL