亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 數據庫 > PostgreSQL > 正文

PostgreSQL7.0手冊-開發者手冊 -67. 后端接口

2019-09-08 23:34:04
字體:
來源:轉載
供稿:網友
第六十七章. 后端接口
內容 
BKI 文件格式 
通用命令 
宏命令 
調試命令 
例子 
后端接口(BKI)文件是一些腳本,這些腳本輸入到 Postgres 后端以特殊的 "bootstrap"(引導)模式運行,這種模式允許在不存在數據庫系統的情況下執行數據庫函數.BKI 文件因此可以在第一時間用于創建數據庫系統.initdb 使用 BKI 文件來做一件事:創建一個數據庫.不過 initdb 的 BKI 文件是內部生成的.它用文件 global1.bki.source 和local1.template1.bki.source 生成,這些文件放在 Postgres "library" 目錄.這些文件是做為 Postgres 安裝的一部分安裝的.這些 .source 文件是作為 Postgres 制作過程的一部分制作的,是用一個叫 genbki 的制作程序制作的.genbki把一個 Postgres 源文件作為輸入,把這個輸入分成兩份作為 genbki 輸入來制作描述那些表的表和 C 頭文件. 
相關的信息可以在有關 initdb,createdb,以及 SQL 命令 CREATE DATABASE 的文檔中找到. 

BKI 文件格式
Postgres 后端按下面描述的方法理解 BKI 文件.如果把 global1.bki.source 文件拿來做為例子,這些描述會變得容易理解些.(像我們上面解釋的,這些 .source 文件并不是一個 BKI 文件,但你能夠通過它們推導出它們生成的BKI 文件是什么). 
命令是由命令名稱后面跟著用空白隔開的參數組成的.用 “$” 開頭的命令參數被特殊對待.如果“$$” 是頭兩個字符,那么第一個 “$” 被忽略,并且參數正常處理.如果 “$” 后跟著空白,那么它被當成空(NULL)值.否則跟在 “$” 后面的字符被解釋成宏的名稱,并因此而導致用宏的值替換參數.如果這個宏沒有定義則是一個錯誤. 

宏是用下面語法定義的 

define macro macro_name = macro_value
并且用下面語法取消定義 
undefine macro macro_name
重新定義用的語法和定義時是一樣的. 
通用命令和宏命令的列表在后面.


--------------------------------------------------------------------------------
--------------------------------------------------------------------------------

