SQL编程
***编程语言不区分大小写,内容区分大小写
***函数变量长度不能超过30
***有返回值方法,没有返回值的存储过程
1.脚本运行命令:@路径名;
**select '&x' from dual;弹出输入框
2.变量
no munber(10); --变量的申明
begin
no:=0; --变量的赋值
3.goto 可以往外跳出,不可以往里跳;有IF语句,不可以跳
4.结构体
type_name t_name%rowType; --申明一个结构体对于JAVA的实体类(把t_name里面的字段当作结构体)
v_col_name col_name%type; --申明一个变量的
5.游标
currsor c_name is select * from t_name; --申明一个游标(相当于JAVA中的ResultSet)
open c_name; --游标用之前是需要打开
fetch c_name into type_name; --将表对应的结构体赋值给游标
exit when c_student%notfound; --当游标循环满足条件后退出loop死循环
loop --死循环
end loop;
close c_name; --用完需要关闭
6.查询赋值
select col_name into v_col_name from t_name where ....; --将查询的结构赋值给v_col_name
7.sequence
create sequence seq_name start with defaultValue; --创建一个sequence以供自增长
select seq_name.nextval from dual; --获得下一个号码
select seq-name.currval from dual; --获得当前号码
8.触发器
create or replace trigger tiger_t_name before
--是在什么时候触发动作,before、after
insert on t_name for each row when(new.c_name is null)
--触发之前的操作,for each row,对于每一行都会触发,()内的为条件
begin
select seq_name.nextval into new.c_name from dual;
end;
9.A同步B中的某一库表数据:先建DBLink,再建synonyms(同义词)
DBLink:连接到某一机器的数据库
1.先在A中network/admin/tnsnames.ora中,配置连接B的字符串
2.创建DBLink:
UserName:B的用户名
Password:B的用户名密码
Database:B的连接字符串
Name:这个连接的标识
synonyms:与目的表的关联
Object owner:表名所属的用户的用户名
Object name:连接的目的表名
Database Link:连接的DBLINK_NAME
Name:这个同义词的标识,操作name就相当与操作另一机器的库的目的表
--select * from Name;