Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

Armazenar matriz no SQL Server 2008


Você desejará criar tabelas separadas, com uma linha por número de contato ou endereço de e-mail.
CREATE TABLE Contacts (contactId int, name varchar(128), etc, etc
CREATE TABLE ContactEmail (contactId int, emailAddress varchar(128), etc
CREATE TABLE ContactPhone (contactId int, phoneNumber varchar(128), etc

Isso permitirá que você modifique números/e-mails individuais, remova-os, adicione-os, etc, sem precisar de um programa externo para descompactar uma matriz.

Mas se você realmente quiser armazená-lo desnormalizado, poderá transformar o array em uma string delimitada. . coloque um delimitador entre cada endereço de e-mail (com a mágica apropriada para garantir que um endereço ainda não contenha o delimitador) e divida-o no caminho de volta.