General Commands
OPEN classname 
打開一個名為 classname 的表,準備進一步操作. 
CLOSE [classname] 
關閉名為 classname 的表.如果 classname 還沒有打開,則產生一個錯誤.如果沒有給出 classname,那么當前打開的表被關閉. 
PRINT 
打印當前打開的表. 
INSERT [OID=oid_value] (value1 value2 ...) 
用 value1, value2,等作為字段值以及 oid_value 作為其 OID(對象標識)向打開的表插入一條新記錄,如果 oid_value 不為零那么這個值將被用為記錄的對象標識.否則,就是一個錯誤. 
INSERT (value1 value2 ...) 
類似上面那條命令,但是系統產生一個唯一的對象標識. 
CREATE classname (name1 = type1 [,name2 = type2[,...]]) 
用圓括號里面給出的字段創建一個名為 classname 的表. 
OPEN (name1 = type1 [,name2 = type2[,...]]) AS classname 
打開一個名為 classname 的表用于寫,但是在系統表里面不記錄該表的存在.(這個主要是為了在"初始化" (bootstrapping)過程中協助工作.)
DESTROY classname 
刪除名為 classname 的表. 
DEFINE INDEX indexname ON class_name USING amname (opclass attr | (function(attr)) 
在名為 classname 的表上用 amname 訪問模式創建一個索引名為 indexname 的索引.要索引的字段叫 name1,name2 等,并且所用的對應的操作符集合是 collection_1, collection_2 等. 
注意:這最后一句話在例子中不引用任何東西.今后應做些修改,令其有實際意義.- Thomas 1998-08-04

--------------------------------------------------------------------------------
--------------------------------------------------------------------------------

宏命令
DEFINE FUNCTION macro_name AS rettype function_name(args) 
定義一個函數原形,函數名為 macro_name,其值類型為 rettype,該值是通過執行帶有類 C 定義參數的參數列表 args 的 function_name 獲得的. 
DEFINE MACRO macro_name FROM FILE filename 
定義一個宏,名為 macro_name,其值是從文件 filename 里讀取的. 

--------------------------------------------------------------------------------
--------------------------------------------------------------------------------

調試命令
注意:這一節關于調試命令的信息在最早的文檔里面是被注釋掉了的.Thomas 1998-08-05
r 
隨機打印打開的表. 
m -1 
打開時間信息的輸出. 
m 0 
設置檢索為當前. 
m 1 Jan 1 01:00:00 1988 
設置檢索為聲明的時間的快照. 
m 2 Jan 1 01:00:00 1988, Feb 1 01:00:00 1988 
設置檢索為聲明的時間范圍.如果需要一個無界的時間,兩個時間都可能被空白代替. 
&A classname natts name1type1 name2 type2 ... 
向表 classname 增加 natts 字段,字段名為 name1,name2等,而類型為 type1,type2等. 
&RR oldclassname newclassname 
將舊表 oldclassname 改名為 newclassname. 
&RA classname oldattname newattname classnameoldattnamenewattname 
把表 classname 里的字段 oldattname 改名為 newattname. 

--------------------------------------------------------------------------------
--------------------------------------------------------------------------------

例子
下面的命令集將創建名為“pg_opclass” 的表,表中包含 int_ops 集合做為一個具有 421 對象標識(OID)的對象,打印出表,然后關閉之. 
create pg_opclass (opcname=name)
open pg_opclass
insert oid=421 (int_ops)
print
close pg_opclass

--------------------------------------------------------------------------------
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲精品理论电影| 亚洲欧美中文在线视频| 国产日产久久高清欧美一区| 九色精品免费永久在线| 影音先锋欧美在线资源| 国产999精品久久久影片官网| 大荫蒂欧美视频另类xxxx| 欧美成人黄色小视频| 久久久综合av| 九九热这里只有精品6| 久久激情视频久久| 最近2019中文字幕大全第二页| 亚洲乱码国产乱码精品精| 色婷婷久久av| 国产在线视频欧美| 亚洲黄页视频免费观看| 亚洲美女动态图120秒| 亚洲黄一区二区| 色综合久久88| 精品久久久久久电影| 992tv成人免费视频| 日韩国产欧美区| 国产在线a不卡| 国产欧美精品一区二区三区-老狼| 欧美成人午夜激情在线| 亚洲男人天堂网站| 8090成年在线看片午夜| 国产精品久久久精品| 欧美大尺度激情区在线播放| 日韩在线观看免费av| 大荫蒂欧美视频另类xxxx| 日韩精品电影网| 日韩亚洲第一页| 久热爱精品视频线路一| 国产精品视频播放| 欧美另类极品videosbest最新版本| 91精品国产高清自在线看超| 夜夜嗨av一区二区三区四区| 97精品视频在线播放| 日韩av在线免播放器| 狠狠做深爱婷婷久久综合一区| 亚洲黄色在线看| 色妞一区二区三区| 在线观看免费高清视频97| 成人午夜激情网| 一区二区三区 在线观看视| 欧美限制级电影在线观看| 精品无人国产偷自产在线| 色狠狠久久aa北条麻妃| 日韩美女激情视频| 亚洲18私人小影院| 日韩av免费观影| 欧美激情啊啊啊| 成人综合国产精品| 亚洲性线免费观看视频成熟| 国产一区二区三区在线免费观看| 欧美疯狂xxxx大交乱88av| 国产成+人+综合+亚洲欧洲| 日韩在线观看免费高清| 91色琪琪电影亚洲精品久久| 国产视频精品一区二区三区| 国产精品久久久久久久久久免费| 日本在线精品视频| 欧美激情xxxxx| 日韩精品免费一线在线观看| 中文字幕在线精品| 自拍偷拍亚洲区| 欧美高清视频在线播放| 中文字幕视频在线免费欧美日韩综合在线看| 国产精品欧美激情在线播放| 国产精品视频一区国模私拍| 欧美激情视频一区二区三区不卡| 91色在线观看| 国产精品视频自拍| 欧美韩国理论所午夜片917电影| www国产亚洲精品久久网站| 波霸ol色综合久久| 欧美激情精品久久久久| 成人性生交大片免费看视频直播| 91久久精品日日躁夜夜躁国产| 国产精品福利片| 亚洲第一精品久久忘忧草社区| 亚洲第一色中文字幕| 日韩国产在线看| 欧美国产日韩一区二区三区| 日本精品久久电影| 亚洲级视频在线观看免费1级| 一本大道久久加勒比香蕉| 成人av在线天堂| 亚洲一区二区自拍| 久久精品视频一| 亚洲成年人影院在线| 日韩大陆毛片av| 日韩成人激情影院| 亚洲精品中文字幕女同| 久久亚洲欧美日韩精品专区| 国产va免费精品高清在线观看| 97视频在线观看成人| 韩剧1988在线观看免费完整版| 狠狠做深爱婷婷久久综合一区| 91sao在线观看国产| 国产精品小说在线| 久久99久国产精品黄毛片入口| 久久综合国产精品台湾中文娱乐网| 久久福利网址导航| 日韩精品中文字幕久久臀| 一区二区三区视频免费| 一本色道久久88精品综合| 最近日韩中文字幕中文| 久久久综合av| 91老司机精品视频| 日韩在线播放av| 69av视频在线播放| 欧美日韩性视频在线| 91精品视频播放| 日韩国产中文字幕| 亚洲老头老太hd| 丝袜美腿精品国产二区| 永久免费毛片在线播放不卡| 精品美女久久久久久免费| 55夜色66夜色国产精品视频| 亚洲一区二区在线| 成人黄色在线播放| 欧美激情中文字幕乱码免费| 国产精品久久久久一区二区| 青青久久av北条麻妃海外网| 国产精品国产福利国产秒拍| 日韩av免费一区| 欧美日韩色婷婷| 日韩av中文字幕在线免费观看| 亚洲精品一区二区在线| 亚洲性线免费观看视频成熟| 国产精品av在线播放| 国产精品久久久999| 欧美激情第一页xxx| 一区二区欧美在线| 神马久久桃色视频| 九九热视频这里只有精品| 亚洲视频综合网| 色婷婷av一区二区三区在线观看| 日本精品中文字幕| 亚洲第一区第二区| 日韩在线观看电影| 久久精品久久久久久国产 免费| 亚洲男女自偷自拍图片另类| 国产精品日韩欧美| 精品高清美女精品国产区| 日韩免费av片在线观看| 欧美日韩亚洲精品内裤| 日韩中文字幕在线| 98精品国产自产在线观看| 国产精品久久久久久久久久免费| 日韩欧美中文字幕在线播放| 久热爱精品视频线路一| 久久av中文字幕| 国产精品成熟老女人| 亚洲天堂开心观看| 欧美福利在线观看| 97视频在线观看成人| 亚洲最大的网站| 少妇精69xxtheporn| 国产精品一区二区三区久久| 青青久久aⅴ北条麻妃| 欧美丝袜美女中出在线|