O Oracle 10g disponibiliza para os usuários um amplo conjunto de tipos de dados nativos. Os usuários podem adicionar novos tipos utilizando o comando CREATE TYPE. Um deles é utilizado para representar ponto flutuante e precisão simples, enquanto que outros é usado para armazenar dados não estruturados e grande quantidade de bytes como imagens, fotos, vídeo, áudio, mapas e gráficos. Esses tipos são, respectivamente: