資料庫:Database Commands
13-01 DBLOAD
中文:開啟資料庫。
原文:opens a database
格式:#dbload 資料庫名稱
範例:#dbload barefist
開啟一個名為barefist的資料庫,資料庫必須先建立好。
13-02 DBCLOSE
中文:關閉資料庫
原文:closes a database
格式:#dbclose 資料庫名稱
範例:#dbclose barefist
關閉一個名為barefist的已開啟資料庫,資料庫必須先建立好。
13-03 DBSAVE
中文:儲存資料庫
原文:saves a database
格式:#dbclose 資料庫名稱
範例:#dbsave test
將目前開啟的資料庫儲存為test.db。
13-04 VIEW
中文:設定要看的欄位(view)。
原文:sets or defines a database view
格式:#view 專案名稱 {優先欄位1|優先欄位2..} {顯示欄位}
範例:#view barefist+ {barefist|lv}
建立一個排序專案barefist+,barefist欄位為第一排序條件,
lv欄位是第二排序要件。預設排列是升幂排列,在欄位名稱前
方加上"-",可以改為降幂排列。
#view barefist+ {barefist} {nick|lv|barefist}
建立一個排序專案barefist+,barefist欄是排序條件,依照
專案內容僅依序顯示nick、lv、barefist三項。
#view
在畫面中顯示正在檢閱的view專案。
#view all
將正到檢閱的專案切換到all。
13-05 FIND
中文:尋找項目。
原文:filters the database view to find items
格式:#find {字串} {view名稱} {欄位}
範例:#find 庫夫林 barefist+ chtname
從專案barefist+的欄位chtname中尋找帶有字串"庫夫林"的資
料。
13-06 QUERY
中文:尋找項目。
原文:filters the database view to find items
格式:#query (條件) view名稱
範例:#query (&nick=~庫) barefist+
從專案barefist+的nick欄中尋找字串中包含"庫"的資料,所以
,用這個就好。做好後,可以用#view再檢視剛剛做的query。
不過,5.55裡,似乎無法指定搜尋哪個專案。
13-07 DBRESET
中文:重設要看的欄位(view)。
原文:resets the view filters
格式:#dbreset
範例:#dbreset
將之前對view專案所做的find和query清除回復原狀。
13-08 DBGET
中文:將現在的行設為某行。
原文:sets the current database record to a given record
格式:#dbget [number][資料庫名稱]
範例:#dbget 7
將目前選中的行位切換到第七筆。
#dbget 8direct
將目前選中的行位切換到資料庫direct中的第八筆。
這有什麼用呢?切換後,請用#showdb,可以調閱目前選中的
資料,而#say &欄位名稱,可以顯示目前選中的該筆資料,
這個欄位的數值,如果用#send &欄位名稱,可以把數值送到
遊戲伺服器。理論上,看到這裡,可以試著用資料庫做自動
重EN技能的觸發看看。
13-09 DBPUT
中文:在一行儲存新值。
原文:stores new values in a database record
格式:#dbput [行位][資料庫名稱] 資料數據
範例:#dbput 14test {nick=雨歌|id=hmml7|lv=87|barefist=7054}
在test的第14行建立或修改資料。格式亦可用:
#dbput 14test nick 雨歌 id hmml7 lv 87 barefist 7054
不過,用第一行的寫法比較清楚。如果第14行以前的行位尚未
建立的話,會往前遞補。
#dbput 15test %rec
在test的第15行建立或修改資料,資料內容來自目前選中的當筆
資料。
#dbput 16test %dbget(10test)
在test的第16行建立或修改資料,資料內容來自即將指定的該筆
資料。
總之,這是用機器人中,自動將資料寫入資料庫的指令。
13-10 DBFIRST
中文:設定現在的行為,view中的第一行。
原文:sets the current record to the first in the view
格式:#dbfirst
範例:#dbfirst
將目前的反白,改成反白第一筆。也就是將游標移到最前面
那筆去。如果要切換到其它view專案的首筆,先用#view切
換,再用#dbfirst;要切換到其它資料庫的首筆,先用#dbget
,再用#dbfirst。
13-11 DBNEXT
中文:設定現在的行,為view中的下一行。
原文:sets the current record to the next in the view
格式:#dbnext
範例:#dbnext
將目前的反白,改到下一筆。
13-12 DBPREV
中文:設定現在的行,為view中的前一行。
原文:sets the current record to the previous in the view
格式:#dbprev
範例:#dbprev
將目前的反白,改到前一筆。
13-13 DBDELETE
中文:刪除一行。
原文:deletes a record in the database
格式:#DBDELETE [行位][資料庫名稱]
範例:#DBDEL 20
刪除目前正調用的資料庫,第20行資料。
#DBDEL 8eq
刪除資料庫eq中,第8行資料。
5.55版沒有這個指令,所以不能用觸發刪除資料庫內容。
令人意外。
13-14 LOOPVIEW
中文:對view裡的每行繞迴圈。
原文:loop through records in a view
格式:#loopview 專案名稱 {指令}
範例:#loopview all {#SHOW &id &nick &lv}
秀出view專案all中,每筆資料的id、nick、lv欄位。
13-15 NEW
中文:建立新的一行。
原文:create a new database record
格式:#new 資料庫名稱 {資料內容}
範例:#new test {nick=黎瑞兒|id=hmml9|lv=67|barefist=8854}
功能和dbput近似,但new會寫入新行位,所以不會有誤輸覆
蓋之虞。
13-16 DBOFFLINE
中文:資料庫離線工作。
原文:work in editor without effecting user interface
格式:#dboffline
範例:#dboffline
下指令後,所有的動作,包括移動,新增等,都不會改寫資料
庫內容,只會在記憶體動作。
13-17 DBONLINE
中文:資料庫線上工作。
原文:work in editor and effect user interface
格式:#dbonline
範例:#dbonline
下指令後,離線時所做的修改,會加入資料庫中。