火鳥資料庫開發筆記

2021-05-28 13:05:28 字數 1540 閱讀 4241

1、建立類似oralce的sys_guid()

set term ^ ;

create or alter procedure sys_guid 

returns (

hex_uuid varchar(32))

asdeclare variable i integer;

declare variable c integer;

declare variable real_uuid char(16) character set octets;

begin

real_uuid = gen_uuid();

hex_uuid = '';

i = 0;

while (i < 16) do

begin

c = ascii_val(substring(real_uuid from i+1 for 1));

if (c < 0) then c = 256 + c;

hex_uuid = hex_uuid 

|| substring('0123456789abcdef' from bin_shr(c, 4) + 1 for 1) 

|| substring('0123456789abcdef' from bin_and(c, 15) + 1 for 1); 

i = i + 1;

endsuspend;

end^

set term ; ^

grant execute on procedure sys_guid to sysdba;

2、儲存過程呼叫儲存過程

set term ^ ;

create or alter procedure sys_guid2 

returns (

hex_uuid varchar(32))

asbegin

hex_uuid = '456777777777777777777777777';

suspend;

end^

set term ; ^

grant execute on procedure sys_guid2 to sysdba;

set term ^ ;

create or alter procedure sys_guid3 

returns (

hex_uuid varchar(32))

asdeclare variable real_uuid char(32) character set octets;

begin

select hex_uuid

from sys_guid2

into :real_uuid ;

hex_uuid = real_uuid;

suspend ;

end^

set term ; ^

grant execute on procedure sys_guid2 to procedure sys_guid3;

grant execute on procedure sys_guid3 to sysdba;

開發筆記(資料庫相關)

1 如何查詢乙個沒有主鍵的表的第n行資料 假設第n條資料 select top n identity int tempid,into temptb from tablename select from temptb where tempid n 為了降低大表的查詢時間,我選擇了選擇top n為止,然...

資料庫的開發筆記 字典表

在實際的資料庫程式開發中,會碰到很多小的字典需要儲存到資料庫的情況。例如,分類a 分類b 分組c 一行資料的配置。這類資料不會很龐大 不會經常修改,此時可以用字典表儲存 表結構如下圖 其中type表資料的名稱 代號 curr id可以選擇自增長,parent id可以理解成父節點的id,value表...

測試開發筆記 資料庫

一 為什麼要學習資料庫 1 為了方便查詢資料 2 為了持久化儲存資料 二 資料庫的相關概念 dbms db sql db 資料庫,儲存資料的容器 dbms 資料庫管理系統或者資料庫管理產品 常見的資料庫管理系統 mysql oracal db2 sql server sql 結構化查詢語句 三 資料...