إنتقال للمحتوى

  • تسجيل الدخول عبر الفيس بوك تسجيل الدخول عبر تويتر Log In with LinkedIn Log In with Google      تسجيل دخول    
  • إنشاء حساب

صورة
- - - - -

كيفية اظهار تفاصيل الموظف بمجرد ادخال Empno في جدولemp


2 رد (ردود) على هذا الموضوع

#1 abdullah_hamad

abdullah_hamad

    عضو

  • الأعضــاء
  • 13 مشاركة

تاريخ المشاركة 21 April 2007 - 11:40 PM

لسلام عليكم
حاولت بطرق كثيره لاتوصل للحل ولم اقدر اجيده
وكتبت هذا الكود ولكن ماالخطا فيه
DECLARE
ENO NUMBER(4);
BEGIN
ENO:=&ENO;
SELECT * FROM EMP WHERE ENO=EMPNO;
end;
/
بس ماضبط معي فايش الخطا
السوال
من خلال ال PL/SQL
اريد فقط ادخال رقم الموظف EMPNO للجدول EMP وبمجرد ادخال رقم الموظف فيعطيني كل تفاصيل الموظف اي الصف كامل JOB,SAL,DEPTNO,ENAME,HIREDATE والى اخره

ولكم الجزيل الشكر

تم التعديل بواسطة abdullah_hamad, 21 April 2007 - 11:48 PM.


#2 ابو صالح

ابو صالح

    مشرف سابق وعضو مميز

  • المجموعة الماسية
  • 1,253 مشاركة
  • البـلـد: Country Flag
  • المنصب الحالي:(رحمه الله)

تاريخ المشاركة 22 April 2007 - 01:42 AM

set serveroutput on
DECLARE
ENO NUMBER(4);
v_ename varchar2(20);
BEGIN
ENO:=&ENO;
SELECT ename into v_ename FROM EMP WHERE ENO=EMPNO;
end;

طبعا يحتاجلك ان تستخدم البكج dbms_output.put_line () لكي تعرض النتائج على sql*plus

<span style='font-size:11pt;line-height:100%'>
زكاة العلم نشرة

Oracle Certifed Expert, OCE RAC
Oracle Certified Professional OCP 9i,10g
ITIL v3

</span>


#3 medo_sar38

medo_sar38

    عضو

  • الأعضــاء
  • 8 مشاركة

تاريخ المشاركة 22 April 2007 - 05:10 PM

alsalam alekom
as i understand quation i think that u shoud use cursor to display all employee detail
u have employee table which contain such as 5 columns so u want to see the 5 columns
name of columns is empno ,ename,sal,job,comm then can see this all columns as below

by using pl sql
ed first.sql



[font=Arial]declare


cursor c1 is select *from emp;
er emp%rewtype;
Begin
open c1
loop
fetch c1 into er from emp where empno=en;
exit when c1%notfound;
dbms_output.put_line(er.empno||' '||er.ename ||' ' ||er.sal||' '||and so on)
end loop;
close c1;
end ;
/


go to sql and use
@first.sql



in my dbms i used and so on means remaining of columns [/u]


or u can use another way
declare
cursor c1 is select empno ,ename ,sal,job,comm from emp;
no emp.empno%type;
en emp.ename%type;
es emp.sal%type;
ej emp.job%type;
ec emp.comm%type;

Begin
open c1
loop
fetch c1 into no,en,es,ej,ec from emp where empno=no;
exit when c1%notfound;
dbms_output.put_line(er.empno||' '||er.ename ||' ' ||er.sal||' '||and so on)
end loop;
close c1;
end ;
/