Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Impossible d'exécuter un StoredProc en VB.NET. GRANT ?

11 réponses
Avatar
\(\( Olivier \)\)
Bonjour,
J'utilise MSDE 2000

J'ai une Procédure Stockée : sp_DeleteAdresse qui est : DELETE FROM
adresse
J'ai accordé les droits à l'utilisateur : GRANT ALL ON sp_DeleteAdresse
to moimeme;

Si j'utilise OSQL -U moimeme -P monpass, alors je peux executer la procédure
stockée.

Par contre, en VB.NET, je me connecte bien avec mon compte, et là,
impossible d'executer la procédure stockée.
J'indique que tout marche impeccablement pour les autres procédures stockée.

Est-ce à cause du DELETE ? Pourquoi OSQL marche et pas en VB.NET ?

Voiçi le code que j'utilise (qui est le même que les autres ... ?)

Dim cString As String = "Initial Catalog=mabase;Data Source=localhost; User
Id=moimeme; Password=monpass;"
Dim cnx As New SqlConnection(cString)
Dim cmd As New SqlCommand("sp_DeleteAdresse", cnx)
Try

cnx.Open()
cmd.CommandType = CommandType.StoredProcedure
cmd.ExecuteNonQuery()
cnx.Close()

Catch ex As Exception
MsgBox(ex.Message)

End Try

Merci pour l'aide car là, je coince !

Olivier

10 réponses

1 2
Avatar
Pyroa
pour acceder à une base SQL le mieux est d'utiliser la sécurité intégré de
windows.
Pour ca il faut modifier la ConnectionString en :

data source=PERTHMOC;Initial Catalog½1SQL;user ID=sa" />

moi j'utilise ca ou la connection string générée par VS..NET

:)

"(( Olivier ))" a écrit dans le message de
news:
Bonjour,
J'utilise MSDE 2000

J'ai une Procédure Stockée : sp_DeleteAdresse qui est : DELETE FROM
adresse
J'ai accordé les droits à l'utilisateur : GRANT ALL ON sp_DeleteAdresse
to moimeme;

Si j'utilise OSQL -U moimeme -P monpass, alors je peux executer la


procédure
stockée.

Par contre, en VB.NET, je me connecte bien avec mon compte, et là,
impossible d'executer la procédure stockée.
J'indique que tout marche impeccablement pour les autres procédures


stockée.

Est-ce à cause du DELETE ? Pourquoi OSQL marche et pas en VB.NET ?

Voiçi le code que j'utilise (qui est le même que les autres ... ?)

Dim cString As String = "Initial Catalog=mabase;Data Source=localhost;


User
Id=moimeme; Password=monpass;"
Dim cnx As New SqlConnection(cString)
Dim cmd As New SqlCommand("sp_DeleteAdresse", cnx)
Try

cnx.Open()
cmd.CommandType = CommandType.StoredProcedure
cmd.ExecuteNonQuery()
cnx.Close()

Catch ex As Exception
MsgBox(ex.Message)

End Try

Merci pour l'aide car là, je coince !

Olivier




Avatar
\(\( Olivier \)\)
Merci pour ta réponse, mais je veux justement être indépendant des comptes
Windows.

Je voudrais n'avoir qu'un seul compte autorisé à acceder au serveur et donc
aux bases.
C'est pour le déploiement en clientèle, je veux être SUR que personne, non
personne ne puisse acceder au server SQL a part moi.

Donc pas de sécurité intégré ni de OSQL -E

Merci
Olivier



"Pyroa" a écrit dans le message de
news:
pour acceder à une base SQL le mieux est d'utiliser la sécurité intégré de
windows.
Pour ca il faut modifier la ConnectionString en :

data source=PERTHMOC;Initial Catalog½1SQL;user ID=sa" />

moi j'utilise ca ou la connection string générée par VS..NET

:)

"(( Olivier ))" a écrit dans le message de
news:
> Bonjour,
> J'utilise MSDE 2000
>
> J'ai une Procédure Stockée : sp_DeleteAdresse qui est : DELETE FROM
> adresse
> J'ai accordé les droits à l'utilisateur : GRANT ALL ON


