我尝试从我们的公司Azure SQL-Database生成脚本。正如我在使用Management Studio Client连接数据库两周前所做的那样,并在相关数据库的上下文中运行“生成脚本” - 向导。向导失败了“从'db'获取对象列表。”并指出了以下Stack Trace:
Microsoft.SqlServer.Management.SqlScriptPublish.SqlScriptPublishException:编写对象脚本时发生错误。 ---> System.InvalidCastException:Die angegebene Umwandlungistungültig。 Microsoft的Microsoft.SqlServer.Management.Smo.PropertyDispatcher.SetValue(Int32索引,对象值)中的Microsoft.SqlServer.Management.Smo.Table.Microsoft.SqlServer.Management.Smo.IPropertyDataDispatch.SetPropertyValue(Int32索引,对象值) Microsoft.SqlServer.Management.Smo上的Microsoft.SqlServer.Management.Smo.SqlSmoObject.AddObjectPropsFromDataReader(IDataReader reader,Boolean skipIfDirty,Int32 startColIdx,Int32 endColIdx)中的.sqlServer.Management.Smo.PropertyCollection.SetValue(Int32索引,对象值) .SqlSmoObject.ImplInitialize(String [] fields,OrderBy [] orderby)at Microsoft.SqlServer.Management.Smo.SqlSmoObject.OnPropertyMissing(String propname,Boolean useDefaultValue)at Microsoft.SqlServer.Management.Smo.PropertyCollection.RetrieveProperty(Int32 index,在Microsoft.SqlServer.Management.Smo.SqlSmoObject.GetPropertyOptional(String propName)的Microsoft.SqlServer.Management.Smo.PropertyCollection.GetPropertyObject(Int32索引)处的布尔值useDefaultOnMissingValue Microsoft.SqlServer上的Microsoft.SqlServer.Management.Management.Smo.Column.GetPropagateInfo(PropagateAction操作)中的Microsoft.SqlServer.Management.Smo.Column.EmbedDefaultConstraints(),位于Microsoft.SqlServer的Microsoft.SqlServer.Management.Smo.SqlSmoObject.GetPropagateInfoForDiscovery(PropagateAction操作)。在Microsoft.SqlServer.Management.Smo.ScriptMaker的Microsoft.SqlServer.Management.Smo.SmoDependencyDiscoverer.Discover(IEnumerable 1 urns) at Microsoft.SqlServer.Management.Smo.ScriptMaker.Discover(IEnumerable
1个urns)上的Management.Smo.SmoDependencyDiscoverer.GetScriptableChildren(List 1 urns) at Microsoft.SqlServer.Management.Smo.ScriptMaker.ScriptWorker(List
1 discoveredUrns)。 Microsoft.SqlServer.Management.SqlScriptPublish.SqlScriptGenerator.DoScript(ScriptOutputOptions outputOptions)上的Microsoft.SqlServer.Management.Smo.ScriptMaker.Script(Urn [] urns,ISmoScriptWriter writer)中的DiscoverOrderScript(IEnumerable var startPoint = new { Latitude = 1.123, Longitude = 12.3 };
var closest = entities.Something.OrderBy(x => 12742 * SqlFunctions.Asin(SqlFunctions.SquareRoot(SqlFunctions.Sin(((SqlFunctions.Pi() / 180) * (x.Latitude - startPoint.Latitude)) / 2) * SqlFunctions.Sin(((SqlFunctions.Pi() / 180) * (x.Latitude - startPoint.Latitude)) / 2) +
SqlFunctions.Cos((SqlFunctions.Pi() / 180) * startPoint.Latitude) * SqlFunctions.Cos((SqlFunctions.Pi() / 180) * (x.Latitude)) *
SqlFunctions.Sin(((SqlFunctions.Pi() / 180) * (x.Longitude - startPoint.Longitude)) / 2) * SqlFunctions.Sin(((SqlFunctions.Pi() / 180) * (x.Longitude - startPoint.Longitude)) / 2)))).Take(5);
1个urns,ISmoScriptWriter writer) )---内部异常堆栈跟踪的结束---在System.ComponentModel.BackgroundWorker.OnDo的Microsoft.SqlServer.Management.SqlScriptPublish.GeneratePublishPage.worker_DoWork(Object sender,DoWorkEventArgs e)在System.ComponentModel.BackgroundWorker.WorkerThreadStart(对象参数)上工作(DoWorkEventArgs e)
@@ VERSION-Query返回以下记录:
Microsoft SQL Azure(RTM) - 11.0.9231.13 2015年7月15日11:58:32 版权所有(c)Microsoft Corporation
以下是从SSMS-Help复制的一些其他信息:
Microsoft SQL Server Management Studio 12.0.4100.1 Microsoft Analysis Services客户端工具12.0.4100.1 Microsoft数据访问组件(MDAC)6.1.7601.17514 Microsoft MSXML 3.0 6.0 Microsoft Internet Explorer 9.11.9600.17843 Microsoft .NET Framework 4.0.30319.42000 操作系统6.1.7601
你能告诉我这里出了什么问题吗?
先谢谢。
艾伦
答案 0 :(得分:3)
我遇到了同样的问题。为了解决我切换到sql server可以编写的另一个目录。
为我工作。
我希望您解决问题,因为错误信息不明确。
答案 1 :(得分:2)
检查服务器可用空间。 我通过在服务器上释放可用空间解决了同样的问题。
答案 2 :(得分:1)
确保可以写入该文件夹中的文件。就我而言,我将脚本保存在C:\驱动器中,例如c:\ script.sql,在更改到另一个文件夹后,它可以正常工作。