SQL is a declarative programming language used to manage and manipulate data within relational database management systems. It allows users to define and manage database structures, insert, query, update and modify data. SQL supports various data types including numeric, character, date/time and boolean values, and understanding these data types is important for defining database tables and columns.