sp_DeleteAdresse
> to moimeme;
>
> Si j'utilise OSQL -U moimeme -P monpass, alors je peux executer la
procédure
> stockée.
>
> Par contre, en VB.NET, je me connecte bien avec mon compte, et là,
> impossible d'executer la procédure stockée.
> J'indique que tout marche impeccablement pour les autres procédures
stockée.
>
> Est-ce à cause du DELETE ? Pourquoi OSQL marche et pas en VB.NET ?
>
> Voiçi le code que j'utilise (qui est le même que les autres ... ?)
>
> Dim cString As String = "Initial Catalog=mabase;Data Source=localhost;
User
> Id=moimeme; Password=monpass;"
> Dim cnx As New SqlConnection(cString)
> Dim cmd As New SqlCommand("sp_DeleteAdresse", cnx)
> Try
>
> cnx.Open()
> cmd.CommandType = CommandType.StoredProcedure
> cmd.ExecuteNonQuery()
> cnx.Close()
>
> Catch ex As Exception
> MsgBox(ex.Message)
>
> End Try
>
> Merci pour l'aide car là, je coince !
>
> Olivier
>
>




Avatar
Axel Guerrier [MS]
Bonjour Olivier,

Quelle est l'erreur que tu reçois sous VB.Net ?
La table sur laquelle tu veux supprimer est elle liée à une autre ?

Est ce que tu pourrais tester sur un serveur SQL (afin de faire une trace
avec SQL Profiler) ?

Juste pour test, est ce que tu pourrais essayer ce que Pyroa a proposé (avec
un user Windows) ?

--
Axel GUERRIER
Microsoft France
--------------------
Merci de bien vouloir répondre à ce message dans le newsgroup où il a été
posté. Je le consulte régulièrement.

"(( Olivier ))" wrote in message
news:
Bonjour,
J'utilise MSDE 2000

J'ai une Procédure Stockée : sp_DeleteAdresse qui est : DELETE FROM
adresse
J'ai accordé les droits à l'utilisateur : GRANT ALL ON sp_DeleteAdresse
to moimeme;

Si j'utilise OSQL -U moimeme -P monpass, alors je peux executer la


procédure
stockée.

Par contre, en VB.NET, je me connecte bien avec mon compte, et là,
impossible d'executer la procédure stockée.
J'indique que tout marche impeccablement pour les autres procédures


stockée.

Est-ce à cause du DELETE ? Pourquoi OSQL marche et pas en VB.NET ?

Voiçi le code que j'utilise (qui est le même que les autres ... ?)

Dim cString As String = "Initial Catalog=mabase;Data Source=localhost;


User
Id=moimeme; Password=monpass;"
Dim cnx As New SqlConnection(cString)
Dim cmd As New SqlCommand("sp_DeleteAdresse", cnx)
Try

cnx.Open()
cmd.CommandType = CommandType.StoredProcedure
cmd.ExecuteNonQuery()
cnx.Close()

Catch ex As Exception
MsgBox(ex.Message)

End Try

Merci pour l'aide car là, je coince !

Olivier




Avatar
Paul Bacelar
Doux rêves ;-)
--
Paul Bacelar

"(( Olivier ))" a écrit dans le message de
news:%23419bf$
Merci pour ta réponse, mais je veux justement être indépendant des comptes
Windows.

Je voudrais n'avoir qu'un seul compte autorisé à acceder au serveur et


donc
aux bases.
C'est pour le déploiement en clientèle, je veux être SUR que personne, non
personne ne puisse acceder au server SQL a part moi.

Donc pas de sécurité intégré ni de OSQL -E

Merci
Olivier



"Pyroa" a écrit dans le message


de
news:
> pour acceder à une base SQL le mieux est d'utiliser la sécurité intégré


