SQLDMO - [Microsoft] [ODBC SQL Server驱动程序] [SQL Server]'*'附近语法不正确
问题描述:
我目前负责维护旧版软件。目前,我在与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个数据库,并发现它运行一个数据库确定,但产生的问题在其他。但是那些数据库具有相同的表结构,那么为什么错误发生在一个数据库中而不会发生在另一个数据库中呢?
答
解决
这是导致问题的数据库的兼容。它运行与SQL Server 2005(90)兼容的数据库,并与SQL Server 2008或更高版本兼容的数据库产生错误。我需要做的只是将数据库兼容性改为2005
请问您为什么要提出我的问题,以便我可以避免在未来犯同样的错误 –