As I recently got asked for it in a talk, this piece of code gives you all the Views in a database that are currently broken.
This could be useful for „what if“-scenarios when playing with your metadata.
Da ich kürzlich in einem Vortrag nach gefragt wurde: Dieses kleine Codebeispiel gibt alle Views in einer Datenbank aus, welche derzeit nicht sauber abgefragt werden können.
Dies könnte zum Beispiel in einem „Was wäre wenn“-Szenario sinnvoll sein, wenn es darum geht, die Auswirkungen von veränderten Metadaten zu bewerten.
<Biml xmlns="http://schemas.varigence.com/biml.xsd"> <Connections> <OleDbConnection Name="Target" ConnectionString="Data Source=.;initial catalog=MyBiml_ViewCheck;provider=SQLNCLI11;integrated security=SSPI"></OleDbConnection> </Connections> </Biml>
<#@ template language="VB" tier="2" #> <Biml xmlns="http://schemas.varigence.com/biml.xsd"/> <# Dim ImportResult as ImportResults = Rootnode.connections("Target").GetDatabaseSchema for each v as Asttablenode in importresult.tablenodes.where(function(c) c.View IsNot Nothing) try ExternalDataAccess.GetDataTable(Rootnode.connections("Target").RenderedConnectionString, "SELECT TOP 0 * from (" & v.view.selectsql & ") a").Clear() catch ex as exception #> <!-- <#= v.name #>: <#= ex.message.replace(Environment.NewLine,", ") #> --> <#end try next #>
Any questions or comments? We’d love to hear from you at !
Further Information on Biml in English can be found on our English Biml Page.
Happy Biml’ing!
Haben Sie hierzu Fragen oder Anmerkungen? Wir freuen uns auf Ihren Input unter !
Weitere Informationen zu Biml, einschließlich Terminen und Blog Beiträgen finden Sie auch auf unserer Biml Seite.
Viel Spaß beim Biml’n!