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

مشكله فى كلمة declare لابد من استخدام variable


fathy attia

Recommended Posts

السلام عليكم
استخدم كتاب لتعلم الاوراكل
يستخدم declare فى تعريف المتغيرات
و لكن عند التنفيذ
يقول bind variable no declared


عند استخدام variable و حذف declared ينفذ الكود
variable v_deptno NUMBER;
BEGIN
SELECT department_id
INTO :v_deptno
from departments
where department_name='Sales';
END;
/
print v_deptno


التنفيذ يتم على isqlplus
و شكرا

رابط هذا التعليق
شارك

السلام عليكم
استخدم كتاب لتعلم الاوراكل
يستخدم declare فى تعريف المتغيرات
و لكن عند التنفيذ
يقول bind variable no declared


عند استخدام variable و حذف declared ينفذ الكود
variable v_deptno NUMBER;
BEGIN
SELECT department_id
INTO :v_deptno
from departments
where department_name='Sales';
END;
/
print v_deptno


التنفيذ يتم على isqlplus
و شكرا

84634[/snapback]



هذا الموضوع عن bind varabile
مثال
varabile vname number(5)
declare
v1 varchar2(20)
into v1
from emp
where empno=7900;
:vname:='abdelkader;
end;
/
print vname;
رابط هذا التعليق
شارك

We use Declare in Pl/Sql Code

declare 
no number;
begin
/* 
Excute statement
*/
end;




and we use Variable in SQL ....

variable v_deptno NUMBER;

select dname
from dept
where dept_no = :v_deptno;

رابط هذا التعليق
شارك

variable تستخدم للتعامل مع المتغيرات بعيدا عن صيغ (procedure ,function)لآن التعريف يكون بداخلهم بعد جملة is,
و declare تستخدم فى pl/sql مع صيغة برنامج (anonymous blocks)أى يحوى begin وend أى سينفذ مرة واحدة
وفى بيئة pl/sqlعندما تستخدم function ولها returnيجب حمله فى variable(معرف خارج function) حتى تتمكن من طباعته

أرجو أن أكون أوضخت المراد

رابط هذا التعليق
شارك

  • بعد 4 أسابيع...

اخى العزيز عبارة bind variable no declared
هذه العباره معناها انك استخدمت متغير بعد begin وهذا المتغير لم تعلن عنه وللتخلص من هذه المشكله لابد من الاعلان عن المتغيرات المستخدمه فى البلوك بعد عبارة delare مثلا
اذا كانا سوف نستخدم متغير اسمه sal فلابد ان نعلن عنه اولا فى ال declare فنقول مثلا sal number(3)
او اذا اردنا ان نعطيه نفس نوع حقل من جدول وليكن employees فنكتب sal emplyees.salary%type وبذلك نكون اعلنا عن المتغير الذى سوف نستخدمه

رابط هذا التعليق
شارك

بسم الله الرحمن الرحيم
السلام عليكم ورحة الله
أخي العزيز سأشرح لك بشكل أوضح ولكن عليك أن تقرأ أكثر و(تمخمخ) :)
يستخدم Variable في الجلسة لإعلان عن متغير Global variable الذي يمكنك استدعاءه -بعداسناد قيمة له طبعا- من أي بريمج أو برنامج(Anonymous block,Procedure,Function,or Package)
عن طريق سبقه ب(:) أي كما يلي(Global_var:) وذلك دن الاضطرار لتعريفه ضمن الرنامج نفس
او ايتعليمة SQL حتى في استعلام بسيط)Select,Insert ...) تنفذه في الجلسة-Session-

اما Declare(فيAnonymous block) أو Declare section(في Function,Procedure,or Package)
فهي لتعرف المتحولات على مستوى البرنامج أي لا يمكن استدعاءها من خارج البرنامج ولا استخدامها

هل استوعبت الموضوع فهذا كلام مختصر فالموضوع يحتاج لاكثر من ذلك
ارجوا منك الدعاء وستر الأخطاء واعلامي بها :rolleyes:

رابط هذا التعليق
شارك

انضم إلى المناقشة

يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.

زائر
أضف رد على هذا الموضوع...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   تمت استعادة المحتوى السابق الخاص بك.   مسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

جاري التحميل
×
×
  • أضف...

برجاء الإنتباه

بإستخدامك للموقع فأنت تتعهد بالموافقة على هذه البنود: سياسة الخصوصية