Jet 4 does not support OleDb.OleDbSchemaGuid.Procedure_Parameters, alternatives to determine parameters of a stored proc in MS-Access?

I am trying to access Database Schema-Information via VB.NET 2003, ADO.NET.
Apparently Jet 4 (as I found described for Jet 3.51 in MS-KB: http://support.microsoft.com/kb/q191356/ ) does not support "procedure_parameters"-option in OleDbSchemaGuid:

 _conn.GetOleDbSchemaTable(OleDb.OleDbSchemaGuid.Procedure_Parameters, New Object() {})

I can not find another possibility to know, which parameters should be supplied to a procedure in MS-Access.
Any help deeply appreciated!

Regards, Duc
Duc_de_BelfortAsked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

Arthur_WoodCommented:
Access does not support STORED PROCEDURES in the same sense that SQL Server or Oracle use the term 'Stored Procedure'

What are you attempting to do?

and the Jet Engine does not directly support getting the Schema from an MDB in any case.

AW
0
Duc_de_BelfortAuthor Commented:
My goal is to create a flexible Query-Tool in a .NET application. So I built a form with a textbox, a datagrid and a button, when the button is clicked I try to execute the SQLString in the textbox and fill the datagrid with the result dataset.

Example, I create this view in Northwind, named myParamView:
PARAMETERS sCountry TEXT;
SELECT * FROM Orders
WHERE (((Orders.ShipCountry)=sCountry));

When the user enters the name of this view and leaves out the parameter, I want to give him a feedback to enter the appropriate parameter.

I hope I was clear enough...

Duc
0
stevbeCommented:
I think you can instantiate a command object based on the query and then iterate the parameters collection of it.

Steve
0
Ultimate Tool Kit for Technology Solution Provider

Broken down into practical pointers and step-by-step instructions, the IT Service Excellence Tool Kit delivers expert advice for technology solution providers. Get your free copy now.

Duc_de_BelfortAuthor Commented:
Steve,
I'm afraid your solution doesn't work. I interpreted your solution similar to:

Dim testcmd As New OleDb.OleDbCommand(myParamView, _conn)
testcmd.Connection.Open()
Debug.WriteLine(testcmd.Parameters.Count)
testcmd.Connection.Close()

The parameters collection does not contain any item...
:-(

Duc
0
Duc_de_BelfortAuthor Commented:
Just increasing points.... :-)
0
stevbeCommented:
Sorry, ADODB automatically refreshes the parameters collection for you and it sounds like OLEDB does not so you will have to issue the .Refresh directive before getting the count.

cmd.Parameters.Refresh
cmd.Parameters.Count

or to loop through them ...

cmd.Parameters.Refresh
For Each prm In cmd.Parameters
 ...
End If

Steve
0
Duc_de_BelfortAuthor Commented:
I don't have the possibility to refresh the parameters collection:
refresh is not a member of oledb.oledbParameterCollection....

still :-(

Andri
0
Duc_de_BelfortAuthor Commented:
Still no solution for this problem, so I will wait ....

:-(
0
moduloCommented:
PAQed with points refunded (250)

modulo
Community Support Moderator
0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Microsoft Access

From novice to tech pro — start learning today.

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.