2014-02-11 71 views
0

我目前負責維護舊版軟件。目前,我在與SQLDMO問題如下:SQLDMO - [Microsoft] [ODBC SQL Server驅動程序] [SQL Server]'*'附近語法不正確

//This function is used to create sql query for drop and create table 
Function GenerateScript(ByVal pObjectType As String, ByVal pObjectName As String) As String 
    Dim sSQL As String = "" 
    If (pObjectType.ToLower() = "user") Then 
     If Not IsNothing(db.Users.Item(pObjectName)) Then 
      sSQL = db.Users.Item(pObjectName).Script(SQLDMO.SQLDMO_SCRIPT_TYPE.SQLDMOScript_Drops) 
      sSQL = sSQL + db.Users.Item(pObjectName).Script() 
     End If 
    Else 
     If Not IsNothing(db.GetObjectByName(pObjectName)) Then 

      sSQL = db.GetObjectByName(pObjectName).Script(SQLDMO.SQLDMO_SCRIPT_TYPE.SQLDMOScript_Drops) 

      sSQL = sSQL + db.GetObjectByName(pObjectName).Script() //Error occur here 

     End If 
    End If 



    Return sSQL 
End Function 

有我的數據庫中約20桌,但只有其中的一些重現例外:

[Microsoft][ODBC SQL Server Driver][SQL Server]Incorrect syntax near '*'. 

請告訴我是什麼導致問題如何解決它

更新 我試着用2個數據庫,並發現它運行一個數據庫確定,但產生的問題在其他。但是那些數據庫具有相同的表結構,那麼爲什麼錯誤發生在一個數據庫中而不會發生在另一個數據庫中呢?

+1

請問您爲什麼要提出我的問題,以便我可以避免在未來犯同樣的錯誤 –

回答

0

解決

這是導致問題的數據庫的兼容。它運行與SQL Server 2005(90)兼容的數據庫,並與SQL Server 2008或更高版本兼容的數據庫產生錯誤。我需要做的只是將數據庫兼容性改爲2005

相關問題