create table LogRecord ( --建立表
logRecord_id varchar2(10) primary key,
operateType varchar2(10),
oldInfo varchar2(100),
newInfo varchar2(100),
operatorUser varchar2(30),
operatingTime varchar2(20)
)
comment on table LogRecord is '员工信息、公司信息、岗位信息、员工岗位操作日志记录表'; --表的注释
comment on column LogRecord.operateType is '操作类型';
comment on column LogRecord.Oldinfo is '更改前数据';
comment on column LogRecord.Newinfo is '更新的数据';
comment on column LogRecord.Operateuser is '操作人';
comment on column LogRecord.Operatingtime is '操作时间';
create sequence LOGRECORD_SEQ --建立sequences
minvalue 1
maxvalue 999999999
start with 1
increment by 1
order;
@Id
@Column(name = "LOGRECORD_ID", unique = true, nullable = false, length = 10) --建立好的 sequences使用
@GeneratedValue(strategy=GenerationType.SEQUENCE, generator="LOGRECORD_SEQ")
@SequenceGenerator(name="LOGRECORD_SEQ", sequenceName="LOGRECORD_SEQ",allocationSize = 1)
public long getLogRecord_id() {
return logRecord_id;
}
public void setLogRecord_id(long logRecord_id) {
this.logRecord_id = logRecord_id;
}
create index index_finance on prpjplanfee(comcode,currency,ntplanfee,riskcode,domicilecode,voucherdate,payrefreason); --建立索引
create public database link MSIC_APPUSER(dblink名字) connect to appuser(用户名) identified by appuser(密码) using '(DESCRIPTION = --dblink的创建
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.1.1.160)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = msiedw140)
)
)';
select * from from vat_acnt_m_mvtc@msic_appuser t(@前面是表名,@后面是dblink名字) --dblink的使用
create or replace procedure sp_demo(param1 in varchar2,param2 out varchar2) --oracle的存储过程写法
as
cnt int;
rst varchar2(100)
Begin
Select count(*) into cst from Tab_Demo where Col_Value = param1;(into是把查出count(*)的值赋给cst)
If (cst > 0) then
param2 := '有匹配的值';
Else
param2 := '无匹配的值';
End if;
Exception
When others then
Rollback;
End;
conn = DriverManager.getConnection(url,username,password); --oracle的存储过程的使用(代码中实现)
conn.prepareCall("{sp_demo(?)}");
找到procedure,选择需要执行的procedure,右击测试。 --oracle的存储过程的使用(PL/SQL中实现)
create or replace view view_name as --创建视图
select *
from tableName;
create or replace function fun1(a in varchar2,b out varchar2) --oracle函数通用写法
return varchar2 as
str varchar2(100);
begin
str:='Your input is '||a;
b:=a;
return str;
end;
dbms_output.put_line(fun1('A',b)); --调用oracle函数
dbms_output.put_line(b);
修改字段: alter table table_name rename column old_column_name to new_column_name;
增加字段: alter table table_name add (column_name varchar2(20));
删除字段: alter table table_name drop (column_name);
oracle的游标是啥?游标其实是相当于把磁盘数据整体放入了内存中,在内存中进行遍历读写。如果游标数据量大则会造成内存不足。
SIGN:取数字n的符号,大于0返回1,小于0返回-1,等于0返回0
DECODE(SIGN(t2.validdate-t2.underwritedate),1,t2.validdate,t2.underwritedate)
varchar2(10)中, 汉字 、英文字母、数字 一个占一个空间,即共10个,能录10个汉字或英文字母或数字
logRecord_id varchar2(10) primary key,
operateType varchar2(10),
oldInfo varchar2(100),
newInfo varchar2(100),
operatorUser varchar2(30),
operatingTime varchar2(20)
)
comment on table LogRecord is '员工信息、公司信息、岗位信息、员工岗位操作日志记录表'; --表的注释
comment on column LogRecord.operateType is '操作类型';
comment on column LogRecord.Oldinfo is '更改前数据';
comment on column LogRecord.Newinfo is '更新的数据';
comment on column LogRecord.Operateuser is '操作人';
comment on column LogRecord.Operatingtime is '操作时间';
create sequence LOGRECORD_SEQ --建立sequences
minvalue 1
maxvalue 999999999
start with 1
increment by 1
order;
@Id
@Column(name = "LOGRECORD_ID", unique = true, nullable = false, length = 10) --建立好的 sequences使用
@GeneratedValue(strategy=GenerationType.SEQUENCE, generator="LOGRECORD_SEQ")
@SequenceGenerator(name="LOGRECORD_SEQ", sequenceName="LOGRECORD_SEQ",allocationSize = 1)
public long getLogRecord_id() {
return logRecord_id;
}
public void setLogRecord_id(long logRecord_id) {
this.logRecord_id = logRecord_id;
}
create index index_finance on prpjplanfee(comcode,currency,ntplanfee,riskcode,domicilecode,voucherdate,payrefreason); --建立索引
create public database link MSIC_APPUSER(dblink名字) connect to appuser(用户名) identified by appuser(密码) using '(DESCRIPTION = --dblink的创建
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.1.1.160)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = msiedw140)
)
)';
select * from from vat_acnt_m_mvtc@msic_appuser t(@前面是表名,@后面是dblink名字) --dblink的使用
create or replace procedure sp_demo(param1 in varchar2,param2 out varchar2) --oracle的存储过程写法
as
cnt int;
rst varchar2(100)
Begin
Select count(*) into cst from Tab_Demo where Col_Value = param1;(into是把查出count(*)的值赋给cst)
If (cst > 0) then
param2 := '有匹配的值';
Else
param2 := '无匹配的值';
End if;
Exception
When others then
Rollback;
End;
conn = DriverManager.getConnection(url,username,password); --oracle的存储过程的使用(代码中实现)
conn.prepareCall("{sp_demo(?)}");
找到procedure,选择需要执行的procedure,右击测试。 --oracle的存储过程的使用(PL/SQL中实现)
create or replace view view_name as --创建视图
select *
from tableName;
create or replace function fun1(a in varchar2,b out varchar2) --oracle函数通用写法
return varchar2 as
str varchar2(100);
begin
str:='Your input is '||a;
b:=a;
return str;
end;
dbms_output.put_line(fun1('A',b)); --调用oracle函数
dbms_output.put_line(b);
修改字段: alter table table_name rename column old_column_name to new_column_name;
增加字段: alter table table_name add (column_name varchar2(20));
删除字段: alter table table_name drop (column_name);
oracle的游标是啥?游标其实是相当于把磁盘数据整体放入了内存中,在内存中进行遍历读写。如果游标数据量大则会造成内存不足。
SIGN:取数字n的符号,大于0返回1,小于0返回-1,等于0返回0
DECODE(SIGN(t2.validdate-t2.underwritedate),1,t2.validdate,t2.underwritedate)
varchar2(10)中, 汉字 、英文字母、数字 一个占一个空间,即共10个,能录10个汉字或英文字母或数字