One thing was on attending this, now I know what all cannot be done with 9i/10g :). Done miss the Presentation, do have a look on it.
Curtain Raiser to Oracle 11g
One thing was on attending this, now I know what all cannot be done with 9i/10g :). Done miss the Presentation, do have a look on it.
Tables References & Referenced By
select ro.name table_name,To Identify the Tables referred by the Given Table:
substr(initcap(cc.column_name), 1, 30) column_name, cc.position,
cn.name constraint_name, ru.name owner
from sys.obj$ o, sys.user$ u, sys.con$ cn, sys.cdef$ c, sys.obj$ ro,
dba_cons_columns cc, sys.con$ rcn, sys.user$ ru
where o.owner# = u.user#
and u.name = '&&SCHEMANAME'
and o.name = '&&TABLENAME'
and c.robj# = o.obj#
and c.con# = cn.con#
and ro.obj# = c.obj#
and cc.owner = u.name
and cc.table_name = o.name
and rcn.con# = c.rcon#
and cn.owner# = ru.user#
and c.type# = 4
and cc.constraint_name = rcn.name
order by u.name, ro.name, cn.name, cc.position;
select a.table_name, initcap(b.column_name) column_name, b.position,Hope this is useful for you at times :)
a.constraint_name, a.owner
from (select ao.name table_name,
au.name owner,
bcn.name constraint_name,
decode(ac.type#, 4,
decode(ac.refact, 1, 'CASCADE', 2, 'SET NULL', 'NO ACTION'),
null) delete_rule,
bo.name tn
from sys.cdef$ bc, sys.con$ bcn, sys.obj$ bo, sys.user$ bu,
sys.con$ brc, sys.user$ bru, sys.obj$ bro,
sys.cdef$ ac, sys.con$ acn, sys.obj$ ao, sys.user$ au
where bc.con# = bcn.con#
and bc.obj# = bo.obj#
and bo.owner# = bu.user#
and bu.name = '&&SCHEMANAME'
and bo.name = '&&TABLENAME'
and bc.rcon# = brc.con#(+)
and brc.owner# = bru.user#(+)
and bc.robj# = bro.obj#(+)
and ac.con# = bc.rcon#
and ac.con# = acn.con#
and ao.obj# = ac.obj#
and ao.owner# = au.user#
and ac.type# in (2,3)) a,
dba_cons_columns b
where b.table_name = a.tn
and b.constraint_name = a.constraint_name
order by a.table_name, a.constraint_name, b.position;
Exploit the Bulk Bind of PL/SQL
cursor emp_cur is
select employee_id
from employee where department_id = dept_in;
begin
for rec in emp_cur loop
update employee set salary = salary + 1000
where employee_id = rec.employee_id;
end loop;
end;
select employee_id
bulk collect into collection_var
from employee where department_id = dept_in;
begin
forall i in collection_var.first .. collection_var.last
update employee set salary = salary + 1000
where employee_id = collection_var(i);
end;
Back to Basics
We always gave importance to C, C++ and finally the Lingua Franca JAVA. Our talent was judged based on how well one can code in any one of the above with importance in the given order. Here in these we write the code, see the results pat ourselves on our success. So this was the best part of our engineering syllabus.
Then came the concepts that had a second round of importance Theoretical Computer Series - Advanced Data Structures, Algorithm Analysis, Theory of computation and Discrete Mathematics. If one explains these concepts well he would be called as a technical Buff. They were considered amongst us as the one who will be giving the next generation of new algorithms and new Languages.
I am not in Powerset to give some AI or NLP solutions. Now I work with database, database and database only. I try to write good number of Sqls and PL/SQL statement every day.
Programming Commitment
After all this ending up as senior software architect like this in some big Servicing companies. Finally the developer's will be put in an impression that the architect has coded more than millions of lines. I did not stick to the point that all architects must sit and write programs, they must have some relevant knowledge on programming, which will really help them in giving better solution, and sure they can get efficient work from developers.
Where is the Software Monopoly Shifting Now?
There are people who are really looking ahead and started to think about their career decisions. But this means the software monopoly is something happening always like they have mentioned from IBM , Microsoft took over and now is it not shifting towards the Google. Though there is a lot of hype on Web 2.0 bubble, still lot of successful start up are devoured by the mountain valley giant from photo sharing to video sharing startups. Many consider Google is one of the main reason behind the fall of Microsoft monopoly, but it looks like Google will be the monopoly for the next web based software development. Still the Monopoly will be there, every new startup will be struggle to exist or get sold to any one of the defunct Monopoly giants like IBM , AOL or the ruling giant like Microsoft or Google. This presentation by Seth Godin discuss the success strategy of Google, which made me think on the above lines.
Contact Me Using Contactify
You can contact me at this link. That will be forwarded to my mail box. Cool way to protect spams :)
Oracle 10g My Favorites So Far
I am in a Oracle 10g developer’s workshop. In these two days some interesting things in Oracle 10g which I found are,
- Automatic SQL Tuning in Oracle Database 10g using the DBMS_SQLTUNE. On good illustrations you can use this.
- Resumable timeout, this really saves most of the time in redoing things due to a small mistake we failed to notice. At least for me it will save loads of time on schema imports. You must have a deep look into this.
- File Transfers, using oracle this will really make database programming stronger.
- Conditional Compilation will really make debugging easier (Inherits A ‘C’ Language #ifdef Feature).
- Pattern Matching, this regular expression will give some Java edge.
To try out new features of 10g, you can always request a workspace from oracle at this place.