Existe-t-il un moyen de modifier la précision d'une colonne décimale existante dans Sql Server?Comment modifier la précision d'une colonne décimale dans Sql Server?
Répondre
ALTER TABLE Testing ALTER COLUMN TestDec decimal(16,1)
Il suffit de mettre decimal(precision, scale)
, en remplacement de la précision et de l'échelle avec vos valeurs souhaitées.
Je n'ai effectué aucun test avec les données du tableau, mais si vous modifiez la précision, vous risquez de perdre des données si la nouvelle précision est inférieure.
Aller à la définition de l'entreprise, cliquez sur votre nom de domaine et carte de projet.
Faire une colonne décimale
Dans les propriétés en bas il y a une propriété de précision
Cela recréera la table. –
Dans ce cas, ne faites pas cela alors: p – qui
Je n'ai jamais compris cette page de la table de conception. Vous ne pouvez pas apporter de modifications sur le type de données, même si cela ne pose aucun problème dans une requête. Vraisemblablement, la page de conception utilise des requêtes en arrière-plan, je ne comprends pas pourquoi cette limitation a été implémentée. – Flater
Il existe peut-être un meilleur moyen, mais vous pouvez toujours copier la colonne dans une nouvelle colonne, la supprimer et renommer la nouvelle colonne pour le nom de la première colonne.
à savoir:
ALTER TABLE MyTable ADD NewColumnName DECIMAL(16, 2);
GO
UPDATE MyTable
SET NewColumnName = OldColumnName;
GO
ALTER TABLE CONTRACTS DROP COLUMN OldColumnName;
GO
EXEC sp_rename
@objname = 'MyTable.NewColumnName',
@newname = 'OldColumnName',
@objtype = 'COLUMN'
GO
Cela a été testé sur SQL Server 2008 R2, mais devrait fonctionner sur SQL Server 2000+.
ALTER TABLE `tableName` CHANGE `columnName` `columnName` DECIMAL(16,1) NOT NULL;
J'utilise ce pour la alterration
ALTER TABLE (Your_Table_Name) MODIFY (Your_Column_Name) DATA_TYPE();
Pour vous problème:
ALTER TABLE (Your_Table_Name) MODIFY (Your_Column_Name) DECIMAL(Precision, Scale);
- 1. SQL Server Insertion décimale, mais sélection Int
- 2. SQL Server 2005 perte de précision numérique
- 3. SQL question de modifier la colonne
- 4. SQL Server: colonne incohérence
- 5. Relations de colonne SQL Server
- 6. Transposition Colonne dans SQL Server 2005/2000
- 7. Comment arrondir une colonne dans une seule requête SQL sans modifier la somme globale?
- 8. SQL Server: Copie de la colonne dans la table
- 9. SQL Server apporte une précision supplémentaire pour les flottants?
- 10. MSSQL Serveur - obtenir une partie entière d'une valeur décimale dans la colonne calculée
- 11. SQL Server 2005 Modifier l'audit
- 12. Comment modifier une colonne et une colonne calculée
- 13. Comment puis-je modifier la propriété d'identité dans SQL Server 2008?
- 14. Sql Server: SQl total de la colonne Query
- 15. Comment forcer l'affichage d'une décimale dans un champ ExtJS NumberField à une certaine précision?
- 16. Comment insérer un octet [] dans une colonne VARBINARY SQL Server
- 17. Comment supprimer un caractère d'une colonne dans SQL Server?
- 18. Modification du nom de colonne dans SQL Server 2000
- 19. Modifier en toute sécurité le type de données d'une colonne répliquée dans SQL Server 2005?
- 20. Comment écrire sql pour définir la valeur par défaut d'une colonne dans sql server 2005?
- 21. insert int dans la colonne xml sql
- 22. erreur SQL Server « 80040e14 » nom de la colonne Ambigu
- 23. Référence SQL Server une colonne calculée
- 24. Comment spécifier une colonne unique dans la portée d'une relation dans SQL Server 2008?
- 25. Forcer la colonne SQL Server à une valeur spécifique
- 26. Modifier TOP rang dans SQL Server Management Studio
- 27. Invoquer une action sur SQL Server 2000 Modifier la table
- 28. Modifier dynamiquement la largeur de la colonne Datagrid dans FLEX
- 29. Fonction de liste SQL Suppression de précision
- 30. Comment utilisez-vous LEFT sur une colonne SQL Server NTEXT?
Cela a fonctionné pour moi lors de l'augmentation de la précision pour une décimale (18,2) à la décimale (18,3). – Junto
Merci, si simple, encore difficile à trouver. –
Si vous avez un nombre de 16 (total) et que vous augmentez l'échelle, va-t-il se lancer sur les chiffres d'ordre supérieur pour faire de la place aux 2 nouvelles décimales? Malheureusement, je ne peux pas tester cela pour le moment. – user420667