de
> windows.
> Pour ca il faut modifier la ConnectionString en :
>
> data source=PERTHMOC;Initial Catalog½1SQL;user ID=sa" />
>
> moi j'utilise ca ou la connection string générée par VS..NET
>
> :)
>
> "(( Olivier ))" a écrit dans le message de
> news:
> > Bonjour,
> > J'utilise MSDE 2000
> >
> > J'ai une Procédure Stockée : sp_DeleteAdresse qui est : DELETE FROM
> > adresse
> > J'ai accordé les droits à l'utilisateur : GRANT ALL ON
sp_DeleteAdresse
> > to moimeme;
> >
> > Si j'utilise OSQL -U moimeme -P monpass, alors je peux executer la
> procédure
> > stockée.
> >
> > Par contre, en VB.NET, je me connecte bien avec mon compte, et là,
> > impossible d'executer la procédure stockée.
> > J'indique que tout marche impeccablement pour les autres procédures
> stockée.
> >
> > Est-ce à cause du DELETE ? Pourquoi OSQL marche et pas en VB.NET ?
> >
> > Voiçi le code que j'utilise (qui est le même que les autres ... ?)
> >
> > Dim cString As String = "Initial Catalog=mabase;Data Source=localhost;
> User
> > Id=moimeme; Password=monpass;"
> > Dim cnx As New SqlConnection(cString)
> > Dim cmd As New SqlCommand("sp_DeleteAdresse", cnx)
> > Try
> >
> > cnx.Open()
> > cmd.CommandType = CommandType.StoredProcedure
> > cmd.ExecuteNonQuery()
> > cnx.Close()
> >
> > Catch ex As Exception
> > MsgBox(ex.Message)
> >
> > End Try
> >
> > Merci pour l'aide car là, je coince !
> >
> > Olivier
> >
> >
>
>




Avatar
\(\( Olivier \)\)
Justement c'est ca le problème.

La table n'est pas liée.

Si je passe par OSQL -E ou OSQL -U moimeme -P monpass
puis ensuite EXEC sp_DeleteAdresse
Que je sois en SECURITYMODE=SQL ou Windows authentication mode

Ca marche !

Avec le code suivant, même les deux modes et connexionStrings : ca marche
pas.
J'ai aucun message d'erreur ! le Try - Catch n'attrape aucune erreur ???
C'est ca que je comprends pas ?

Dim cString As String = "Initial Catalog=mabase;Data Source=localhost; User
Id=moimeme; Password=monpass;"
' ou Dim cString As String = "Initial Catalog=mabase;Data
Source=localhost;Integrated Security=SSPI;"

Dim cnx As New SqlConnection(cString)
Dim cmd As New SqlCommand("sp_DeleteAdresse", cnx)
Try

cnx.Open()
cmd.CommandType = CommandType.StoredProcedure
cmd.ExecuteNonQuery()
cnx.Close()

Catch ex As Exception
MsgBox(ex.Message)

End Try

Et pourquoi "Doux rèves" Mr Bacelar ?
Est-ce impossible ? S'il n'y a qu'un seul compte et un seul ?

Merci
Olivier


"Axel Guerrier [MS]" a écrit dans le message de
news:ed1iL$
Bonjour Olivier,

Quelle est l'erreur que tu reçois sous VB.Net ?
La table sur laquelle tu veux supprimer est elle liée à une autre ?

Est ce que tu pourrais tester sur un serveur SQL (afin de faire une trace
avec SQL Profiler) ?

Juste pour test, est ce que tu pourrais essayer ce que Pyroa a proposé


(avec
un user Windows) ?

--
Axel GUERRIER
Microsoft France
--------------------
Merci de bien vouloir répondre à ce message dans le newsgroup où il a été
posté. Je le consulte régulièrement.

"(( Olivier ))" wrote in message
news:
> Bonjour,
> J'utilise MSDE 2000
>
> J'ai une Procédure Stockée : sp_DeleteAdresse qui est : DELETE FROM
> adresse
> J'ai accordé les droits à l'utilisateur : GRANT ALL ON


