Codd's 12 rules are a set of rules proposed by Edgar Codd to define what is required for a database management system to be considered relational. The rules include that all data must be represented in tables and columns, all data must be logically addressable, null values must be supported systematically, the database structure must be accessible through queries, and the system must support set-based operations like inserts, updates and deletes. The rules also require physical and logical independence between the application, data and constraints.