Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Zmień typ zdefiniowany przez użytkownika w SQL Server

To jest to, czego zwykle używam, choć trochę ręcznie:

/* Add a 'temporary' UDDT with the new definition */ 
exec sp_addtype t_myudt_tmp, 'numeric(18,5)', NULL 


/* Build a command to alter all the existing columns - cut and 
** paste the output, then run it */ 
select 'alter table dbo.' + TABLE_NAME + 
       ' alter column ' + COLUMN_NAME + ' t_myudt_tmp' 
from INFORMATION_SCHEMA.COLUMNS 
where DOMAIN_NAME = 't_myudt' 

/* Remove the old UDDT */ 
exec sp_droptype t_mydut


/* Rename the 'temporary' UDDT to the correct name */ 
exec sp_rename 't_myudt_tmp', 't_myudt', 'USERDATATYPE' 


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak utworzyć skrót do SSMS i automatycznie połączyć się z domyślnym serwerem SQL — SQ:Samouczek dotyczący serwera / TSQL, część 4

  2. Zakończenie wsparcia dla SQL Server 2008. Co teraz?

  3. Miesiące między dwiema datami

  4. sql grupuj tylko według wierszy, które są w sekwencji

  5. Jak wyłączyć wszystkie wyzwalacze w bazie danych SQL Server