This is usually avoided by declaring a primary key, or a unique constraint, with one or more columns that uniquely identify a row in the table. Impedance mismatch In a similar sense to object–relational impedance mismatch, a mismatch occurs between the declarative SQL language and the procedural languages in which SQL is typically embedded. SQL data types The SQL standard defines three kinds of data types: predefined data types constructed types user-defined types. Constructed types are one of ARRAY, MULTISET, REF(erence), or ROW. User-defined types are comparable to classes in object-oriented language with their own constructors, observers, mutators, methods, inheritance, overloading, overwriting, interfaces, and so on. Predefined data types are intrinsically supported by the implementation. Predefined data types Character types Character (CHAR) Character varying (VARCHAR) Character large object (CLOB) National character types National character (NCHAR) National character varying (NCHAR VARYING) National character large object (NCLOB) Binary types Binary (BINARY) Binary varying (VARBINARY) Binary large object (BLOB) Numeric types Exact numeric types (NUMERIC, DECIMAL, SMALLINT, INTEGER, BIGINT) Approximate numeric types (FLOAT, REAL, DOUBLE PRECISION) Decimal floating-point type (DECFLOAT) Datetime types (DATE, TIME, TIMESTAMP) Interval type (INTERVAL) Boolean XML JSON See also Wikibook SQL Object database List of relational database management systems Comparison of relational database management systems Comparison of object–relational database management systems Query by Example SQL syntax Oracle PL/SQL Microsoft Transact-SQL (T-SQL) Online transaction processing (OLTP) Online analytical processing (OLAP) Data warehouse Relational data stream management system NoSQL MUMPS Hierarchical database model Star schema Snowflake schema Notes References Sources Discussion on alleged SQL flaws (C2 wiki) C. J. Date with Hugh Darwen: A Guide to the SQL standard : a users guide to the standard database language SQL, 4th ed., Addison Wesley, USA 1997, External links 1995 SQL Reunion: People, Projects, and Politics, by Paul McJones (ed.): transcript of a reunion meeting devoted to the personal history of relational databases and SQL. American National Standards Institute. X3H2 Records, 1978–1995 Charles Babbage Institute Collection documents the H2 committee's development of the NDL and SQL standards. Oral history interview with Donald D. Chamberlin Charles Babbage Institute In this oral history Chamberlin recounts his early life, his education at Harvey Mudd College and Stanford University, and his work on relational database technology. Chamberlin was a member of the System R research team and, with Raymond F. Boyce, developed the SQL database language. Chamberlin also briefly discusses his more recent research on XML query