Hi guys,
Ik kom er niet meer aan uit maar in elk geval heb er nu ondertussen 3 uur zoek en trail&error werk op zitten en wordt het wat moe. Ik probeer de data op te halen van mijn database via een variabele tabel naam die ik meegeef aan een stored procedure.
Stored Procedure:
C# code:
En ik blijf de error krijgen:
++Procedure or function 'showTable' expects parameter '@v_tableName', which was not supplied.++
Weet iemand wat ik fout doe? Heb al talloze dingen geprobeerd ie ik gevonden had via Google en telkens leek de oplossing dynamische SQL te gebruiken maar zoals je ziet helpt het bij mij niet echt...
Bedankt alvast. Ik ga verder proberen ondertussen.
EDIT:
Oké, sorry voor het vervelen maar de fout zit blijkbaar niet op de plaats waar hij het aangeeft. De variabele wordt wel correct doorgegeven en de gegevens worden correct opgehaald enkel gaat het fout op volgende lijn:
dataAdapter.Fill(data);
Kan voor mijn part dicht.
EDIT2:
Toch niet
.
Want als ik er het volgende van maak dan werkt het wel zoals het hoor...
Ik snap er niets van.
Ik kom er niet meer aan uit maar in elk geval heb er nu ondertussen 3 uur zoek en trail&error werk op zitten en wordt het wat moe. Ik probeer de data op te halen van mijn database via een variabele tabel naam die ik meegeef aan een stored procedure.
Stored Procedure:
SQL:
1
2
3
4
5
6
7
| ALTER PROCEDURE [dbo].[showTable] ( @v_tableName VARCHAR(32) ) AS EXEC('SELECT * FROM' + @v_tableName) RETURN |
C# code:
C#:
1
2
3
4
5
6
7
8
9
10
11
12
| DataSet data = new DataSet(); if (this.makeConnection() == true) { //get all data thisCommand.CommandText = "showTable"; thisCommand.CommandType = CommandType.StoredProcedure; thisCommand.Parameters.AddWithValue("@v_tableName", tableName); SqlDataAdapter dataAdapter = new SqlDataAdapter(thisCommand.CommandText, thisConnection); dataAdapter.Fill(data); closeConnection(); return data; } |
En ik blijf de error krijgen:
++Procedure or function 'showTable' expects parameter '@v_tableName', which was not supplied.++
Weet iemand wat ik fout doe? Heb al talloze dingen geprobeerd ie ik gevonden had via Google en telkens leek de oplossing dynamische SQL te gebruiken maar zoals je ziet helpt het bij mij niet echt...
Bedankt alvast. Ik ga verder proberen ondertussen.
EDIT:
Oké, sorry voor het vervelen maar de fout zit blijkbaar niet op de plaats waar hij het aangeeft. De variabele wordt wel correct doorgegeven en de gegevens worden correct opgehaald enkel gaat het fout op volgende lijn:
dataAdapter.Fill(data);
Kan voor mijn part dicht.
EDIT2:
Toch niet
Want als ik er het volgende van maak dan werkt het wel zoals het hoor...
C#:
1
2
3
4
5
| thisCommand.CommandText = "SELECT * FROM [" + tableName +"]"; SqlDataAdapter dataAdapter = new SqlDataAdapter(thisCommand.CommandText, thisConnection); dataAdapter.Fill(data); closeConnection(); return data; |
Ik snap er niets van.
[ Voor 18% gewijzigd door 430xlkod op 23-01-2012 17:51 ]