J'ai deux ou trois questions que je dois exécuter un à un serveur lié et un pas comme çaDataReader déjà ouvert une erreur lors d'une tentative d'exécuter deux requêtes
Dim InvestorLookup As String = "DECLARE @investor varchar(10), @linkedserver varchar(25), @sql varchar(1000) "
InvestorLookup += "SELECT @investor = '" & investor & "', @linkedserver = '" & db & "', "
InvestorLookup += "@sql = 'SELECT * FROM OPENQUERY(' [email protected] + ', ''SELECT * FROM db WHERE investor = ' + @investor + ' '')' EXEC(@sql)"
Dim queryInvestorLookup As SqlCommand = New SqlCommand(InvestorLookup , conn)
Dim BondNoDR As SqlDataReader = queryInvestorLookup.ExecuteReader()
Dim PasswordCheck As String = "DECLARE @investor varchar(10), @password varchar(20), @linkedserver varchar(25), @sql varchar(1000) "
PasswordCheck += "SELECT @investor = '" + investor + "', @password = '" + password + "', @server = '" + db2 + "', "
PasswordCheck += "@sql = 'SELECT * FROM @server WHERE investor = @investor AND password = ' + @password + ' '' EXEC(@sql)"
Dim queryPasswordCheck As SqlCommand = New SqlCommand(PasswordCheck, conn)
Dim PasswordDR As SqlDataReader = queryPasswordCheck.ExecuteReader()
Pour autant que je peux dire de débogage du requêtes à la fois fonctionnent comme ils le devraient, mais je reçois l'erreur
There is already an open DataReader associated with this Command which must be closed first.
Est-il possible d'exécuter deux requêtes dans deux DataReaders différentes. J'ai besoin de référencer plus tard chaque DataReader et de sélectionner les valeurs de chacun.
En fait, je crois que le support MARS a été introduit avec SQL 2005 –
Vous avez raison! J'ai édité ma réponse. Merci! – tucaz
Comment puis-je savoir sur quel serveur SQL je suis? –