tags:

views:

162

answers:

4

I am receiving a message from a commercial program stating that the "LogMessage" stored procedure is not found. There does not appear to be a stored procedure called LogMessage in the associated MS SQLServer 2000 database. What can I do to track down the missing procedure, other than calling the company?

+1  A: 

The reason you couldn't find it is because it's not there. Unless you have the original proc, you're going to have to call the company.

Granted, you could take a stab at creating the proc, yourself. But why bother when somebody already has the original proc?

Is this a fresh install of the commercial product? If so, this is completely their responsibility.

senfo
Can you add Jen A's comment re permissions? Then I can select this as the best answer.
It's been a while since I've worked with SQL 2000, but SQL 2005 definitely has a distinct error message for indicating that the permission was denied. Have you verified that the same error message is generated in SQL 2000 if the user doesn't have the proper permission?I just want to verify! ;-)
senfo
+1  A: 

Occasionally you will also get this message if you do not have permissions to access the stored procedure. Log in as 'sa' or equivalent to verify that the proc is indeed missing.

Jen A
A: 

LogMessage seems pretty self-explanatory. You could probably take a stab at creating one yourself just to see what happens, if you can't easily get the real thing.

Create a new table called LoggedMessages and just insert to the table when the proc is called. Then see what pops in.

Kind of hacky, but given that it's a logging mechanism, which is tangential to the main features of the app, you could give it a try.

rice
A: 

Well, if the company is out of business, unhelpful, etc, or your in a hurry, then attach a SQL trace, look at what kind and how many parameters are being passed and create a stored procedure with that name and signature. It may take some experimentation to get the signature right dependening on the data access API being used. The body of the stored procedure would be empty. Since this is just logging, presumably this will let the rest of the app run, but logging would be off.

Make sure that the rest of the schema is there. Obviously if the entire schema is missing, then this trick won't work.

If you have a maintenance agreement with the vendor go holler at them, that's what maintenance and support is for.

MatthewMartin