2012-01-23 23 views
2

我想知道,在SQL Server 2008中是否有任何反射支持,就像c#支持反射一樣。基本上我很好奇SQL Server如何實現我們所有的(where,orderby,exists)子句。它將如何在幕後實施所有這些。在SQL Server 2008中的反思?

+1

SQL Server的T-SQL語言是**不是** .NET,並且沒有像Reflection這樣的東西。 SQL Server有*系統目錄視圖*描述各種數據庫對象(我猜想最接近「反射」) –

回答

2

不久之前,如果您將SQLServer與大多數面向對象的語言進行比較,那麼您會對SQLServer揭示更多關於其內部工作的事實感到震驚。

它固有的SQL和事務數據庫的概念,很多關於它們如何工作的信息都存儲在數據庫本身中。例如,所有表都由系統數據庫中的表中的行表示,所有列,存儲過程等也是如此。

但是,現在SQLServer在這方面並沒有達到C#的程度,您可能會感到相反的結論。

我們可以用一種類比的方式來描述,當你瀏覽關於類的反射信息時,你會在德克里克人的意義上點擊「原子」,這是無法進一步分解的東西。要麼它將由核心IL指令處理,要麼將在外部定義,並且無論哪種方式,您都可以看到更多的「進入」實施。 SQLServer有更多的功能,你不能同行看看他們如何工作。NET

你可能喜歡看看PostgreSQL,這進一步瞭解它的許多功能是如何可見的。