1、每乙個資料庫物件都可以通過下面3種方式來獲得:
(1)通過物件控制代碼
(2)通過物件id
(3)通過c++例項指標
2、當控制項沒有執行時,圖形儲存在檔案系統中,而包含在dwg檔案中的物件是通過它的控制代碼來識別的。
3、當圖形開啟後,圖形資訊可以通過mcdbdatabase物件來訪問。在資料庫中每乙個物件都有乙個物件id,這個物件id儲存在當前編輯過程中,從mcdbdatabase的建立直到刪除,物件id一直存在。物件開啟函式將物件id作為引數,返回乙個mcdbobject物件指標。這個指標在物件被刪除前一直有效。
4、可以使用mx::mcdbopenobject()函式來開啟物件,該函式的原型如下:
mcad::errorstatus mcdbopenmcdbobject (
mcdbobject*& obj,
mcdbobjectid id,
mcdb::openmode mode,
mdesk::boolean openerasedobject = mdesk::kfalse);
mcad::errorstatus mcdbopenobject(t_object*& pobj, mcdbobjectid id, mcdb::openmode mode,
bool
openerased =
false
);
5、可以使用下面的函式通過控制代碼獲取物件id,函式原型如下:
mcad::errorstatus mcdbdatabase::getacdbobjectid(mcdbobjectid& retid,mdesk::boolean createifnotfound,
const
mcdbhandle& objhandle, mdesk::uint32 xrefid=0);
6、可以使用mcdbobjectpointer模板類開啟:
mcdbobjectpointer(mcdbobjectid objid,
mcdb::openmode mode,
bool
openerased =
false
);
7、當然,也可以開啟乙個物件,然後獲得此物件的控制代碼:
pobject->getmcdbhandle(handle);
8、mds_name與物件id作用是相同的,在mcdb庫中提供了兩個單獨的函式在mds_name和mcdbobjectid之間轉換,函式原型如下:
mcdbgetadsname(mds_name& objname, mcdbobjectid objid);
mcdbgetobjectid(mcdbobjectid& objid, mds_name objname);
9、可以使用如下方式開啟物件:
(1)kforread:讀方式。如果物件沒有被以寫方式開啟,它可以被最多256個使用者以讀方式開啟。
(2)kforwrite:寫方式。如果乙個物件沒有被開啟,則它可以被以寫方式開啟,否則開啟物件的操作將失敗。
cad和mysql CAD開啟和關閉資料庫物件
每乙個資料庫物件都可以通過下面3種方式來獲得 通過物件控制代碼 通過物件id 通過c 例項指標 當控制項沒有執行時,圖形儲存在檔案系統中,而包含在dwg檔案中的物件是通過它的控制代碼來識別的。當圖形開啟後,圖形資訊可以通過mcdbdatabase物件來訪問。在資料庫中每乙個物件都有乙個物件id,這個...
Oracle資料庫的開啟和關閉
startup mount 啟動例項的同時,啟動資料庫的控制檔案,但不啟動資料檔案。用於修改資料庫的歸檔方式時。startup nomount 只啟動例項,控制檔案和資料檔案都不啟動。用於控制檔案丟失時,啟動例項之後重新建立控制檔案。startup normal 此命令分成 3個環節 1 啟動例項。...
oracle資料庫的開啟和關閉
1.使用sql plus以sysdba身份登入資料庫例項orcl 主機字串中輸入 orcl as sysdba orcl為資料庫例項,sysdba為登入使用者的身份 2.資料庫的啟動startup startup nomount 只啟動例項.此選項用於資料庫的控制檔案全部損壞,需要重新建立資料庫控制...