Supondo que você não armazene coisas como '+', '()', '-', espaços e o que você tem (e por que você faria isso, são preocupações de apresentação que variam de acordo com os costumes locais e as distribuições de rede de qualquer maneira), a recomendação E.164 da ITU-T para a rede telefônica internacional (na qual a maioria das redes nacionais está conectada) especifica que o número inteiro (incluindo o código do país, mas não incluindo prefixos como o prefixo de chamada internacional necessário para discagem, que varia de país para país, nem que inclua sufixos, como números de extensão PBX) tenham no máximo 15 caracteres .
Os prefixos de chamada dependem do chamador, não do chamado e, portanto, não devem (em muitas circunstâncias) ser armazenados com um número de telefone. Se o banco de dados armazenar dados para um bloco de endereços pessoal (nesse caso, armazenar o prefixo de chamada internacional faz sentido), os prefixos internacionais mais longos com os quais você teria que lidar (de acordo com a Wikipedia ) são atualmente de 5 dígitos, na Finlândia.
Quanto aos sufixos, alguns PBXs suportam extensões de até 11 dígitos (novamente, de acordo com a Wikipedia ). Como os números de ramal de PBX fazem parte de um plano de discagem diferente (os PBXs são separados das trocas das empresas de telefonia), os números de ramal precisam ser distinguíveis dos números de telefone, com um caractere separador ou armazenando-os em uma coluna diferente.