Bonjour,
J’ai une procédure stocké en sql server 2005 sp3, qui est un
simple select (select * from ….).
J’exécute cette requête en c# pour remplir une datatable. Et cela
fonctionne bien.
Je complique un peu en rajoutant une fonction SQL
1 2 3 4 5 6 7 8
|
alter FUNCTION dbo.qt_GetSector (@FC_test varchar(20))
RETURNS varchar(300)
WITH EXECUTE AS CALLER
AS
BEGIN
return(@FC_test);
end; |
je rajoute cette fonction a ma requête
1 2 3
|
(select dbo.qt_GetSector(«
qsdf« ) as qsdf, * from
.) |
.
Je re - exécute cette procédure en c# et la je m’aperçois que le champ qsdf(cad la fonction) dans la datatable est devenu en lecture seule.
Je peux modifier le champs de la datatable pour le mettre en écriture programmatiquement. Mais je n’aime cette solution, car il y a d’autres applications qui utilisent cette requête et qui impliqueraient beaucoup de changements.
Comment puis je modifier ma requête en Tsql pour rendre ce champ qui
contient le résultat d’une fonction SQL visible en écriture dans une
DataTable(C#) sans modifier le code de mon application?
Merci d’avance…
Ex:
requête
N°| STATUS | FIELDS
01| R,W | id
02| R,W | strName
03| R,W | strAdresses
04| R,W | strParam
J'ajoute une fonction
requête
Select dbo.qt_GetSector(« qsdf« ) as qsdf, * from table1
N°| STATUS | FIELDS
01| R | qsdf
02| R,W | id
03| R,W | strName
04| R,W | strAdresses
05| R,W | strParam
Comment faire pour mettre le champ qsdf en lecture et en écriture dans une database c#
Encore merci
R=lecture
W=Ecriture
Partager