sp_DeleteAdresse
> to moimeme;
>
> Si j'utilise OSQL -U moimeme -P monpass, alors je peux executer la
procédure
> stockée.
>
> Par contre, en VB.NET, je me connecte bien avec mon compte, et là,
> impossible d'executer la procédure stockée.
> J'indique que tout marche impeccablement pour les autres procédures
stockée.
>
> Est-ce à cause du DELETE ? Pourquoi OSQL marche et pas en VB.NET ?
>
> Voiçi le code que j'utilise (qui est le même que les autres ... ?)
>
> Dim cString As String = "Initial Catalog=mabase;Data Source=localhost;
User
> Id=moimeme; Password=monpass;"
> Dim cnx As New SqlConnection(cString)
> Dim cmd As New SqlCommand("sp_DeleteAdresse", cnx)
> Try
>
> cnx.Open()
> cmd.CommandType = CommandType.StoredProcedure
> cmd.ExecuteNonQuery()
> cnx.Close()
>
> Catch ex As Exception
> MsgBox(ex.Message)
>
> End Try
>
> Merci pour l'aide car là, je coince !
>
> Olivier
>
>




Avatar
\(\( Olivier \)\)
Je suis vraiment entrain de me demander si c'est pas un 'Bug' dans ADO.NET ?

Quelqu'un d'autre peut essayer de faire une requete DELETE ou TRUNCATE en
ADO.NET et SQL server ?

Je pense que c'est un problème de droit, mais bon, je sais plus quoi faire ?
Je n'imagine pas que ce soit un bug inconnu, car cette instruction SQL, il
doit y avoir quelques millliers de developpeurs qui l'utilisent, donc si
c'était bug, ça se saurait !

J'ai ré-installé MSDE 200 avec :
setup SAPWD="monpass" SECURITYMODE=SQL

ensuite, ma connexionstring utilise 'sa', 'monpass'
Et toujours pas de message d'erreur, et ma table n'est toujours pas vidée ?
Je vais quand même pas faire un DROP TABLE ?

Je désespère....

Merci
Olivier




"(( Olivier ))" a écrit dans le message de
news:
Bonjour,
J'utilise MSDE 2000

J'ai une Procédure Stockée : sp_DeleteAdresse qui est : DELETE FROM
adresse
J'ai accordé les droits à l'utilisateur : GRANT ALL ON sp_DeleteAdresse
to moimeme;

Si j'utilise OSQL -U moimeme -P monpass, alors je peux executer la


procédure
stockée.

Par contre, en VB.NET, je me connecte bien avec mon compte, et là,
impossible d'executer la procédure stockée.
J'indique que tout marche impeccablement pour les autres procédures


stockée.

Est-ce à cause du DELETE ? Pourquoi OSQL marche et pas en VB.NET ?

Voiçi le code que j'utilise (qui est le même que les autres ... ?)

Dim cString As String = "Initial Catalog=mabase;Data Source=localhost;


User
Id=moimeme; Password=monpass;"
Dim cnx As New SqlConnection(cString)
Dim cmd As New SqlCommand("sp_DeleteAdresse", cnx)
Try

cnx.Open()
cmd.CommandType = CommandType.StoredProcedure
cmd.ExecuteNonQuery()
cnx.Close()

Catch ex As Exception
MsgBox(ex.Message)

End Try

Merci pour l'aide car là, je coince !

Olivier




Avatar
\(\( Olivier \)\)
Pour finir :

J'ai mis ma requete DELETE dès le Form_Load (Avant il était au milieu d'une
Function)

Et ca marche.

Cela reste un 'très' grand mystère sur le pourquoi cela ne marche pas
autrement ?
Je crois qu'on ne saura jamais.

Merci quand même
Olivier



"(( Olivier ))" a écrit dans le message de
news:
Bonjour,
J'utilise MSDE 2000

J'ai une Procédure Stockée : sp_DeleteAdresse qui est : DELETE FROM
adresse
J'ai accordé les droits à l'utilisateur : GRANT ALL ON sp_DeleteAdresse
to moimeme;

Si j'utilise OSQL -U moimeme -P monpass, alors je peux executer la


procédure
stockée.

Par contre, en VB.NET, je me connecte bien avec mon compte, et là,
impossible d'executer la procédure stockée.
J'indique que tout marche impeccablement pour les autres procédures


stockée.

Est-ce à cause du DELETE ? Pourquoi OSQL marche et pas en VB.NET ?

Voiçi le code que j'utilise (qui est le même que les autres ... ?)

Dim cString As String = "Initial Catalog=mabase;Data Source=localhost;


