O comprimento máximo de caracteres de um nome de banco de dados no SQL Server é 128 caracteres para o SQL Server 2008 R2. Portanto, você pode fazer backup de um banco de dados com mais de 50 caracteres com o comando BACKUP
no T-SQL (veja abaixo, por exemplo). Você precisa garantir que sua variável @name
possa conter mais de 50 caracteres.
Exemplo:
CREATE DATABASE MoreThan50characters_abcdefghijklmnopqrstuvwxyz12345;
BACKUP DATABASE MoreThan50characters_abcdefghijklmnopqrstuvwxyz12345
TO DISK = 'MyFile_deleteme.bak';
Me dá esta saída:
Processed 168 pages for database 'MoreThan50characters_abcdefghijklmnopqrstuvwxyz12345', file 'MoreThan50characters_abcdefghijklmnopqrstuvwxyz12345' on file 3.
Processed 2 pages for database 'MoreThan50characters_abcdefghijklmnopqrstuvwxyz12345', file 'MoreThan50characters_abcdefghijklmnopqrstuvwxyz12345_log' on file 3.
BACKUP DATABASE successfully processed 170 pages in 0.246 seconds (5.390 MB/sec).