الانتقال إلى المحتوى
View in the app

A better way to browse. Learn more.

مجموعة مستخدمي أوراكل العربية

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

سؤال عن : Table Type Parameter

Featured Replies

بتاريخ:

يا اهل الخبرة في اوراكل افيدونا افادكم الله.. دلوقتي انا عامل برنامج صغير WindowsForms فيه listview باباصي الداتا اللي فيها ل data table اللي بدوره بيباصيها ل T-SQL stored procedure ك input parameter و طبعا الداتا بتتحط الاول في table type و اللي منها ال procedure ب select الداتا و يحطها في table و كله شغال تمام.. دلوقتي انا عايز اعمل نفس الحركة بس مع اوراكل.. يعني انا دلوقتي عندي داتا جايه كتله واحده ك bulk، في sql server باخدها احطها كلها مرة واحده في table type مربوط ب procedure ك input type فيه البرنامج بينادي ال procedure اللي بدوره بيستقبل الداتا بنفس فورمات ال table type و ب select منها و يحطها في ال table.. في اوراكل علشان اعمل كده بتبقي ايه الخطوات؟؟

بتاريخ:

read about index by table

بتاريخ:
  • كاتب الموضوع

read about index by table

ال attributes اللي في ال datatable كل واحد له datatype مختلف

بتاريخ:

Column type could be a whole record

تم تعديل بواسطة eslam elbyaly

بتاريخ:

مقرتش انت

بتاريخ:
  • كاتب الموضوع

مقرتش انت

انا وصلت لحاجه زي كده بس ماعرفش انا ماشي صح ولا غلط.. انا شغال علي جهاز SQL Server و مش عارف اجرب الكود ده علشان جهاز الاوراكل مش متاح اجرب عليه دلوقتي..ملاحظة صغيرة.. الاوراكل عندنا 6i  :(

 

create table test_table1 (
		employee_no integer,
		status varchar2(5),
		time_in date,
		date_in date);

create or replace package data1 as
	type type_employee_no is  table of test_table1.employee_no%type index by pls_integer;
	type type_status is  table of test_table1.status%type index by pls_integer;
	type type_time_in is  table of test_table1.time_in%type index by pls_integer;

	procedure usp_test_procedure1 (
		p_employee_no in type_employee_no,
		p_status in type_status,
		p_time_in in type_time_in);
end data1;

create or replace package body data1 as
	procedure usp_test_procedure1 (
		p_employee_no in type_employee_no,
		p_status in type_status,
		p_time_in in type_time_in) is
	begin
		forall i in p_employee_no.first..p_employee_no.last
		insert into test_table1 (employee_no, status, time_in, date_in)
		values (
			p_employee_id(i),
			p_status(i),
			p_time_in(i),
			p_time_in(i).todate('DD-MM-YYYY');
	end usp_test_procedure1;
end data1;

 

تم تعديل بواسطة Adel Moustafa

بتاريخ:

طيب منتا وصلت اهه يا باشا , بس بدل دى مثلا

test_table1.employee_no%type

تبقى

%rowtype

- عموما انت حلك زي ما قلتلك ان شاء الله , اما

1- index by table of records .

2- nested tables .

3- varrays .

وأظن رقم 2 أنسب لك .

بتاريخ:
  • كاتب الموضوع

طيب منتا وصلت اهه يا باشا , بس بدل دى مثلا

test_table1.employee_no%type

تبقى

%rowtype

الفرق هايكون في ايه؟؟

معلهش لو بارخم عليك انا بس كنت دخلت في اوراكل علي بسيط من زيادة عن 10 سنين و كل دماغي دلوقتي T-SQL.. و حاجه كمان.. الكود اللي كتبته ده مش هو الحل؟؟

تم تعديل بواسطة Adel Moustafa

بتاريخ:

معلش انا مش بتابع المواضيع بالتفصيل , انا بديك hint وانت تعيش بقى , عشان كده بقلك اقرأ عن كذا

%type نفس نوع بيانات عمود معين

%rowtype بتستخدم في تعريف ريكورد كامل بنفس نوع بيانات اعمدة جدول معين

record_name employees%rowtype ;

بتاريخ:
  • كاتب الموضوع

معلش انا مش بتابع المواضيع بالتفصيل , انا بديك hint وانت تعيش بقى , عشان كده بقلك اقرأ عن كذا

%type نفس نوع بيانات عمود معين

%rowtype بتستخدم في تعريف ريكورد كامل بنفس نوع بيانات اعمدة جدول معين

record_name employees%rowtype ;

تسلم يا كبير بس انت محتاج تركز شوية في المواضيع قبل التعليق علشان ال hint يبقي صح و في محله و ماتسوحش اللي بيسأل.. انا اعرف ان ال %rowtype بتاعة row كامل لو نفس ال data type انما المثال بتاعي كل entity في ال record ب data type مختلفه و بالتالي لازم كل entity تاخد ال data type المناسبه ليها من ال record اللي في ال table.. علشان كده استغربت و سالت هاتفرق في ايه يمكن يكون مفهومي غلط.. يعني انا لو عملت type_employee_no is table of test_table1%rowtype هو هايعرف منين انهي data type اللي يجيبها يحطها لل attribute دي من ال record بتاع ال table و هو عنده 3 data types مختلفين في كل record؟؟

كمان انا بعت كود و انت رديت ب "حلك زي ما قلتلك" و اديت 3 اختيارات و سيبتك من اللي وصلت ليه، فانا دلوقتي ماعرفتش برضه حلي ماشي في الطريق الصح ولا لا؟؟

بتاريخ:

يا نهار ابيض دلوقتى بقيت بسوحك !!

عموما , مفهومك غلط يا باشا , اقرأ عن الي قلتلك عليه وانت هتوصل ان شاء الله .

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

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

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

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

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

Account

Navigation

البحث

إعداد إشعارات المتصفح الفورية

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.