User
Id=moimeme; Password=monpass;"
Dim cnx As New SqlConnection(cString)
Dim cmd As New SqlCommand("sp_DeleteAdresse", cnx)
Try

cnx.Open()
cmd.CommandType = CommandType.StoredProcedure
cmd.ExecuteNonQuery()
cnx.Close()

Catch ex As Exception
MsgBox(ex.Message)

End Try

Merci pour l'aide car là, je coince !

Olivier




Avatar
\(\( Olivier \)\)
Et pourquoi "Doux rèves" ?
Vous me faites peur :-<

Est-ce impossible ? S'il n'y a qu'un seul compte et un seul ?
On peut avoir qu'un seul compte 'sa' ?
Avec le SECURITYMODE=SQL

Par contre, il est vraiment impossible d'empecher quiconque de faire un
OSQL -E ?

Cela serait très dangereux, non ?
Un petit .BAT avec OSQL -E DELETE et hop ! dommage !

Merci
Olivier


"Paul Bacelar" a écrit dans le message de
news:
Doux rêves ;-)
--
Paul Bacelar

"(( Olivier ))" a écrit dans le message de
news:%23419bf$
> Merci pour ta réponse, mais je veux justement être indépendant des


comptes
> Windows.
>
> Je voudrais n'avoir qu'un seul compte autorisé à acceder au serveur et
donc
> aux bases.
> C'est pour le déploiement en clientèle, je veux être SUR que personne,


non
> personne ne puisse acceder au server SQL a part moi.
>
> Donc pas de sécurité intégré ni de OSQL -E
>
> Merci
> Olivier
>
>
>
> "Pyroa" a écrit dans le message
de
> news:
> > pour acceder à une base SQL le mieux est d'utiliser la sécurité


intégré
de
> > windows.
> > Pour ca il faut modifier la ConnectionString en :
> >
> > data source=PERTHMOC;Initial Catalog½1SQL;user ID=sa" />
> >
> > moi j'utilise ca ou la connection string générée par VS..NET
> >
> > :)
> >
> > "(( Olivier ))" a écrit dans le message de
> > news:
> > > Bonjour,
> > > J'utilise MSDE 2000
> > >
> > > J'ai une Procédure Stockée : sp_DeleteAdresse qui est : DELETE


FROM
> > > adresse
> > > J'ai accordé les droits à l'utilisateur : GRANT ALL ON
> sp_DeleteAdresse
> > > to moimeme;
> > >
> > > Si j'utilise OSQL -U moimeme -P monpass, alors je peux executer la
> > procédure
> > > stockée.
> > >
> > > Par contre, en VB.NET, je me connecte bien avec mon compte, et là,
> > > impossible d'executer la procédure stockée.
> > > J'indique que tout marche impeccablement pour les autres procédures
> > stockée.
> > >
> > > Est-ce à cause du DELETE ? Pourquoi OSQL marche et pas en VB.NET ?
> > >
> > > Voiçi le code que j'utilise (qui est le même que les autres ... ?)
> > >
> > > Dim cString As String = "Initial Catalog=mabase;Data


Source=localhost;
> > User
> > > Id=moimeme; Password=monpass;"
> > > Dim cnx As New SqlConnection(cString)
> > > Dim cmd As New SqlCommand("sp_DeleteAdresse", cnx)
> > > Try
> > >
> > > cnx.Open()
> > > cmd.CommandType = CommandType.StoredProcedure
> > > cmd.ExecuteNonQuery()
> > > cnx.Close()
> > >
> > > Catch ex As Exception
> > > MsgBox(ex.Message)
> > >
> > > End Try
> > >
> > > Merci pour l'aide car là, je coince !
> > >
> > > Olivier
> > >
> > >
> >
> >
>
>




Avatar
Paul Bacelar
Tu ne ferra jamais admettre à un client et surtout à son admin qu'il ne doit
pas toucher à la base. S'il est compétent il sait qu'il doit faire des back
up et autres taches. Le client est roi, ne l'oublie pas.
--
Paul Bacelar

"(( Olivier ))" a écrit dans le message de
news:
Et pourquoi "Doux rèves" ?
Vous me faites peur :-<

