sql >> Database >  >> RDS >> Oracle

Oracle SQL-injectieblok met DBMS_ASSERT

query_string := 'SELECT '||dbms_assert.qualified_sql_name(trim(from_schema||'.'||from_table||'.'||return_field))|| 
                   ' FROM '||dbms_assert.schema_name(trim(from_schema))||
                        '.'||dbms_assert.sql_object_name(trim(from_table))||  
                  ' WHERE '||dbms_assert.qualified_sql_name(from_schema||'.'||from_table||'.'||key_field) || ' = '||key_value;



 EXECUTE IMMEDIATE query_string into return_result;

Uit documenten..

  • ENQUOTE_LITERAL - Tussen aanhalingstekens een letterlijke tekenreeks
  • ENQUOTE_NAME - Omsluit een naam in dubbele q- uotes
  • NOOP - Geeft de waarde terug zonder enige controle
  • QUALIFIED_SQL_NAME - Controleert of de invoertekenreeks een gekwalificeerde SQL-naam is
  • SCHEMA_NAME - Functie Controleert of de invoertekenreeks een bestaande schemanaam is
  • SIMPLE_SQL_NAME - Controleert of de invoerreeks een eenvoudige SQL-naam is
  • SQL_OBJECT_NAME - Controleert of de invoerparameterreeks een gekwalificeerde SQL-identificatie is van een bestaand SQL-object



  1. De beste manieren om SQL DELETE-instructie in een SQL-tabel te gebruiken

  2. Hoe kan ik binaire bestandsgegevens invoegen in een binair SQL-veld met behulp van een eenvoudige insert-instructie?

  3. 2 manieren om te converteren tussen decimaal en hexadecimaal in MySQL

  4. Hoe TO_CHAR() werkt in MariaDB