Problem przy projekcie

0

Wykonuje swój pierwszy projekt sql i proszę o zrozumienie. Pytania mogą być przeróżne a oto pierwsze z nich.

Mam procedurę (wykorzystująca kursor), która pokazuje np. 10 najnowszych albumów. Procedura raczej działa poprawnie i wygląda tak:

--Procedura (wykorzystująca kursor) wyświetlająca x najnowszych albumów 
--(x jest parametrem wejściowym, domyślnie = 5)
create procedure x_najnowszych
@x int = 5
as
begin
	declare @id_alb int,
		@tytul STRING,
		@rok_wyd date,
		@licznik int
	set @licznik = 0

	declare najnowsze_albumy cursor for
	select id_albumu, tytul, rok_wydania from album a order by a.rok_wydania desc
	print 'LP' + char(9) + 'ID_ALB' + char(9) + char(9) + 'TYTUL' + char(9) + char(9) + char(9) + char(9) + char(9) + char(9) + 'ROK WYDANIA'
	print '--------------------------------------------------------------------'
	open najnowsze_albumy

	fetch next from najnowsze_albumy into @id_alb, @tytul, @rok_wyd
	while @@FETCH_STATUS = 0 and @licznik < @x
	begin
		set @licznik = @licznik + 1
		print cast(@licznik as varchar) + char(9) + cast(@id_alb as varchar) + char(9) + char(9) + char(9) + cast(@tytul as varchar) + char(9) + char(9) + char(9) + char(9) + char(9) + char(9) + cast(@rok_wyd as varchar)
		fetch next from najnowsze_albumy into @id_alb, @tytul, @rok_wyd
	end

	close najnowsze_albumy
	deallocate najnowsze_albumy
end

drop procedure x_najnowszych

execute x_najnowszych
execute x_najnowszych 2
execute x_najnowszych 10
 

Jednak nie zadowala mnie wygląd wynikowy(sami zobaczcie):
user image

Jak zrobić aby te daty były równo w każdym wierszu?

0

nie robisz do tego żadnego frontendu?
może coś takiego (uzupełnianie od lewej i od prawej spacjami)

SELECT RIGHT(SPACE(20) + 'sql_in_a_nutshell', 20)
 SELECT LEFT('sql_in_a_nutshell' + SPACE(20), 20)

1 użytkowników online, w tym zalogowanych: 0, gości: 1