الانتقال إلى المحتوى
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.

مشكلة بال Date ... ملف csv عندما اجلب التاريخ باستخدام text_io

Featured Replies

بتاريخ:

انا عندي ملف csv و عندما اجلب التاريخ باستخدام text_io فانه يصبح على النحو التالي
08:36:20 2011-09-30

و انا كتبت كود على البي ال لحل لمتابعة المشكلة

'
declare
v_date varchar2(20);
v_time varchar2(20);
begin
execute immediate 'alter session set nls_date_format=''dd-mm-yyyy''';
v_date := '2011-09-20';
v_time := '08:36:30';
--v_date:=trunc(v_date);
--v_time:=TO_date(v_time, 'HH24:MI:SS') ;
dbms_output.put_line('v_date: '||v_date||'v_time: '||v_time);
 
begin
insert into att(att_date,att_time) values
(to_date(v_date,'dd-mm-yyyy'),to_date(v_time,'h24:mi:ss'));
commit;
exception
when others then
dbms_output.put_line('sql error: '||sqlerrm);
end;
exception
when others then
dbms_output.put_line('sql error1: '||sqlerrm);
end;
end;


و ينتج هذا الخطا:

ORA-01861: literal does not match format string



ارجوا الحل و شكرا على حسن الاستماع

بتاريخ:

المشكلة بسيطة جدا

فقط
v_date := '20-09-2011'

بدلا عن
2011-09-20


وشكرا

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

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

المشكلة عندي ان البينات تاتي على شكل 30-09-2011 و ليس على شكل 2011-09-30

و انا هنا مضطر لوضع التاريخ على هذه الهيئة لمحاكاة المشكلة
و ان الكود السابق فقط لمعرفة اين تكمن المشكلة و ليس هو الكود الفعلي



ارجوا الرد بعد تجريب الكود على قاعدة بينات خاصة بكم
بعد انشاء جدول على هذا الشكل
create



table att (att_date date , att_time date);

و شكرا لكم

بتاريخ:

السلام عليكم
قمت بتجربة المثال واستخدمت :

To_Date(V_Date, 'rrrr-mm-dd')



وقام بادخال التاريخ كالتالي:
20/09/2011

هل هذا ما تريد ؟؟

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

عدلت الكود على الفورمات الجديد و لكن لم يعمل

و ارسل الخطأ التالي
ora-01821: date format not recognized

هل من نصيحة بهذا الخصوص
و ارجوا منك ارفاق الكود الذي عمل معك دون مشاكل و شكرا

بتاريخ:

السلام عليكم
جرب ادخال التاريخ فقط:

Insert Into Att(Att_Date,Att_Time) Values (To_Date(V_Date, 'rrrr-mm-dd'), To_Char(To_Date('08:36:30', 'HH24:MI:SS'), 'HH24:MI:SS'));



في هذه الحالة يجب تغيير Data Type لعمود الوقت الى Varchar2

بتاريخ:

السلام عليكم و رحمة الله و بركاته

أخي الحبيب، المشكلة ليست فقط التاريخ، بل أيضاً في صيغة الوقت

يرجى تصحيح التالي :


insert into att(att_date,att_time) values
(to_date(v_date,[color=#ff0000]'YYYY-MM-DD'[/color]),to_date(v_time,'h[color=#ff0000]H[/color]24:mi:ss'));


و لا يوجد داعي لاستخدام " execute immediate 'alter session set nls_date_format=''dd-mm-yyyy'''; "

ليصبح الكود كالتالي:


declare
v_date varchar2(20);
v_time varchar2(20);
begin
v_date := '2011-09-20';
v_time := '08:36:30';
dbms_output.put_line('v_date: '||v_date||'  v_time: '||v_time);
begin
 insert into att(att_date,att_time) values
 (to_date(v_date,'YYYY-MM-DD'),to_date(v_time,'hH24:mi:ss'));
 commit;
exception
 when others then
 dbms_output.put_line('sql error: '||sqlerrm);
end;
exception
when others then
dbms_output.put_line('sql error1: '||sqlerrm);
end;
/

بتاريخ:

insert into att(att_date,att_time) values
(to_date(v_date,'yyyy-mm-dd'),to_date(v_time,'h24:mi:ss'));

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

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

اخواني الاعزاء
شكرا لكم لحسن تعاونكم

ارجوا توضيح الفرق بين
H24
HH24
HH

,ومتى استخدام كل منهم
لتعم الفائده على الجميع

بتاريخ:

السلام عليكم و رحمة الله و بركاته

أخي الحبيب، يتم استخدام
HH: لإظهار الوقت من 1 - 12، و غالبا ما يتم استخدامها مع "AM PM ..." مثل "( 11:25:14 AM )
HH24: لإظهار الوقت في صيغة 0 - 24 (23:59)

و بحسب علمي أنه لا يوجد في الأوراكل صيغة وقت " H " منفردة، إما " HH24 " أو " HH "

بارك الله فيك

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

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

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

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

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

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.