sql >> Database >  >> RDS >> Sqlserver

Is er een manier om de waarden voor FixedLenNullInSource en TrimTrailingBlanks te wijzigen?

TrimTrailingBlanks heeft betrekking op de SET ANSI_PADDING optie toen de tabel werd gemaakt. Je kunt dat misschien veranderen zonder de hele tabel opnieuw te maken op een vergelijkbare manier als mijn antwoord hier voor het wijzigen van de ANSI_NULL optie.

Anders zou u de tabel opnieuw moeten maken met de gewenste semantiek geselecteerd.

Kijkend naar de definitie van sp_help

   'FixedLenNullInSource' = 
   CASE
        WHEN Type_name(system_type_id) NOT IN ( 'varbinary', 'varchar', 'binary', 'char' ) THEN '(n/a)'
        WHEN is_nullable = 0 THEN @no
        ELSE @yes
    END 

dus het lijkt verschillende waarden voor FixedLenNullInSource geef gewoon aan dat de nullability van de kolom anders is en dat het een van de 4 gespecificeerde datatypes is. Je zou dat moeten oplossen met ALTER TABLE ... ALTER COLUMN

U bent waarschijnlijk veel beter af met het gebruik van een hulpprogramma van derden om de databases te vergelijken, zoals Redgate SQL Compare of SQL Server Data Tools, of u kunt zelfs gewoon sys.tables opvragen. en sys.columns zelf in plaats van sp_help . te gebruiken hoewel.




  1. Postgres kolom toevoegen met aanvankelijk berekende waarden

  2. Oracle vergelijkt tijdstempel met datum

  3. Postgres INSERT INTO met SELECT-bestelling

  4. Kolom bijwerken met gemiddelde berekening