如何方便的取得資料庫的架構資訊

2021-04-09 05:28:34 字數 911 閱讀 1478

在進行資料庫的操作時,我們經常需要從資料庫讀取架構資訊,以前我都是用sql語句進行的。這方便資料不全,很多需要自己猜測,或是用sqlserver的事件***進行跟蹤,看看sqlserver管理器是如何做的。

在.net裡就方便了。dbconnection物件有乙個getschema方法,非常強大,可以獲得資料庫的很多架構資訊,一般對我們來說都夠用了。不過簡單的使用,是只用他來返回表名稱,如下所示:

string restrictions = new string[4];

restrictions[3] = "base table"

datatable table = connection.getschema("tables", restrictions);

如以上這段**就可以把資料庫中所有的使用者表的架構資訊都填充到datatable中。

對於tables返回如下資訊

對於其它架構資訊,請參看msdn中的相關說明。

對於每一張表,獲得架構資訊的最方便的方法莫過於使用dataadapter.fillschema方法,示例如下:

sqlcommand cmd = connection.createcommand();

cmd.commandtext = "select * from " + tblsection.tablename + " where 0 = 1"

sqldataadapter da = new sqldataadapter(cmd);

datatable tbltable = new datatable();

da.fillschema(tbltable, schematype.source);

這樣就可以很方便的從tbltable中讀出表的完整的架構資訊。

附:取得資料庫架構的方法多種多樣,研究的暈暈乎乎,在.net下,這是我發現的最簡單的方法了。

ADO如何取得資料庫中表的字段資訊

若要取得資料庫中表的字段資訊,由以下recordset物件的屬性可得知 actualsize屬性 欄位的實際大小。definedsize屬性 定義欄位的大小。type屬性 字段型別,使用以下數字代表之 文字text 200 日期時間date 135 整數int 識別碼 3 單精準度 4 雙精準度 5...

struts2如何取得資料庫中的資料並且傳到頁面

標籤 struts j2ee 原始出處 作者資訊和本宣告。否則將追究法律責任。方法一 我們在dao類中從資料庫中取出資料後,放入vo類 與表對應的或是與介面對應的 中,然後一層一層返回給action的相應vo類。例如 dao類我們是這樣編寫的 遍歷所有的管理員 return public listl...

mysql結果行數 取得資料庫結果集中的行數

簡明現代魔法 php伺服器指令碼 取得資料庫結果集中的行數 取得資料庫結果集中的行數 2010 01 05 mysql num rows 使用 mysql num rows 可以取得結果集中行的數目。mysql num rows 返回結果集中行的數目。此命令僅對 select 語句有效。要取得被 i...