Showing posts with label SQL 2012. Show all posts
Showing posts with label SQL 2012. Show all posts

Tuesday, June 4, 2013

Error: "Incorrect syntax near ')'." When Passing function to a Stored procedure

Let us say I have a requirement to pass the current date time to a stored procedure. 
For example let us consider the following SP
 
CREATE PROCEDURE [dbo].[DisplayDate](@Curr_Date DATETIME)

AS SELECT @Curr_Date
 
When I try to execute it with the parameter as getdate(). I would receive the following error

exec [DisplayDate] getdate()

Msg 102, Level 15, State 1, Line 1

Incorrect syntax near ')'.

 
Theorically it should have worked. There is a Limitation on the way we can use it with a stored procedures.

According to the Books online article on
Parameters (Database Engine)
http://technet.microsoft.com/en-us/library/ms190248(v=SQL.105).aspx

"When a stored procedure or function is executed, input parameters can either have their value set to a constant or use the value of a variable. Output parameters and return codes must return their values into a variable. Parameters and return codes can exchange data values with either Transact-SQL variables or application variables."

So it is clear that we cannot use any functions directly with an stored procedure.
So we have to look at other alternatives.

For example
The above stored procedure can be rewritten as
CREATE PROCEDURE [dbo].[DisplayDate]

AS SELECT Getdate()

So we need to consider the fact that we cannot pass the function directly to the stored procedure instead we have to either use it in variable or use the function directly.

 

Friday, May 31, 2013

Error: Unable to load rule class 'ASSPIExistingFarmUnconfiguredWarningCheck Error code 0x84BE0004.” while installing the SQL server 2012.


 

How to solve the Error


“Unable to load rule class 'ASSPIExistingFarmUnconfiguredWarningCheck


Error code 0x84BE0004.” while installing the SQL server 2012.


 

I was given a task to install the SQL server 2012 on the machine. I was very enthusiastic in doing the installation. I ignored the fact that my C drive was running out of disk space. As expected the installation failed. The installation was not able to even rollback to the previous state.  I had to kill the installation.



Since the cause for failure was known, I started adding some disk space to the drive on my virtual machine. Also I cleaned up the failed install. Ensured that all the SQL 2012 components were cleaned up successfully.

 

I started with the installation of SQL 2012 once again. Now I faced a new error during the installation as soon I was done with feature selection page and clicked on the next.

I got the following error

 

“Unable to load rule class 'ASSPIExistingFarmUnconfiguredWarningCheck

Error code 0x84BE0004.”

 

Since I had previous experience in troubleshooting the installation issue with SQL server. I started to look into the SQL server setup logs

 

The details.txt showed the following errors

 

(08) 2013-05-30 15:13:41 Slp: Send result to channel : RulesEngineNotificationChannel

(08) 2013-05-30 15:13:41 Slp: Loading rule: ASSPIExistingFarmUnconfiguredWarningCheck

(01) 2013-05-30 15:13:41 Slp: Error: Action "Microsoft.SqlServer.Configuration.UIExtension.WaypointAction" threw an exception during execution.

(01) 2013-05-30 15:13:41 Slp: Microsoft.SqlServer.Setup.Chainer.Workflow.ActionExecutionException: Thread was being aborted. ---> System.Threading.ThreadAbortException: Thread was being aborted.

(01) 2013-05-30 15:13:41 Slp:    at System.Threading.WaitHandle.WaitOneNative(SafeWaitHandle waitHandle, UInt32 millisecondsTimeout, Boolean hasThreadAffinity, Boolean exitContext)

(01) 2013-05-30 15:13:41 Slp:    at System.Threading.WaitHandle.WaitOne(Int64 timeout, Boolean exitContext)

(01) 2013-05-30 15:13:41 Slp:    at Microsoft.SqlServer.Configuration.UIExtension.Request.Wait()

(01) 2013-05-30 15:13:41 Slp:    at Microsoft.SqlServer.Configuration.UIExtension.UserInterfaceProxy.NavigateToWaypoint(String moniker)

(01) 2013-05-30 15:13:41 Slp:    at Microsoft.SqlServer.Configuration.UIExtension.WaypointAction.ExecuteAction(String actionId)

(01) 2013-05-30 15:13:41 Slp:    at Microsoft.SqlServer.Chainer.Infrastructure.Action.Execute(String actionId, TextWriter errorStream)

(01) 2013-05-30 15:13:41 Slp:    at Microsoft.SqlServer.Setup.Chainer.Workflow.ActionInvocation.ExecuteActionHelper(TextWriter statusStream, ISequencedAction actionToRun, ServiceContainer context)

(01) 2013-05-30 15:13:41 Slp:    --- End of inner exception stack trace ---

(01) 2013-05-30 15:13:41 Slp:    at Microsoft.SqlServer.Setup.Chainer.Workflow.ActionInvocation.ExecuteActionHelper(TextWriter statusStream, ISequencedAction actionToRun, ServiceContainer context)

(01) 2013-05-30 15:13:41 Slp:    at Microsoft.SqlServer.Setup.Chainer.Workflow.ActionInvocation.ExecuteActionWithRetryHelper(WorkflowObject metaDb, ActionKey action, ActionMetadata actionMetadata, TextWriter statusStream)

(01) 2013-05-30 15:13:41 Slp:    at Microsoft.SqlServer.Setup.Chainer.Workflow.ActionInvocation.InvokeAction(WorkflowObject metabase, TextWriter statusStream)

(01) 2013-05-30 15:13:41 Slp:    at Microsoft.SqlServer.Setup.Chainer.Workflow.PendingActions.InvokeActions(WorkflowObject metaDb, TextWriter loggingStream)

(01) 2013-05-30 15:13:41 Slp:    at Microsoft.SqlServer.Setup.Chainer.Workflow.ActionEngine.RunActionQueue()

 Now I started to look into what is the rule ASSPIExistingFarmUnconfiguredWarningCheck corresponding to  found this in the SystemConfigurationCheck_Report.htm



ASSPIExistingFarmUnconfiguredWarningCheck
 Checks whether SharePoint is configured, and if not, recommends adding the Database Engine to the installation.
Not applicable
This rule does not apply to your system configuration









Well this check is if sharepoint is configured on the db server. But I do not have sharepoint configured.

I tried to check if anyone else is facing the same issue but unfortunately I was not able find many hits on this. So I started to check what next step to resolve this issue is. I started the SQL server installation and selected the repair

 

I ran through the set up wizard. The fact that the installation was running proves that even though I had removed the components from my server, still there were some left overs which may be due to the low disk condition the rollback my not have happened correctly.

Once the repair completed I was able to run the installation without any issues.

 
Thank you for you time in viewing this blog. Please feel free comment with your questions regarding this article.