Bonjour à tous,
Voici mon problème :
En c# je me suis fait une petite procédure Split :
ajout de la procédure dans sql server :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 using System.Data; using System.Data.SqlClient; using System.Data.SqlTypes; using Microsoft.SqlServer.Server; public partial class StoredProcedures { [Microsoft.SqlServer.Server.SqlProcedure] public static void Split(SqlString inputString, SqlString sep, SqlString columnName) { SqlMetaData[] metaData = new SqlMetaData[1]; metaData[0] = new SqlMetaData(columnName.Value, SqlDbType.NVarChar, 4000); SqlDataRecord record = new SqlDataRecord(metaData); SqlContext.Pipe.SendResultsStart(record); string[] elements = inputString.Value.Split(sep.Value.ToCharArray()); foreach (string element in elements) { string value = element.Trim(); record.SetString(0, value); SqlContext.Pipe.SendResultsRow(record); } SqlContext.Pipe.SendResultsEnd(); } };
La procédure fonctionne très bien
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 CREATE PROCEDURE Split @inputString nvarchar(4000), @sep nvarchar(10), @columnName nvarchar(255) AS EXTERNAL NAME myProject.[StoredProcedures].Split
Code : Sélectionner tout - Visualiser dans une fenêtre à part exec Split 'toto-tata-tutu', '-', 'column'
MON PROBLEME
je voudrais recupérer le tableau affiché par la procédure Split dans une autre procédure pour faire un traitement pour chaque ligne. et là je bloque ...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 DECLARE @INPUT_STRING nvarchar(250) SET @INPUT_STRING = 'toto-tata-tutu' SELECT je sais pas comment de exec Split @INPUT_STRING, '-', 'column'
Merci pour votre aide.
Matthieu
Partager