چند نکته در دیتابیس اوراکل-قسمت ششم

چند نکته در دیتابیس اوراکل-قسمت اول
چند نکته در دیتابیس اوراکل-قسمت دوم
چند نکته در دیتابیس اوراکل-قسمت سوم
چند نکته در دیتابیس اوراکل-قسمت چهارم
چند نکته در دیتابیس اوراکل-قسمت پنجم

 

export داده های چند جدول در چندین فایل در اوراکل
روش اول: باید با دیتای زیاد تست شود
set colsep “;”
set linesize 9999
set trimspool on
set heading off
set pagesize 0
set wrap off
set feedback off
set newpage 0
set arraysize 5000
spool your_csv_file.csv
select rows from your tables;
spool off
روش دوم که یک ابزار جاوایی می باشد. به نام DBCrane
  • طبق گفته خود سایت سرعت آن ۳ برابر imp/export می باشد.
  • سرعت آن از ابزارهای ETL نیز سریعتر می باشد.
  • بر روی همه سیستم عامل ها نصب می شود.
  • برای هر کدام از ورژن های جاوا یک نسخه مجزا دارد.
در مورد sql injection در اوراکل و حمله های جدید و راهکارهای جدید
معمولا درحال حاضر هریک از ابزارهای برنامه نویسی خود بصورت پیش فرض مسائل امنیتی بخصوص کنترل sql injection را رعایت می کنند. برای کنترل بیشتر بهتر است که از سخت افزارها و ابزارها استفاده شود.
یکی از راه کارها برای جلوگیری از Sql injection استفاده از Web Application Firewall –WAF می باشد.
برای چک کردن Sql injection ابزارهای مختلفی می باشد که ابزار Acunetix می تواند در این زمینه به شما کمک کند.
درباره Ad hoc Query
شاید خیلی جاها از این اصطلاح نام برده باشند.  این یک کلمه لاتین می باشد که در انگلیسی به معنی “برای این هدف” هم معنی می دهد. در واقع یک نوع کوئری می باشد که شما فقط در یک نوع قاعده خاصی که مورد نیاز شما باشد استفاده می گردد. در مثال زیر یک نمونه ساده از آن می باشد که اجرای هربار کوئری بر اساس نوع متغیر متفاوت می باشد.
l_query = "Select * from table where id = " + yourId
فانکشن Greatest و Least در اوراکل
جهت پیدا کردن کوچکترین عدد در بین مجموعه اعداد از  Least استفاده میشود.
جهت پیدا کردن بزرگترین عدد در بین مجموعه اعداد از  Greatest استفاده میشود.
مثال اول:

select least(4,5,6,7,8,nvl(null,-1)) low,
greatest(4,5,6,7,8,nvl(null,-1)) high
from dual
Result:
low = -1
high =>
مثال دوم:

select s.*,
greatest(sal,comm) high,
least(sal,comm) low
from salary s
استفاده CASE within RETURN در اوراکل
از این مدل می توانید به جای استفاده از -IF ELSIF- در فانکشن استفاده کنید برای برگرداندن یک مقدار:
CREATE OR REPLACE FUNCTION grade_translator (grade_in IN VARCHAR2)
RETURN VARCHAR2
IS
BEGIN
RETURN CASE grade_in
WHEN 'A' THEN 'Excellent'
WHEN 'B' THEN 'Very Good'
WHEN 'C' THEN 'Good'
WHEN 'D' THEN 'Fair'
WHEN 'F' THEN 'Poor'
ELSE 'No such grade'
END;
END;
درباره Blob
بدین صورت که یک جدول ایجاد کنید که دارای یک فیلد Blob و یک یا چند فیلد دیگر برا ی کنترل یکتا بودن و عملیات جستجو که دارای ایندکس باشد.
حال دیگر نیازی نیست که جدولی را که درای فیلد Blob می باشد در کوئری ها استفاده کنید. فقط کافیست تا از طریق همان یک یا چند فیلد یکتا هر موقع که نیاز بود و در نتیجه کار به فیلد Blob خود دسترسی پیدا کنید.
یکی از بهترین طراحی ها بدین گونه می باشد زیرا اولا می توانید برای آن جدول Tablespace جداگانه ایجاد کنید دوما می توانید برای ایجاد نسخه پشتیبان برای آن برنامه یزی کنید و سوما تمام فایل های Blob شما بصورت متمرکز درمی آید و نحوه مدیریت آن راحتر است.
انتخاب سایز سگمنت Blob
A Blob is a data type with an unbounded size. It can be many megabytes in size, much larger than any database interface can handle in a single I/O transfer. Therefore, Blobs are defined as a series of segments of uniform size, and the I/O interface transfers Blobs one segment at a time.
Blobs are a special case because there is a special Blob page type, on which other data types cannot be stored. The data page for a record containing a Blob stores a Blob ID, which indicates which Blob page the Blob is stored on. A Blob is stored on the same page as the primary record version, if it fits. If it does not fit on that page, special pages are allocated for the Blob–as many as are required–and an index is stored on the primary page. Blob pages are never shared; either a Blob is on a normal data page, or it has a page to itself.
It is advantageous to define a 👉Blob with a segment size equal to the page size. 👈If both the page size and the Blob segment size are 👉۴۰۹۶ bytes👈, queries of large Blobs can achieve a data transfer👉 rate of up to 20MB per second.👈 InterBase ceases to be any kind of bottleneck in this situation; it is more likely that the hardware I/O bus, the network bandwidth, or the middleware are the limiting factors for throughput.
چند نکته در دیتابیس اوراکل-قسمت ششم
به این مطلب رای دهید!

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

این قسمت نباید خالی باشد
این قسمت نباید خالی باشد
لطفاً یک نشانی ایمیل معتبر بنویسید.

فهرست
Oracle APEX Capabilities (OAC)