Trabalhar com tipos de dados de banco de dados

Adobe AIR 1.0 e posterior

Quando uma tabela é criada em um banco de dados, a instrução SQL usada para criar a tabela define a afinidade, ou o tipo de dados, de cada coluna da tabela. Embora seja possível omitir declarações de afinidade, é uma boa ideia declarar explicitamente a afinidade de coluna nas instruções SQL CREATE TABLE .

Como regra geral, qualquer objeto que você armazena em um banco de dados usando uma instrução INSERT é retornado como ocorrência do mesmo tipo de dados quando é executada uma instrução SELECT . No entanto, o tipo de dados do valor recuperado pode ser diferente, dependendo da afinidade da coluna do banco de dados na qual o valor está armazenado. Quando um valor é armazenado em uma coluna, se o respectivo tipo de dados não corresponde à afinidade de coluna, o banco de dados tenta converter o valor para que corresponda à afinidade de coluna. Por exemplo, se uma coluna de banco de dados está declarada com afinidade NUMERIC , o banco de dados tenta converter os dados inseridos em uma classe de armazenamento numérica ( INTEGER ou REAL ) antes de armazenar os dados. O banco de dados gera um erro se não é possível converter os dados. De acordo com esta regra, se a String “12345” é inserida em uma coluna NUMERIC , o banco de dados automaticamente a converte no valor inteiro 12345 antes de armazená-la no banco de dados. Quando recuperado com uma instrução SELECT , o valor é retornado como uma ocorrência de um tipo de dados numérico (por exemplo, Number) e não como uma ocorrência de String.

A melhor maneira de evitar a conversão indesejada de tipos de dados é seguir duas regras. Primeiro, defina cada coluna com a afinidade que corresponda ao tipo de dados que pretende armazenar. Em seguida, insira apenas valores cujo tipo de dados corresponda à afinidade definida. Se você seguir essas regras, terá dois benefícios. Quando você inserir os dados, eles não serão convertidos inesperadamente (com a possibilidade de perderem o significado pretendido). Além disso, quando você recupera os dados, eles são retornados com o tipo de dados original.

Para obter mais informações sobre os tipos de afinidade de coluna disponíveis e utilização de tipos de dados em instruções SQL, consulte o Suporte ao tipo de dados .