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

Правилно вмъкване на име на таблица

Всяка добра библиотека трябва да осигурява правилно екраниране на SQL имена, които включват:

  • име на схема
  • име на таблица
  • име на колона

Например, в рамките на pg-promise ще го използвате по следния начин:

db.query("INSERT INTO $1~ VALUES ($2, $3, $4)", [table_name, value_a, value_b, value_c])

т.е. получавате правилно екранирано името на вашата таблица, като добавите променливата с ~ , което от своя страна го прави защитен от SQL инжекция.

От тук, просто екраниране на имена на таблици, изпълнявани от библиотеката:

return '"' + name.replace(/"/g, '""') + '"';

Вижте също: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. динамична заявка postgres

  2. Генерирана стойност в Postgres

  3. Как да потискам INFO съобщенията, когато изпълнявате psql скриптове

  4. Променете типа на колоната и задайте не нула

  5. Как да коригирам грешките при несъответствие на версията pg_dump?