#sql-server #ssms
#sql-server #ssms
Вопрос:
Я использую функцию копирования базы данных в SSMS. Исходный экземпляр — v 2012, целевой экземпляр — v 2019.
Я могу скопировать другие базы данных из исходного экземпляра в целевой экземпляр. В этой конкретной базе данных произошел сбой.
Это сообщение от средства просмотра событий Windows на целевом компьютере. «InnerException—> Недопустимое имя столбца ‘Description’.» не имеет смысла, потому что в одной из таблиц исходной базы данных есть столбец с таким именем. Я не могу сказать, на какую таблицу он жалуется, из сообщения в журнале событий Windows.
В исходной базе данных есть одна таблица со столбцом под названием Description:
Event Name: OnError
Message: An error occurred while transferring data. See the inner exception for details.
StackTrace: at Microsoft.SqlServer.Management.Smo.Transfer.TransferData()
at Microsoft.SqlServer.Dts.Tasks.TransferObjectsTask.TransferObjectsTask.TransferDatabasesUsingSMOTransfer()
InnerException-->Invalid column name 'Description'.
StackTrace: at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose)
at System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Booleanamp; dataReady)
at System.Data.SqlClient.SqlCommand.RunExecuteNonQueryTds(String methodName, Boolean async, Int32 timeout, Boolean asyncWrite)
at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(TaskCompletionSource`1 completion, String methodName, Boolean sendToPipe, Int32 timeout, Booleanamp; usedCache, Boolean asyncWrite, Boolean inRetry)
at System.Data.SqlClient.SqlCommand.ExecuteNonQuery()
at Microsoft.SqlServer.Management.Smo.Transfer.ExecuteStatements(SqlConnection destinationConnection, IEnumerable`1 statements, SqlTransaction transaction)
at Microsoft.SqlServer.Management.Smo.Transfer.TransferData()
Operator: NT ServiceSQLAgent$MSSQLSERVER2019
Source Name: CDW_IL-SERVER-001_MSSQLSERVER2012_IL-SERVER-002_MSSQLSERVER2019_8
Source ID: {6FCAF562-8C02-4A7F-BDE0-9B985BE99BCB}
Execution ID: {C9D1672E-366F-49C2-B98F-903B080DF36A}
Start Time: 8/14/2020 9:11:21 AM
End Time: 8/14/2020 9:11:21 AM
Data Code: 0
Комментарии:
1. youtube.com/watch?v=QVwxEX5OkqI
2.
Description
это зарезервированное слово. Похоже, мастер копирования базы данных неправильно использует идентификаторы, заключенные в кавычки. Попробуйте использовать другой инструмент для копирования этой базы данных.