¡¾°²²©Åàѵ±Ê¼Ç¡¿Oracle±ö¹Ý¹ÜÀíϵͳ(ËÄ)
='&userpassword';
declare
cc number;
begin
select count(1) into cc from hotel_t_User where userid =&userid and username ='&userpassword';
if cc>0 then
dbms_output.put_line('µÇ½³É¹¦');
else
dbms_output.put_line('µÇ½ʧ°Ü');
end if;
exception
when no_data_found then
dbms_output.put_line('µÇ½ʧ°Ü');
end;
2. ¿Í»§»ù±¾ÐÅÏ¢¹ÜÀí£º
1) ½¨Á¢Ïà¹ØµÄÊý¾Ý±í¼°ÆäÔ¼Êø£¬ÓÉÓÚÊý¾ÝÁ¿¶¼²»´ó²»ÐèÒª½¨Á¢ËùÓÐ
--¿Í·¿»ù±¾ÐÅÏ¢¹ÜÀí
create table hotel_t_Roomtype(
typeid NUMBER primary key not null, --×ÔÔö
typename VARCHAR2(20) not null,
mardedprice NUMBER(12,2),
scale NUMBER(5,4),
lowestprice NUMBER(12,2)
)
create sequence seq_hotel_t_Roomtype;
create or replace trigger tir_hotel_Roomtype
before insert or update on hotel_t_Roomtype for each row
begin
select seq_hotel_t_Roomtype.nextval
into :new.typeid from dual;
end;
--¿Í·¿ÐÅÏ¢±í
create table hotel_t_Room(
roomid VARCHAR2(10) primary key not null,-- ·Ç¿Õ Ö÷¼ü
typeid NUMBER references hotel_t_Roomtype(typeid),-- ¿Õ Íâ¼ü
layer VARCHAR2(20),-- ¿Õ
bednumber NUMBER,-- ¿Õ
state NUMBER default 0 check(state in (0,1,2)) not null --0±íʾ¿ÕÏУ¬1±íʾÈëס£¬2±íʾԤÁô£¬Ä¬ÈÏΪ0
);
¿Í·¿»ù±¾ÐÅÏ¢¹ÜÀí
¿Í·¿¹ÜÀíÖ÷ÒªÊǰ´¿Í·¿µÄÌõ¼þ²»Í¬£¬¶Ô¿Í·¿½øÐзÖÀࣨÀýÈç·Ö³É±ê×¼¼äºÍºÀ»ª¼ä£©£¬Ã¿Ò»ÀàÖÆ¶¨Ò»¸ö±ê¼Û£¬µ«Êµ¼ÊÉÏÕâ¸ö±ê¼ÛºÜÉÙ°´ÕÕÖ´ÐУ¬ÎªÁËӺϿÍÈËÐÄÀí£¬¸÷¸ö±ö¹ÝÒ»°ã¶¼»á¶Ô±ê¼Û½øÐдòÕÛ£¬¼´±ãÕâÑù£¬ÓеĿÍÈË¿ÉÄÜ»¹²»ÂúÒ⣬»òÕßÊÇ´òÕÛºó³öÏÖÁãÇ®µÄÏÖÏ󣬱ö¹ÝÒ»°ã»á¸ø½Ó´ýÈËÔ±Ò»¸öÈü۵ÄȨÀû£¬µ«ÊÇÕâ¸öÈü۲»ÄÜÊÇÎÞÏ޶ȵģ¬Òò´Ë»¹ÐèÒª¶ÔÿÀà·¿¼ä¶¨Ò»¸ö×îµÍ¼Û
±íÃû hotel_t_Roomtype£¨¿Í·¿ÀàÐÍ±í£©
ÁÐÃû ÃèÊö Êý¾ÝÀàÐÍ£¨¾«¶È·¶Î§£©
¿Õ/·Ç¿Õ Ô¼ÊøÌõ¼þ
typeid ÀàÐͱàºÅ NUMBER ·Ç¿Õ Ö÷¼ü£¨×ÔÔö£©
typename ÀàÐÍÃû³Æ VARCHAR2(20) ·Ç¿Õ
mardedprice ±ê¼Û
NUMBER(12,2) ¿Õ
scale ÕÛ¿Û±ÈÂÊ NUMBER(5,4) ¿Õ
lowestprice ×îµÍÕÛ¿Û¼Û
NUMBER(12,2) ¿Õ
±íÃû hotel_t_Room£¨¿Í·¿ÐÅÏ¢±í£©
ÁÐÃû ÃèÊö Êý¾ÝÀàÐÍ£¨¾«¶È·¶Î§£©
¿Õ/·Ç¿Õ Ô¼ÊøÌõ¼þ
roomid ·¿ºÅ VARCHAR2(10) ·Ç¿Õ
Ö÷¼ü
typeid ÀàÐ
ͱàºÅ NUMBER ¿Õ Íâ¼ü
layer Â¥²ã VARCHAR2(20) ¿Õ
bednumber ´²Î»Êý NUMBER ¿Õ
state ״̬ NUMBER ·Ç¿Õ 0±íʾ¿ÕÏУ¬1±íʾÈëס£¬2±íʾԤÁô£¬Ä¬ÈÏΪ0
2) »ùÓÚ¿Í·¿±íºÍ¿Í·¿ÀàÐÍ±í´´½¨ÊÓͼ
grant create any view to kaifa;
CREATE VIEW v_room AS
SELECT hotel_t_Roomtype.typeid,typename,mardedprice,scale,lowestprice,
roomid,layer,bednumber,state
FROM hotel_t_Roomtype,hotel_t_Room
WHERE hotel_t_Roomtype.typeid = hotel_t_Room.typeid;
select * from v_room;
3. Ô¤¶¨¹ÜÀí
1) ´´½¨±í¼°ÆäÏà¹ØÔ¼Êø
create table hotel_t_Predestine(--£¨Ô¤¶©ÐÅÏ¢±í£©
predid CHAR(16) primary key not null,-- ·Ç¿Õ Ö÷¼ü
roomid VARCHAR2(10) not null,-- ·Ç¿Õ
whenpred DATE not null,-- ·Ç¿Õ
whopred VARCHAR2(20) not null,-- ·Ç¿Õ
phone VARCHAR2(20) not null,-- ·Ç¿Õ
arrivetime DATE not null,-- ·Ç¿Õ
leavetime DATE not null,-- ·Ç¿Õ
trueprice NUMBER(12,2) not null,
state NUMBER default 0 check(state in (0,1,2)) not null-- ȡֵ·¶Î§Îª0¡¢1ºÍ2£¬0±íʾÓÐЧ£¬1±íʾÈëס£¬2±íʾʧЧ£¬Ä¬ÈÏΪ0*/
);
±íÃû hotel_t_Predestine£¨Ô¤¶©ÐÅÏ¢±í£©
ÁÐÃû ÃèÊö Êý¾ÝÀàÐÍ£¨¾«¶È·¶Î§£© ¿Õ/·Ç¿Õ Ô¼ÊøÌõ¼þ
predid Ô¤¶©µ¥ºÅ CHAR(16) ·Ç¿Õ Ö÷¼ü
roomid ·¿ºÅ VARCHAR2(10) ·Ç¿Õ
whenpred Ô¤¶©Ê±¼ä DATE ·Ç¿Õ
whopred Ô¤¶©ÈË VARCHAR2(20) ·Ç¿Õ
phone ÁªÏµ·½Ê½ VARCHAR2(20) ·Ç¿Õ
arrivetime Ô¤µÖʱ¼ä DATE ·Ç¿Õ
leavetime Ô¤Àëʱ¼ä DATE ·Ç¿Õ
trueprice ·¿¼Û NUMBER(12,2)
state ״̬ NUMBER ·Ç¿Õ ȡֵ·¶Î§Îª0¡¢1ºÍ2£¬0±íʾÓÐЧ£¬1±íʾÈëס£¬2±íʾʧЧ£¬Ä¬ÈÏΪ0*/
insert into hotel_t_Predestine values (0000000000000000,11,sysdate,'shihua','18615396007',sysdate+10,sysdate+34,100,0);
insert into hotel_t_Predestine values (0000000000000001,12,sysdate,'shihua','18615396007',sysdate+10,sysdate+34,100,1);
insert into hotel_t_Predestine values (0000000000000002,13,sysdate,'shihua','18615396007',sysdate+10,sysdate+34,100,2);
select * from hotel_t_Predestine;
2) ´´½¨´¥·¢Æ÷£ºÊµÏÖ²åÈë¡¢ÐÞ¸ÄÔ¤¶©ÐÅϢʱ±£Ö¤Ô¤¶©·¿¼Û²»µÃµÍÓÚ·¿¼Û×îµÍ¼Û
create or replace trigger tri_predestine_3_2
before insert