Est-ce impossible ? S'il n'y a qu'un seul compte et un seul ?
On peut avoir qu'un seul compte 'sa' ?
Avec le SECURITYMODE=SQL

Par contre, il est vraiment impossible d'empecher quiconque de faire un
OSQL -E ?

Cela serait très dangereux, non ?
Un petit .BAT avec OSQL -E DELETE et hop ! dommage !

Merci
Olivier


"Paul Bacelar" a écrit dans le message de
news:
> Doux rêves ;-)
> --
> Paul Bacelar
>
> "(( Olivier ))" a écrit dans le message de
> news:%23419bf$
> > Merci pour ta réponse, mais je veux justement être indépendant des
comptes
> > Windows.
> >
> > Je voudrais n'avoir qu'un seul compte autorisé à acceder au serveur et
> donc
> > aux bases.
> > C'est pour le déploiement en clientèle, je veux être SUR que personne,
non
> > personne ne puisse acceder au server SQL a part moi.
> >
> > Donc pas de sécurité intégré ni de OSQL -E
> >
> > Merci
> > Olivier
> >
> >
> >
> > "Pyroa" a écrit dans le


message
> de
> > news:
> > > pour acceder à une base SQL le mieux est d'utiliser la sécurité
intégré
> de
> > > windows.
> > > Pour ca il faut modifier la ConnectionString en :
> > >
> > > data source=PERTHMOC;Initial Catalog½1SQL;user ID=sa" />
> > >
> > > moi j'utilise ca ou la connection string générée par VS..NET
> > >
> > > :)
> > >
> > > "(( Olivier ))" a écrit dans le message de
> > > news:
> > > > Bonjour,
> > > > J'utilise MSDE 2000
> > > >
> > > > J'ai une Procédure Stockée : sp_DeleteAdresse qui est : DELETE
FROM
> > > > adresse
> > > > J'ai accordé les droits à l'utilisateur : GRANT ALL ON
> > sp_DeleteAdresse
> > > > to moimeme;
> > > >
> > > > Si j'utilise OSQL -U moimeme -P monpass, alors je peux executer la
> > > procédure
> > > > stockée.
> > > >
> > > > Par contre, en VB.NET, je me connecte bien avec mon compte, et là,
> > > > impossible d'executer la procédure stockée.
> > > > J'indique que tout marche impeccablement pour les autres


procédures
> > > stockée.
> > > >
> > > > Est-ce à cause du DELETE ? Pourquoi OSQL marche et pas en VB.NET ?
> > > >
> > > > Voiçi le code que j'utilise (qui est le même que les autres ... ?)
> > > >
> > > > Dim cString As String = "Initial Catalog=mabase;Data
Source=localhost;
> > > User
> > > > Id=moimeme; Password=monpass;"
> > > > Dim cnx As New SqlConnection(cString)
> > > > Dim cmd As New SqlCommand("sp_DeleteAdresse", cnx)
> > > > Try
> > > >
> > > > cnx.Open()
> > > > cmd.CommandType = CommandType.StoredProcedure
> > > > cmd.ExecuteNonQuery()
> > > > cnx.Close()
> > > >
> > > > Catch ex As Exception
> > > > MsgBox(ex.Message)
> > > >
> > > > End Try
> > > >
> > > > Merci pour l'aide car là, je coince !
> > > >
> > > > Olivier
> > > >
> > > >
> > >
> > >
> >
> >
>
>




Avatar
\(\( Olivier \)\)
Je sais, mais dans mon cas, c'est pas ca.

Je suis dev independant.
Mes clients n'ont aucun admin de quoi que se soit, il savent tous juste
démarrer le pc :-)
ils ne savent même pas que j'utilise tel ou tel SGBD. Ils ne connaissent
même pas les bases de données.
C'est moi qui install mon prog avec tout qui va bien, et c'est tout.
Je ne travaille pas pour des grands comptes ou autres assimilé, qui là, ok
je suis d'accord avec toi, on surrement des personnels qualifiés.

Seulement, par sécurité, je voudrais empecher quique se soit de faire un
OSQL -E
et donc de faire des catastrophes. Si non à quoi sert le compte 'sa' si
c'est si simple de faire un OSQL -E ?

Olivier



