欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

openfire 數據庫

系統 1756 0

關于數據庫有三個地方需要注意:

1.plugin.xml數據庫及其版本的相關配置

2.系統自帶表 ofVersion表中,關于插件數據庫的版本記錄

3.database下相關sql文件(對應表的創建或更新),并向ofVersion中插一條字段(記錄插件數據庫版本)。

?

首先說下個人對 OpenFire 插件數據庫加載的理解:

只要會用的話,不需要看此。或者看完數據庫的創建步驟知道怎么回事,再來看這里的理解也行)

1) plugin.xml 中配置數據庫(及其版本),知道要需要哪個版本之后,

2) ofVersion 查詢相關插件字段 version

?????????????????? ???????? a) 發現沒有該插件 字段,去執行 sql (創建表) .

b) 如果有字段,看 version 的值( int 類型, 1 2 3 等)。需要版本比字段值高,更新數據庫。需要版本比 version 值低,不更新。 版本號一定是 Int 類型

?

3) 在更新數據庫的同時需要更新自己升級的表,還要修改 ofversion 這個表。

openfire 數據庫

?

?

Sql文件

結構 插件根目錄/src/database/ sql文件

Sql文件命名: 插件名_數據庫.sql

openfire 數據庫

?

      # $Revision$
# $Date$
INSERT INTO ofVersion (name, version) VALUES ('myplugin',0);
CREATE TABLE ofMypluginTest
 (
  id int(11) NOT NULL,
  username varchar(30) DEFAULT NULL,
  password varchar(30) DEFAULT NULL,
  PRIMARY KEY (id)
 );

    

?

一定要往 ofVersion 表中 插入你插件數據庫 版本記錄。有了這條記錄, OpenFire 再去加載這個插件的時候,發現 ofVersion 有這個插件 記錄,就不會再在去執行 sql 語句

?

plugin.xml 中加兩行

關于 database 的配置。下面代碼的最后兩行即可。

      <version>1.0.0.1</version>
<date>24/11/2013</date>
<url>http://localhost:9090/openfire/plugins.jsp</url>
<minServerVersion>3.4.1</minServerVersion>
<licenseType>gpl</licenseType>
<databaseKey>myplugin</databaseKey>
<databaseVersion>0</databaseVersion>

    

?

啟動 OpenFire ,加載插件,就顯示數據庫更新成功

?

數據庫更新

首先更新sql文件,不修改。添加即可

方法:插件根目錄/src/database/upgrade/1/插件sql或database /upgrade/2/插件sql

?

?

例如:plugins/myplugin/src/database/upgrade/1/myplugin_mysql.sql

openfire 數據庫

示例 Slq 文件:

      -- $Revision$
-- $Date$
ALTER TABLE ofMypluginTest ADD COLUMN age int(2) NULL;
ALTER TABLE ofMypluginTest ADD COLUMN address VARCHAR(255) NULL;
-- Update database version
UPDATE ofVersion SET version = 1 WHERE name = 'myplugin';

    

?

注意: 更新語句,盡量先更新表,再更新 ofVersion version 字段的值。

?

萬一你寫的 sql 有問題,只更新了 version 值變成了新版本,表更新失敗,再去加載插件時候,就不會再執行 sql. 創建表。

?

大致分析一下版本不對應的情況

(開發者盡量使版本對應)

由于情況較多,直接舉例說明了

?

myplugin插件 plugin.xml要用版本 0,ofVersion表中,沒有myplugin 0這條自動。執行sql,創建表,插入一條數據。(假如沒有sql文件,數據庫更新失敗)

?

plugin.xml要用版本2,version字段為1,執行database/2/ sql文件。如果沒有2這個文件夾和相應sql,顯示數據庫更新成功。(其實沒有更新數據庫)

?

?

?

openfire 數據庫


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 日韩成人av网站 | 国产精彩视频 | 亚洲精品国产偷自在线观看 | 亚洲精品乱码久久久久久蜜桃 | 欧美一区二区三区久久久 | 国产色拍拍视频在线 | 欧美激情综合色综合啪啪五月 | 日本不良网站 | 成人国产精品免费 | 精品久久久久久久久久 | 天天躁日日躁aaaa视频 | 国产合集福利视频在线视频 | www.99热| 国产精品久久久久久中文字 | 欧美日韩综合一区 | 国产成人91高清精品免费 | 日韩欧美在线一区二区三区 | 日韩综合在线视频 | 成人在线中文字幕 | 边摸边吃奶边做激情叫床文章 | 亚洲 欧美 中文字幕 | 久久99国产精品久久99无号码 | 国产成人综合亚洲动漫在线 | 亚洲精品一区二区三区99 | 欧美一区二区免费 | 激情视频网站 | 成人性生活视频在线播放 | 日韩少妇成熟A片无码专区 黄在线免费观看 | 欧美大片在线观看 | h视频在线免费 | 亚洲欧美国产精品久久 | 国产色图片 | 亚洲视频在线观看 | 欧美日韩亚洲一区 | 欧美9999 | 男女性爽大片在线观看 | 亚洲成人免费在线 | 亚洲一区二区久久 | 国产一级大片 | 91福利视频合集 | 成人久久久久久久久 |