Code Base Access Control & Invoker’s Right mustafakalayci, 2020-06-21 Hi, So you might have already used some “invoker’s right” functions. As you know when you create a procedure/package/function and grant execute on them to other users, whenever other user run those codes, they will run with your privilege. Sometimes you might need those objects to run with “invoker’s right”…. Continue Reading
Native Compilation of a PLSQL Object mustafakalayci, 2020-06-17 Hi, you’ve probably heard about “NATIVE” compilation about plsql objects. I wanted to demonstrate how it is work and whether it really does matter or not. By default Oracle compiles every plsql object as “INTERPRETED” which means, your plsql code transform into a intermediate form which interpreted every time when… Continue Reading
Parsing CSV Lines and columns in PLSQL mustafakalayci, 2020-06-03 Hi, Yesterday, one of my customers asked for help to tune a procedure and when I investigated the problem I find out that their method to get a specific “column” value in csv file was the problem. So we discuss the situation and adopt a new version of the code…. Continue Reading
How to convert a LONG column to CLOB directly in a query mustafakalayci, 2020-04-06 Hi, This is a big problem since LONG is a very painful data type. You cannot search in it, use it in CTAS (create table as), pass it to a plsql object as parameter etc. Oracle strongly suggest not to use a LONG column anymore but unfortunately there are many… Continue Reading
Oracle 18c New feature Private Temporary Table mustafakalayci, 2020-03-22 Hello, 18c introduced a new object called Private Temporary Table (I will call it PTT in this post). PTT is just another version of Global Temporary Table(GTT). The data is temporary and will be stored for a time. Data in temporary tables (both PTT and GTT) can be queried by… Continue Reading
Sequential ID column without gap! mustafakalayci, 2020-02-06 Hello, A customer is asking to you generate order numbers one by one and without gap! What an unpleasant request isn’t it? if you are not familiar to databases then you might think that this request is logical but it is not. So your customer asked for this and you… Continue Reading
How to store Yes No questions on table and BITAND function mustafakalayci, 2020-01-20 Hi everyone, you might see BITAND function is frequently used by Oracle on source codes. Did you wonder why? What does BITAND function do? as you can understand from the name, it does a bitwise AND operation on parameters. probably you know what a bitwise and but as a small… Continue Reading
Commit Time – Part 2 (On Commit Trigger) mustafakalayci, 2019-12-19 Hello again, Not long ago, I mentioned about how to get approximate commit time on a table: http://10.157.89.12/2019/05/25/commit-time-for-an-inserted-row-in-oracle/ While I was reading some blogs and jumping from one to another, I came to Saibabu Devabhaktuni’n blog post: http://sai-oracle.blogspot.com/2013/09/how-to-setup-oracle-on-commit-trigger.html and I was literally shocked because I never heard something about this…. Continue Reading
Can not Drop Materialized View on 12c and above? mustafakalayci, 2019-12-06 Hello Everyone, I couldn’t write for a long time because of a crazy workload. During this heavy hardworking, I faced with a problem on one of my customers. They have a on commit refresh Materialized View (MV) and started to complain about they couldn’t insert into main table of MV…. Continue Reading
CLOB size matters! mustafakalayci, 2019-07-31 Hi, Many developer and DBA has an idea about the storing clobs. Basic rule is “if length of clob is higher tan 4000 then it will be stored in lob segment not in table segment” which is correct but sometimes misinterpreted! if you have a clob column in your table,… Continue Reading