一種MySQL資料庫結構化文檔生成方法及裝置與流程
2023-05-02 13:02:11
技術領域:
:本發明涉及一種文檔生成方法及裝置,屬於數據處理領域,具體是涉及一種MySQL資料庫結構化文檔生成方法及裝置。
背景技術:
::MySQL是一個開放原始碼的關係資料庫管理系統,廣泛地應用在網際網路上的網站中。關係資料庫是創建在關係模型基礎上的資料庫,藉助於集合代數等數學概念和方法來處理資料庫中的數據。在很多網站開發中,都需要用到MySQL資料庫。開發人員為了了解資料庫結構,就需要維護一份MySQL結構文檔。但是每次更改了資料庫結構以後,再去手動更新資料庫結構文檔,很繁瑣和費事。技術實現要素:針對現有技術的以上缺陷或改進需求,本發明提供了一種MySQL資料庫結構化文檔生成方法及裝置,其目的在於,解決手動更新資料庫結構文檔所導致的操作繁瑣、複雜問題。為了解決上述問題,根據本發明的一個方面,提供了一種MySQL資料庫結構化文檔生成方法,包括:步驟1,創建一個空的HTML文檔,獲取要生成文檔的資料庫名dbname;步驟2,在MySQL的information_schema資料庫的tables表中檢索屬於資料庫名為dbname的表記錄得到表記錄集合;步驟3:遍歷表記錄集合,對於每一個表記錄,執行以下操作:步驟301,為每一個表記錄生成一個HTML標題標籤,將表記錄中的表名字tablename和表注釋加入HTML標題標籤;步驟302,在HTML標題標籤下生成一個HTML表格標籤,從MySQL的information_schema資料庫的columns表中檢索所有庫名字是dbname並且表名字是tablename的記錄得到列記錄集合;步驟303,遍歷列記錄集合,對於每一條列記錄,取出列相關信息,加入HTML表格標籤中;步驟304,將HTML表格標籤和HTML標題標籤寫入HTML文檔中並存儲。優選的,上述的一種MySQL資料庫結構化文檔生成方法,加入HTML表格標籤中的列信息包括:列名稱,列類型,列默認值,列的鍵類型,列注釋,列是否可為空中的一種或多種。優選的,上述的一種MySQL資料庫結構化文檔生成方法,從MySQL資料庫中的information_schema資料庫中獲取dbname相關的表信息和列信息。為了解決上述問題,根據本發明的一個方面,提供了一種一種MySQL資料庫結構化文檔生成裝置,包括:文檔創建模塊,創建一個空的HTML文檔,獲取要生成文檔的資料庫名dbname;表集合獲取模塊,在MySQL的information_schema資料庫的tables表中檢索屬於資料庫名為dbname的表記錄得到表記錄集合;表標籤生成模塊:遍歷表記錄集合,對於每一個表記錄,執行以下操作:標題標籤生成單元,為每一個表記錄生成一個HTML標題標籤,將表記錄中的表名字tablename和表注釋加入HTML標題標籤;表格標籤生成單元,在HTML標題標籤下生成一個HTML表格標籤,從MySQL的information_schema資料庫的columns表中檢索所有庫名字是dbname並且表名字是tablename的記錄得到列記錄集合;列信息添加單元,遍歷列記錄集合,對於每一條列記錄,取出列相關信息,加入HTML表格標籤中;信息存儲單元,將HTML表格標籤和HTML標題標籤寫入HTML文檔中並存儲。優選的,上述的一種MySQL資料庫結構化文檔生成裝置,加入HTML表格標籤中的列信息包括:列名稱,列類型,列默認值,列的鍵類型,列注釋,列是否可為空中的一種或多種。優選的,上述的一種MySQL資料庫結構化文檔生成裝置,從MySQL資料庫中的information_schema資料庫中獲取dbname相關的表信息和列信息。總體而言,本發明所構思的以上技術方案與現有技術相比,本發明利用程序自動生成MySQL結構文檔,免去手動維護的麻煩,提升了用戶體驗。附圖說明附圖1是本發明的流程示意圖。附圖2是本發明的結構示意圖。具體實施方式下面通過實施例,並結合附圖,對本發明的技術方案作進一步具體的說明。一種MySQL資料庫結構化文檔生成方法,包括:步驟1,創建一個空的HTML文檔,獲取要生成文檔的資料庫名dbname;步驟2,在MySQL的information_schema資料庫的tables表中檢索屬於資料庫名為dbname的表記錄得到表記錄集合;步驟3:遍歷表記錄集合,對於每一個表記錄,執行以下操作:步驟301,為每一個表記錄生成一個HTML標題標籤,將表記錄中的表名字tablename和表注釋加入HTML標題標籤;步驟302,在HTML標題標籤下生成一個HTML表格標籤,從MySQL的information_schema資料庫的columns表中檢索所有庫名字是dbname並且表名字是tablename的記錄得到列記錄集合;步驟303,遍歷列記錄集合,對於每一條列記錄,取出列相關信息,加入HTML表格標籤中;步驟304,將HTML表格標籤和HTML標題標籤寫入HTML文檔中並存儲。其中,加入HTML表格標籤中的列信息包括:列名稱,列類型,列默認值,列的鍵類型,列注釋,列是否可為空中的一種或多種。其中,可以從MySQL資料庫中的information_schema資料庫中獲取dbname相關的表信息和列信息。一種MySQL資料庫結構化文檔生成裝置,包括:文檔創建模塊,創建一個空的HTML文檔,獲取要生成文檔的資料庫名dbname;表集合獲取模塊,在MySQL的information_schema資料庫的tables表中檢索屬於資料庫名為dbname的表記錄得到表記錄集合;表標籤生成模塊:遍歷表記錄集合,對於每一個表記錄,執行以下操作:標題標籤生成單元,為每一個表記錄生成一個HTML標題標籤,將表記錄中的表名字tablename和表注釋加入HTML標題標籤;表格標籤生成單元,在HTML標題標籤下生成一個HTML表格標籤,從MySQL的information_schema資料庫的columns表中檢索所有庫名字是dbname並且表名字是tablename的記錄得到列記錄集合;列信息添加單元,遍歷列記錄集合,對於每一條列記錄,取出列相關信息,加入HTML表格標籤中;信息存儲單元,將HTML表格標籤和HTML標題標籤寫入HTML文檔中並存儲。其中,加入HTML表格標籤中的列信息包括:列名稱,列類型,列默認值,列的鍵類型,列注釋,列是否可為空中的一種或多種。其中,可以從MySQL資料庫中的information_schema資料庫中獲取dbname相關的表信息和列信息。實施例1首先,對本實施例的術語進行說明。(1)HTML超文本標記語言是一種用於創建網頁的標準標記語言。HTML標記包含標籤(及其屬性)、基於字符的數據類型、字符引用和實體引用等幾個關鍵部分。HTML標籤是最常見的,通常成對出現,比如與,表示一級標題標籤,比如與,表示表格標籤。(2)MySQL是一個開放原始碼的關係資料庫管理系統,廣泛地應用在網際網路上的網站中。(3)關係資料庫是創建在關係模型基礎上的資料庫,藉助於集合代數等數學概念和方法來處理資料庫中的數據。(4)數據表是以行和列的形式組織起來的數據的集合。一個資料庫包括一個或多個表。例如,一個用戶表如下:nameagegender張三25男李四30女本實施例描述了一種MySQL結構文檔的自動生成方案。在很多網站開發中,都需要用到MySQL資料庫。開發人員為了了解資料庫結構,就需要維護一份MySQL結構文檔。但是每次更改了資料庫結構以後,再去手動更新資料庫結構文檔,很繁瑣和費事。在本方案中,本實施例可以利用程序自動生成MySQL結構文檔,免去手動維護的麻煩。在MySQL中,有一個名為information_schema的資料庫,其中記錄了MySQL資料庫本身的一些信息,如表信息,列信息等。在本方案中,本實施例使用information_schema中的兩個表:tables和columns。其中,tables記錄了表相關的信息,columns記錄了列相關的信息。tables表和columns表有多個列,用到的列如下:table_schema資料庫名稱。table_name表名字。table_comment表注釋。column_name列名稱。column_type列類型。column_default列默認值。column_key列的鍵類型。column_comment列注釋。is_nullable是否可為空。extra其他附加信息。首先,本實施例從MySQL的information_schema資料庫的tables表中按資料庫名字取出所有表和表注釋。然後,對於每一個表,本實施例再從MySQL的information_schema資料庫的columns表中按資料庫名字和表名字取出所有列相關信息。然後本實施例使用這些信息生成HTML頁面。對於每個表,本實施例生成一個HTML的頭標籤,裡面寫入表名稱和表注釋,再生成一個HTML表格,裡面是這個表中所有列相關的信息,如列名稱,列類型,列默認值,列的鍵類型,列注釋,列是否可為空,其他附加信息等。本方案流程圖如圖1所示,具體如下:步驟1:生成一個空HTML文檔,獲取要生成文檔的資料庫名字,下稱dbname。步驟2:從MySQL的information_schema資料庫的tables表中檢索所有資料庫名字是dbname的記錄,下稱表記錄。步驟3:取出所有表記錄集合,依次進行處理。步驟4:判斷表記錄集合處理是否處理完畢。如處理完成,跳轉到步驟14。否則進行下一步驟。步驟5:從表記錄集合中取出一條未處理的表記錄。步驟6:生成一個HTML標題標籤,將表記錄中的表名字(下稱tablename)和表注釋加入HTML標題標籤。步驟7:生成一個HTML表格標籤。步驟8:從MySQL的information_schema資料庫的columns表中檢索所有庫名字是dbname並且表名字是tablename的記錄,下稱列記錄。步驟9:取出所有列記錄集合,依次進行處理。步驟10:從列記錄中集合中取出一條未處理的列記錄。步驟11:從列記錄取出列相關信息,加入HTML表格標籤中。在此步驟中,本實施例要加入到表格中的信息有:列名稱,列類型,列默認值,列的鍵類型,列注釋,列是否可為空,其他附加信息等。步驟12:判斷列記錄是否處理完畢。如果處理完畢,跳轉到步驟13,否則跳轉到步驟10。步驟13:將HTML標題標籤和HTML表格標籤加入HTML文檔中。跳轉到步驟4。步驟14:存儲HTML文檔,結束。以上方法實施例和裝置實施例是一一對應的,因此方法實施例的擴展方式亦可用於裝置實施例。本文中所描述的具體實施例僅僅是對本發明精神作舉例說明。本發明所屬
技術領域:
:的技術人員可以對所描述的具體實施例做各種各樣的修改或補充或採用類似的方式替代,但並不會偏離本發明的精神或者超越所附權利要求書所定義的範圍。當前第1頁1 2 3 當前第1頁1 2 3