Vous n'êtes pas identifié(e).
Pages : 1
Bonjour à tous je le script SQLServer suivant et je cherche à le passer sous PostGresSQL, quelqu'un pourrait-il m'aider svp ?
Merci
DECLARE @state char(100);
SET @state = (SELECT DATA_TYPE FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 'Interaction' AND COLUMN_NAME = 'IntPlace');
IF 'char' = @state
BEGIN
PRINT 'IntPlace is a char DATA_TYPE'
IF 350 > (SELECT CHARACTER_MAXIMUM_LENGTH FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 'Interaction' AND COLUMN_NAME = 'IntPlace')
BEGIN
PRINT 'IntPlace is smaller than 350';
ALTER TABLE Interaction ALTER COLUMN IntPlace char(350);
END
END
IF 'varchar' = @state
BEGIN
PRINT 'IntPlace is a varchar DATA_TYPE'
IF 350 > (SELECT CHARACTER_MAXIMUM_LENGTH FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 'Interaction' AND COLUMN_NAME = 'IntPlace')
BEGIN
PRINT 'IntPlace is smaller than 350';
ALTER TABLE Interaction ALTER COLUMN IntPlace varchar(350);
END
END
IF 'nvarchar' = @state
BEGIN
PRINT 'IntPlace is a nvarchar DATA_TYPE'
IF 350 > (SELECT CHARACTER_MAXIMUM_LENGTH FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 'Interaction' AND COLUMN_NAME = 'IntPlace')
BEGIN
PRINT 'IntPlace is smaller than 350';
ALTER TABLE Interaction ALTER COLUMN IntPlace nvarchar(350);
END
END
IF 'nchar' = @state
BEGIN
PRINT 'IntPlace is a nchar DATA_TYPE'
IF 350 > (SELECT CHARACTER_MAXIMUM_LENGTH FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 'Interaction' AND COLUMN_NAME = 'IntPlace')
BEGIN
PRINT 'IntPlace is smaller than 350';
ALTER TABLE Interaction ALTER COLUMN IntPlace nchar(350);
END
END
Hors ligne
Vous essayez de le convertir dans quel langage ? et quel problème rencontrez-vous ?
Guillaume.
Hors ligne
Bonjour,
Cela ressemble à du code exécuté pour faire une mise à jour de schéma, suite à une mise à jour de version applicative ou quelque chose comme ça, non ?
Pouvez-vous nous en dire un peu plus sur le contexte?
Bien à vous,
Jean-Paul Argudo
https://www.postgresql.fr
https://www.crunchydata.com
Hors ligne
Pages : 1