Migration script SQLServer vers Oracle
Bonjour à tous, j'ai le script sql suivant pour SQLServer, quelqu'un pourrait-il m'aider pour avoir l'équivalent sous Oracle (11g/10g) ?
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41
| 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 |
Merci.