"Paul Bacelar" a écrit dans le message de
news:
Tu ne ferra jamais admettre à un client et surtout à son admin qu'il ne


doit
pas toucher à la base. S'il est compétent il sait qu'il doit faire des


back
up et autres taches. Le client est roi, ne l'oublie pas.
--
Paul Bacelar

"(( Olivier ))" a écrit dans le message de
news:
> Et pourquoi "Doux rèves" ?
> Vous me faites peur :-<
>
> Est-ce impossible ? S'il n'y a qu'un seul compte et un seul ?
> On peut avoir qu'un seul compte 'sa' ?
> Avec le SECURITYMODE=SQL
>
> Par contre, il est vraiment impossible d'empecher quiconque de faire un
> OSQL -E ?
>
> Cela serait très dangereux, non ?
> Un petit .BAT avec OSQL -E DELETE et hop ! dommage !
>
> Merci
> Olivier
>
>
> "Paul Bacelar" a écrit dans le message de
> news:
> > Doux rêves ;-)
> > --
> > Paul Bacelar
> >
> > "(( Olivier ))" a écrit dans le message de
> > news:%23419bf$
> > > Merci pour ta réponse, mais je veux justement être indépendant des
> comptes
> > > Windows.
> > >
> > > Je voudrais n'avoir qu'un seul compte autorisé à acceder au serveur


et
> > donc
> > > aux bases.
> > > C'est pour le déploiement en clientèle, je veux être SUR que


personne,
> non
> > > personne ne puisse acceder au server SQL a part moi.
> > >
> > > Donc pas de sécurité intégré ni de OSQL -E
> > >
> > > Merci
> > > Olivier
> > >
> > >
> > >
> > > "Pyroa" a écrit dans le
message
> > de
> > > news:
> > > > pour acceder à une base SQL le mieux est d'utiliser la sécurité
> intégré
> > de
> > > > windows.
> > > > Pour ca il faut modifier la ConnectionString en :
> > > >
> > > > data source=PERTHMOC;Initial Catalog½1SQL;user ID=sa" />
> > > >
> > > > moi j'utilise ca ou la connection string générée par VS..NET
> > > >
> > > > :)
> > > >
> > > > "(( Olivier ))" a écrit dans le message de
> > > > news:
> > > > > Bonjour,
> > > > > J'utilise MSDE 2000
> > > > >
> > > > > J'ai une Procédure Stockée : sp_DeleteAdresse qui est :


DELETE
> FROM
> > > > > adresse
> > > > > J'ai accordé les droits à l'utilisateur : GRANT ALL ON
> > > sp_DeleteAdresse
> > > > > to moimeme;
> > > > >
> > > > > Si j'utilise OSQL -U moimeme -P monpass, alors je peux executer


la
> > > > procédure
> > > > > stockée.
> > > > >
> > > > > Par contre, en VB.NET, je me connecte bien avec mon compte, et


là,
> > > > > impossible d'executer la procédure stockée.
> > > > > J'indique que tout marche impeccablement pour les autres
procédures
> > > > stockée.
> > > > >
> > > > > Est-ce à cause du DELETE ? Pourquoi OSQL marche et pas en VB.NET


?
> > > > >
> > > > > Voiçi le code que j'utilise (qui est le même que les autres ...


?)
> > > > >
> > > > > Dim cString As String = "Initial Catalog=mabase;Data
> Source=localhost;
> > > > User
> > > > > Id=moimeme; Password=monpass;"
> > > > > Dim cnx As New SqlConnection(cString)
> > > > > Dim cmd As New SqlCommand("sp_DeleteAdresse", cnx)
> > > > > Try
> > > > >
> > > > > cnx.Open()
> > > > > cmd.CommandType = CommandType.StoredProcedure
> > > > > cmd.ExecuteNonQuery()
> > > > > cnx.Close()
> > > > >
> > > > > Catch ex As Exception
> > > > > MsgBox(ex.Message)
> > > > >
> > > > > End Try
> > > > >
> > > > > Merci pour l'aide car là, je coince !
> > > > >
> > > > > Olivier
> > > > >
> > > > >
> > > >
> > > >
> > >
> > >
> >
> >
>
>




1 2