Featured Post

8 Ways to Optimize AWS Glue Jobs in a Nutshell

Image
  Improving the performance of AWS Glue jobs involves several strategies that target different aspects of the ETL (Extract, Transform, Load) process. Here are some key practices. 1. Optimize Job Scripts Partitioning : Ensure your data is properly partitioned. Partitioning divides your data into manageable chunks, allowing parallel processing and reducing the amount of data scanned. Filtering : Apply pushdown predicates to filter data early in the ETL process, reducing the amount of data processed downstream. Compression : Use compressed file formats (e.g., Parquet, ORC) for your data sources and sinks. These formats not only reduce storage costs but also improve I/O performance. Optimize Transformations : Minimize the number of transformations and actions in your script. Combine transformations where possible and use DataFrame APIs which are optimized for performance. 2. Use Appropriate Data Formats Parquet and ORC : These columnar formats are efficient for storage and querying, signif

PL SQL: How to Fix Errors

PL/SQL is procedural language, and the PL/SQL procedures you can call from any high-level language. This is depending on your project requirement.
PL SQL Errors tips to avoid
PL SQL 
How to prevent some common errors or exceptions while writing PL/SQL procedures in your project.
  • The number one and primary one is assigning variables non-numeric to numeric. This is one kind of area where you need to look in while writing PL/SQL procedure.
  • PL/SQL is nothing but an invitation for trouble. They are all centered on data types and implicit conversion.

What's implicit conversion?

Let's say you have number held in a varchar2 data type variable, v_value. You try assigning n_value, a number data type variable, that value with the following line of code:n_value := v_value;

That should work, right?

Yes, it should, but when it doesn't, because you don't actually have a numeric literal stored in variable v_value, the implicit data type conversion will raise an "unexpected" exception in your program unit.
Another most common issue is assigning DATE field to numeric field while writing PL/SQL procedure. Usually, it will not work, and it will through a conversion error.

You want to pass a date value to a function that will return the time in seconds since midnight, January 1, 1980. The function requires the date be passed as a varchar2 parameter in the form DD-MON-YY.
```sql
d_value date := sysdate;
n_value number;
```     
```sql

BEGIN
n_value := date_to_long(d_value);

```      

Sample PL/SQL

  1. Oracle's default date format is DD-MON-YY, so it will work fine, right?
  2. Not exactly. If the current NLS_DATE_FORMAT for the session is DD-MON-YY (the default), it will work, but not if it is YYYYMMDD HH24MISS, as I set mine every time I log in to SQL*Plus.
  3. The above two kinds of errors you can avoid as a preventive measure while writing your PL/SQL procedure.

Read more

Comments

Popular posts from this blog

How to Fix datetime Import Error in Python Quickly

How to Check Kafka Available Brokers

SQL Query: 3 Methods for Calculating Cumulative SUM