Skip to content
Home » Interview Preparation » Page 2

Interview Preparation

SQL Injection: Describe what it is with examples

A SQL Injection is a code injection technique that attackers use to exploit vulnerabilities in a web application’s database layer. This vulnerability is often present in a web application when user input is incorrectly filtered for string literals that are used in SQL statements, or when user input is not strongly typed and can unexpectedly execute SQL commands.

The technique allows an attacker to manipulate SQL queries that an application makes to its database, enabling the attacker to view, alter, or delete data that they are not normally authorized to access.

What is “Configuration Drift”?

Definition of Configuration Drift Configuration drift is a phenomenon occurring when production environments gradually diverge or “drift” from their initial, defined configurations. It can be caused by updates, patches, or adjustments made directly to servers, network devices, or other infrastructural… Read More »What is “Configuration Drift”?

How Does a Database Engine Process Prepared Statements Compared to Normal Statements, and Why Are Prepared Statements Faster

Processing of Normal Non-Prepared Statements Non-prepared statements, also known as direct SQL statements, involve SQL queries being written and sent to the database directly. The steps involved in processing a normal SQL statement are: This whole process is repeated each… Read More »How Does a Database Engine Process Prepared Statements Compared to Normal Statements, and Why Are Prepared Statements Faster

What are Common Table Expressions or CTEs?

Common Table Expressions (CTEs) provide a way to write auxiliary statements for use in a larger query. These auxiliary statements, essentially named subqueries, can be referenced later in the FROM clause. They make queries easier to understand by breaking them up into smaller, simpler parts.

What are database cursors? when might you use them?

A database cursor is a mechanism used to traverse through a set of data retrieved from a database. Cursors are commonly used in programming languages to execute queries that retrieve a large number of rows. Cursors allow for more control over the processing of data and can be used to perform tasks such as updating or deleting records. However, cursors can be resource-intensive and slow down performance, so they should only be used when necessary.

What is the difference between a view and a materialized view?

A view is a virtual table that is based on one or more tables, while a materialized view is a physical copy of a view that is stored on disk. Unlike views, materialized views can be indexed for faster access and can improve query performance in data-intensive environments.