sql >> Database teknologi >  >> RDS >> PostgreSQL

Korrekt indsættelse af tabelnavn

Ethvert godt bibliotek bør give korrekt escape for SQL-navne, som inkluderer:

  • skemanavn
  • tabelnavn
  • kolonnenavn

For eksempel, inden for pg-promise ville du bruge det sådan her:

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

dvs. du får dit tabelnavn korrekt escaped ved at tilføje variablen med ~ , hvilket igen gør det sikkert mod SQL-injektion.

Herfra en simpel escape for tabelnavne udført af biblioteket:

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

Se også:SQL-navne



  1. Sådan kontrolleres, om en T-SQL UDF er skemabundet (selv når den er krypteret)

  2. Sådan opgraderes fra MariaDB 10.4 til MariaDB 10.5

  3. Sådan vises en dato i tysk format i SQL Server (T-SQL)

  4. ORA-01950:ingen privilegier på tablespace 'USERS'