Hola NelsonPerez:
como puedo crear este atributo compuesto
Además de lo ya comentado, y como de la definición de tú pregunta, al menos para mi no queda del todo clara, y por si acaso te refieres a columnas calculadas.
create table dbo.Persona (
IdPersona int identity primary key,
[primer nombre] nvarchar(64),
[segundo nombre] nvarchar(64),
apellido nvarchar(64)
)
go
insert into dbo.Persona ([primer nombre], [segundo nombre], apellido)
values
('Ana','Belén','García'),
('Jorge',null,'Pérez');
go
Select * from dbo.Persona;
go
Alter table Persona
Add [Nombre Completo Opción Calculada] as Concat([primer nombre],' ',[segundo nombre],' ',[apellido]);
go
Alter table Persona
Add [Nombre Completo Opción Persistida] as Concat([primer nombre],' ',[segundo nombre],' ',[apellido]) persisted;
go
Select * from dbo.Persona;
![]()
La opción calculada, el motor la ejecuta cada vez que se consulta la tabla. La opción persistida, se guarda físicamente.
Columnas calculadas
https://docs.microsoft.com/es-es/sql/relational-databases/tables/specify-computed-columns-in-a-table?view=sql-server-ver15