Products

Solutions

Resources

Partners

Community

Blog

About

QA

Ideas Test

New Community Website

Ordinarily, you'd be at the right spot, but we've recently launched a brand new community website... For the community, by the community.

Yay... Take Me to the Community!

Welcome to the DNN Community Forums, your preferred source of online community support for all things related to DNN.
In order to participate you must be a registered DNNizen

HomeHomeGetting StartedGetting StartedInstalling DNN ...Installing DNN ...The stored procedure The stored procedure 'dbo.GetTabByName' doesn't exist.
Previous
 
Next
New Post
1/6/2006 11:41 PM
 
I was in the process of installing DNN 4.0.2 and have run into this error. It occurs here during the install process...

Installation Status Report

00:00:00.010 - Installing Version: 3.1.0
00:00:00.010 - Installing Script: DotNetNuke.SetUp.SqlDataProvider
00:00:00.190 - Installing Script: DotNetNuke.Schema.SqlDataProvider
00:00:04.005 - Installing Script: DotNetNuke.Data.SqlDataProvider
00:00:07.811 - Installing MemberRole Provider:
00:00:07.811 - Executing InstallCommon.sql
00:00:08.231 - Executing InstallMembership.sql
00:00:08.802 - Executing InstallProfile.sql
00:00:08.952 - Executing InstallRoles.sql
00:00:09.213 - Upgrading to Version: 3.1.1
00:00:10.074 - Upgrading to Version: 3.2.0
00:00:10.144 - Upgrading to Version: 4.0.0
00:00:10.394 - Upgrading to Version: 4.0.1
00:00:10.465 - Upgrading to Version: 4.0.2
00:00:10.485 - Performing General Upgrades


This is not the first time I have installed DNN but I have never run into this error before. I have double checked all of the web.config settings, the connection strings, permissions, etc. Everything looks good.

Reviewing the logs generated by the various scripts that have run, the stored proc GetTabByName definately threw an error. The following is an excerpt from the 03.01.01.log file...

System.Data.SqlClient.SqlException: Invalid column name 'FileID'.
Invalid column name 'FileID'.
Invalid column name 'TabId'.
Invalid column name 'PortalId'.
Invalid column name 'PortalId'.
   at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection)
   at System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection)
   at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj)
   at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)
   at System.Data.SqlClient.SqlCommand.RunExecuteNonQueryTds(String methodName, Boolean async)
   at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(DbAsyncResult result, String methodName, Boolean sendToPipe)
   at System.Data.SqlClient.SqlCommand.ExecuteNonQuery()
   at Microsoft.ApplicationBlocks.Data.SqlHelper.ExecuteNonQuery(SqlConnection connection, CommandType commandType, String commandText, SqlParameter[] commandParameters)
   at Microsoft.ApplicationBlocks.Data.SqlHelper.ExecuteNonQuery(String connectionString, CommandType commandType, String commandText, SqlParameter[] commandParameters)
   at Microsoft.ApplicationBlocks.Data.SqlHelper.ExecuteNonQuery(String connectionString, CommandType commandType, String commandText)
   at DotNetNuke.Data.SqlDataProvider.ExecuteScript(String Script, Boolean UseTransactions)


CREATE procedure dbo.GetTabByName

@TabName  nvarchar(50),
@PortalId int

as

select TabID,
TabOrder,
Tabs.PortalID,
TabName,
IsVisible,
ParentId,
[Level],
DisableLink,
Title,
Description,
KeyWords,
IsDeleted,
Url,
SkinSrc,
ContainerSrc,
TabPath,
StartDate,
EndDate,
 'IconFile' = case when Files_1.FileName is null then Tabs.IconFile else Files_1.Folder + Files_1.FileName end,
'HasChildren' = case when exists (select 1 from Tabs T2 where T2.ParentId = Tabs.TabId) then 'true' else 'false' end,
RefreshInterval,
PageHeadText
from   Tabs
left outer join Files on Tabs.IconFile = 'fileid=' + convert(varchar,Files.FileID)
LEFT OUTER JOIN Files Files_1 ON Tabs.IconFile = 'fileid=' + convert(varchar,Files_1.FileID)
where  TabName = @TabName
and    ((Tabs.PortalId = @PortalId) or (@PortalId is null AND Tabs.PortalId is null))
order by TabID

After pulling my hair out trying to figure out what was wrong, I noticed that the case used for variables, table and column names is inconsistant. A quick check of the *shared* SQL 2000 install I am using revealed that it is in fact configured with a server collation setting that is case sensitive where my other installations were not .

After dropping the database and recreating it using a non case sensitive collation order, the install completed quickly and completely.
 
Previous
 
Next
HomeHomeGetting StartedGetting StartedInstalling DNN ...Installing DNN ...The stored procedure The stored procedure 'dbo.GetTabByName' doesn't exist.


These Forums are dedicated to discussion of DNN Platform and Evoq Solutions.

For the benefit of the community and to protect the integrity of the ecosystem, please observe the following posting guidelines:

  1. No Advertising. This includes promotion of commercial and non-commercial products or services which are not directly related to DNN.
  2. No vendor trolling / poaching. If someone posts about a vendor issue, allow the vendor or other customers to respond. Any post that looks like trolling / poaching will be removed.
  3. Discussion or promotion of DNN Platform product releases under a different brand name are strictly prohibited.
  4. No Flaming or Trolling.
  5. No Profanity, Racism, or Prejudice.
  6. Site Moderators have the final word on approving / removing a thread or post or comment.
  7. English language posting only, please.
What is Liquid Content?
Find Out
What is Liquid Content?
Find Out
What is Liquid Content?
Find Out