oracle和mysql資料庫的儲存過程

2021-09-10 17:10:10 字數 4089 閱讀 1342

使用儲存過程是為了快速在資料庫裡造一批資料,mac可以使用sqlpro for oracle

建表語句

create table "pdmstest18" 

( "uid" number(10,0),

"firstname" varchar2(20) not null enable,

"lastname" varchar2(20) not null enable,

"mydate" date not null enable,

"mynvarchar2" nvarchar2(20),

"mybinary_double" binary_double,

"myraw" raw(20),

"myclob" clob,

"mynchar" nchar(5),

"mytimestamp" timestamp (6),

"timestampwithtimezone" timestamp (6) with time zone,

"mychar" char(5)

)

oracle資料庫

createorreplaceprocedureinsert100as

begin

foriin1..5000000 loop

insertintopdmstest18values(

trunc(dbms_random.value(0,1000)),#隨機整數

dbms_random.string('x', 10),#隨機字串

dbms_random.string('x', 10),

to_date(2457024 + trunc(dbms_random.value(0, 365)),'j'),#隨機時間

'dalizi1992',

'1234',

rawtohex('0x40'),

'0x1b',

dbms_random.string('x', 3),

to_timestamp('1988-09-08 12:12:12','yyyy-mm-dd hh24:mi:ss'),

timestamp'1988-09-08 12:12:12 -3:00',

'df'

);

if mod(i,1000) = 0then#一次commit插入一千條資料

commit;

endif;

endloop;

end;

呼叫儲存過程

call insert100();

查詢表空間容量

select tablespace_name, file_id, file_name, round(bytes / (1024 * 1024), 0) total_space from sys.dba_data_files order by tablespace_name;
oracle 擴容(增大單個資料的容量)

mysql的儲存過程

createorreplaceprocedureinsert100(inlinenuminteger)

begin

declareiint;

seti = 1;

while iinsertintopdms_test.decimal_test3values(

null,# 自增

date_add('2017-8-1 00:00:00',interval floor(1 + (rand() * 10800))second),

'2015-09-07',

date_add('2010-8-1 00:00:00',interval floor(1 + (rand() * 108))minute),# 隨機時間

addtime(current_time(),floor(10000+(rand()*50))),# 隨機的time,後面的引數時類似於023000,即2小時30分鐘

substring(md5(rand()),1,10),#隨機字串

floor(1 + (rand() * 6)),#隨機整數

floor(7 + (rand() * 62)),

floor(7 + (rand() * 62)),

floor(7 + (rand() * 62)),

floor(7 + (rand() * 62)),

(rand() * 62),#隨機小數

floor(7 + (rand() * 62)));

if mod(i,1000) = 0then# 一次commit插入1000條資料

commit;

endif;

seti = i+1;

endwhile;

commit;

end

呼叫儲存過程

call insert100(20000000);

資料庫索引(Oracle和MySql)

索引概念 索引是關聯式資料庫中用於存放每一條記錄的一種物件,主要目的是加快資料的讀取速度和完整性檢查。建立索引是一項技術性要求高的工作。一般在資料庫設計階 段得與資料庫結構一起考慮。應用系統的效能直接與索引的合理直接有關。一.oracle索引 1.索引型別 1 非唯一索引 最常用 uonunique...

oracle資料庫和mysql資料庫的區別

1 mysql裡用雙引號包起字串,oracle裡只可以用單引號包起字串。2 oracle是大型資料庫,而mysql是中小型資料庫。3 mysql的主鍵一般使用自動增長型別,在建立表時只要指定表的主鍵為auto increment,在插入記錄時,不需要再指定該記錄的主鍵值,主鍵將自動增長 oracle...

Oracle資料庫和MySQL資料庫的不同之處

1 體積不同。oracle它體積比較龐大,一般是用來開發大型應用 例如分布式 的。而mysql的體積相對來說比較小,較之oracle更容易安裝 維護以及管理,操作也簡單,最重要的是它是三個中唯一乙個開源資料庫,但目前也屬於oracle公司的產品了。2 容量不同。oracle容量無限,根據配置決定 而...