Jump to content


Windows Server 2012

คำสั่ง insert , update ,delete ที่ใช้กับ formที่เป็นแบบ tabular


  • Please log in to reply
2 replies to this topic

#1 ekkapong

ekkapong

    Member

  • Members
  • PipPip
  • 399 posts

Posted 26 December 2007 - 04:05 PM

Table give_order
Give_no   number(10) pk
Emp_id   number(10)  fk
Dealer_id  number(10) fk
Give_date   date
status

Table give_order _list
Give_number  pk
Give_no   pk,fk
Product_id    fk
Qty
Status

คำถาม
1.ถ้าผมทำการสร้าง form แบบ master detail form จากตาราง ทั่งสองนี้แล้ว โดย Table give_order  เป้น master  และ Table give_order _list เป็น detail
ถ้าต้องการสร้างปุ่ม save โดยไม่ใช้ commit_form ; ควรจะเขียนอย่างไรดีครับ

code ที่ผมลองเขียนดูแต่ยังไม่ work ครับ
   go_block('give_order');
   insert into give_order values(:give_order.give_no,:give_order.emp_id,:give_order.dealer_id,:give_order.
give_date,
                                             :give_order.status);
   commit;
   go_block('give_order_list');
   insert ....     ตรงนี้ยังไม่รู่้จะเขียนอย่างไร เพราะเป็น  แบบ tabular จะต้องใช้ cursor รึปล่าว

2. การ update  เมื่อเราทำการค้นหาและแสดงข้อมูลในส่วน master detail แล้ว ผมได้ทำการแก้ไขในส่วนของ detail form  เช่น qty เราจะเขียน code อย่างไรดีครับ

ขอบคุณทุกคำตอบครับ

#2 supachai

supachai

    Member

  • Members
  • PipPip
  • 119 posts

Posted 26 December 2007 - 05:37 PM

(I)  
go_block(...);
first_record;
LOOP
  Insert into .... values ....
  IF :system.last_record = 'TRUE' THEN
    EXIT;
  ELSE
  Next_Record;
  END IF;
END LOOP;

--------------------- เพิ่มอีกนิด ----------------------
  first_record;
  
  LOOP
      begin
          .....
      exception
          when no_data_found then exit;
      end;

       ......
    Next_Record;

  END LOOP;


(II) ถ้าเราไม่ได้ update field ที่เป็น FK เช่น qty ก้อทำได้ตามปกติ
update  ....
set        qty = :block.field
where   ....

ถ้าไงขอดูข้อมูล ว่าต้องการ update field จากค่า ... เป็น ...
แต่ระวังเรื่อง dELETE ที่ master ให้ใส่ ON DELETE CASCADE ด้วยครับ

Edited by supachai, 28 December 2007 - 08:39 AM.


#3 ekkapong

ekkapong

    Member

  • Members
  • PipPip
  • 399 posts

Posted 27 December 2007 - 08:32 AM

ขอบคุณมากครับพี่ supachai เดี๋ยวจะลองดูแล้วจะมาบอกครับ




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users