Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. The Lounge
  3. Some Oracle praise?

Some Oracle praise?

Scheduled Pinned Locked Moved The Lounge
csharpdatabasesql-serveroraclecom
74 Posts 21 Posters 0 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • Sander RosselS Sander Rossel

    As I understand a schema in Oracle is more like a separate database in SQL Server and a schema like in SQL Server doesn't exist in Oracle.

    Read my (free) ebook Object-Oriented Programming in C# Succinctly. Visit my blog at Sander's bits - Writing the code you need. Or read my articles here on CodeProject.

    Simplicity is prerequisite for reliability. — Edsger W. Dijkstra

    Regards, Sander

    W Offline
    W Offline
    Wendelius
    wrote on last edited by
    #24

    Schema is used for example to define an ownership and to separate logically different components into separate areas, in both systems. A separate database in SQL Server is very different from schema.

    S 1 Reply Last reply
    0
    • Sander RosselS Sander Rossel

      Do people here actually like the Oracle database? Especially when compared to SQL Server. It seems everything I did so easily in SQL Server seems to be difficult or even impossible in Oracle. So far I like the for loops and the some_table.some_column%type type declarations. I'm not looking for Oracle hate or a religious war. I really just want to know what's so great about Oracle so I can enjoy it too (so far it's been mostly frustration).

      Read my (free) ebook Object-Oriented Programming in C# Succinctly. Visit my blog at Sander's bits - Writing the code you need. Or read my articles here on CodeProject.

      Simplicity is prerequisite for reliability. — Edsger W. Dijkstra

      Regards, Sander

      J Offline
      J Offline
      Jorgen Andersson
      wrote on last edited by
      #25

      It''s interesting to read the comments in this thread. Having worked for many years on Oracle, but now having changed company to work with SQL server, I have quite different experience. SQL Server is a much less mature product. It really feels like going fifteen years back in time. Programming in T-Sql feels like using prehistoric VB, the code is totally littered with stupid prefixes like @ and #. And it lacks consistency. The worst part is probably lock handling, on Oracle I never needed to think about it, period. No flashback queries. On Oracle you can do a SELECT AS OF TIMESTAMP. Even from dropped tables. Always on failover is a really poor substitute for RAC. Half the point with clustering is gone if you can only use one node at a time. Composite indexes are only having statistics on the first column, reducing the efficiency of the optimizer considerably. No pipelined functions, at all. I can keep on going for long. On the other hand, SSIS is just brilliant.

      Wrong is evil and must be defeated. - Jeff Ello

      Sander RosselS 1 Reply Last reply
      0
      • R RossMW

        The best part of Oracle is that I rarely have to use it anymore. I even hate the Gigs of pollution you had to install just to talk damned thing. :mad: So now when I have to talk to it from VS I just add one file to my project (Oracle.ManagedDataAccess.dll) and then have all the access I need. The bare minimum :)

        Sander RosselS Offline
        Sander RosselS Offline
        Sander Rossel
        wrote on last edited by
        #26

        RossMW wrote:

        The bare minimum :)

        Still too much :D

        Read my (free) ebook Object-Oriented Programming in C# Succinctly. Visit my blog at Sander's bits - Writing the code you need. Or read my articles here on CodeProject.

        Simplicity is prerequisite for reliability. — Edsger W. Dijkstra

        Regards, Sander

        R 1 Reply Last reply
        0
        • S Shelby Robertson

          Sander Rossel wrote:

          Do people here actually like the Oracle database?

          No. We have to support our project for both oracle and sql server, and oracle is a constant source of consternation. Like someone else said, the tools are from the stone age. And don't even get me started on on sub releases of the ODAC managed .net driver and half-assed implementation of their own database encryption with poor documentation on what features actually function.

          CPallini wrote:

          You cannot argue with agile people so just take the extreme approach and shoot him. :Smile:

          Sander RosselS Offline
          Sander RosselS Offline
          Sander Rossel
          wrote on last edited by
          #27

          I actually have a theory that PL/SQL actually stands for Polish SQL (as in Poland, the country). First, it's like Polish, I don't understand a word of what they say. Second, Polish are to us what Mexicans are to Americans, cheap labor (stealing our jobs)*. Larry just hired some cheap Polish people and let them make a database, hence Oracle and PL/SQL was born :D *Not particularly my opinion, no offence to Polish and Mexicans :D

          Read my (free) ebook Object-Oriented Programming in C# Succinctly. Visit my blog at Sander's bits - Writing the code you need. Or read my articles here on CodeProject.

          Simplicity is prerequisite for reliability. — Edsger W. Dijkstra

          Regards, Sander

          S S 2 Replies Last reply
          0
          • Sander RosselS Sander Rossel

            RossMW wrote:

            The bare minimum :)

            Still too much :D

            Read my (free) ebook Object-Oriented Programming in C# Succinctly. Visit my blog at Sander's bits - Writing the code you need. Or read my articles here on CodeProject.

            Simplicity is prerequisite for reliability. — Edsger W. Dijkstra

            Regards, Sander

            R Offline
            R Offline
            RossMW
            wrote on last edited by
            #28

            Yep. :laugh:

            1 Reply Last reply
            0
            • Sander RosselS Sander Rossel

              I actually have a theory that PL/SQL actually stands for Polish SQL (as in Poland, the country). First, it's like Polish, I don't understand a word of what they say. Second, Polish are to us what Mexicans are to Americans, cheap labor (stealing our jobs)*. Larry just hired some cheap Polish people and let them make a database, hence Oracle and PL/SQL was born :D *Not particularly my opinion, no offence to Polish and Mexicans :D

              Read my (free) ebook Object-Oriented Programming in C# Succinctly. Visit my blog at Sander's bits - Writing the code you need. Or read my articles here on CodeProject.

              Simplicity is prerequisite for reliability. — Edsger W. Dijkstra

              Regards, Sander

              S Offline
              S Offline
              Shelby Robertson
              wrote on last edited by
              #29

              See also[^]

              CPallini wrote:

              You cannot argue with agile people so just take the extreme approach and shoot him. :Smile:

              Sander RosselS 1 Reply Last reply
              0
              • Sander RosselS Sander Rossel

                Mika Wendelius wrote:

                One benefit with Oracle is to be able to run it on different platforms.

                Yes, that's one I heard and a very plausible one at that! :D Good thing we run it on Windows servers :laugh:

                Mika Wendelius wrote:

                Any examples?

                Table variables, simply declaring some variables and using them (in all manner of ways). For example, I simply wanted to something like the following:

                DECLARE @Names TABLE (Name VARCHAR(100))

                INSERT INTO @Names
                SELECT Name
                FROM Person.Person

                SELECT @Names

                SELECT Column
                FROM Table
                WHERE Name IN @Names -- Not sure if I need a sub select from the top of my head

                DECLARE @SomeText VARCHAR(100)
                SET @SomeText = "Not doable in Oracle"
                SELECT @SomeText

                I think the first thing with the table variable just isn't possible. My coworker, who worked with Oracle for about 30 years now, looked at me in disbelief and asked why I wanted to do such a thing anyway :~ The second, declaring a variable, assigning it a value and simply selecting it (FROM DUAL???) is just so awkward. Having multiple result sets in one procedure/session isn't possible. For example, from my software I want to insert an order, its details and do some auditing/logging and check if everything is in the database as expected.

                SELECT * FROM SalesOrder
                SELECT * FROM SalesOrderDetail
                SELECT * FROM AuditLog

                I have to execute the statements one by one and check the results, no way to do it all at once and get the results next to each other. Please, I beg of you, prove me wrong! It would make my life so much easier :D Maybe I'm in a "SQL Server state of mind" and Oracle just is another paradigm? Like OOP vs. Functional? And I'm simply missing it? :confused:

                Read my (free) ebook Object-Oriented Programming in C# Succinctly. Visit my blog at Sander's bits - Writing the code you need. Or read my articles here on CodeProject.

                Simplicity is prerequisite for reliability. — Edsger W. Dijkstra

                Regards, Sander

                W Offline
                W Offline
                Wendelius
                wrote on last edited by
                #30

                Hopefully people don't mind me posting a few technical stuff...

                Sander Rossel wrote:

                I think the first thing with the table variable just isn't possible.

                Why? You can define a type and you can define a table for a type: PL/SQL Tables and User-Defined Records[^]

                Sander Rossel wrote:

                The second, declaring a variable, assigning it a value and simply selecting it (FROM DUAL???) is just so awkward

                Why not use a simple assignment

                X:=5;

                Sander Rossel wrote:

                Having multiple result sets in one procedure/session isn't possible.

                Yes it is, and you can use REF cursors: Optimize Result Set Retrieval Using ODP.NET and Ref Cursors[^] If these cause you headache, we can take the discussion outside, for example to Q&A. Lounge is not appropriate for these :)

                Sander RosselS 1 Reply Last reply
                0
                • V Vark111

                  Sander Rossel wrote:

                  I've heard that a lot (it's what every Oracle user says), but why though?

                  One thing I find intriguing about Oracle PL/SQL Packages is that you can do row-level operations with loops (i.e. cursors) but still have set-based performance. There's this (well-deserved, imo) attitude in SQL Server land that cursors are the work of the devil (entirely plausible), and any code that uses cursors will murder any semblance of performance (seen it myself). So you go through a lot of mental gymnastics to convert row-level operations with a bunch of if/else conditions into a series of set-based queries. So the code now performs the way it should, but it doesn't really *read* the way it should. That seems to not be the case in Oracle. You can loop with a cursor and do all sorts of imperative coding, but the performance hit is negligible. Disclaimer: I'm not really a fan of Oracle, it's just that our company uses it to death. We're one of those "50% of the business logic is buried somewhere in the database" type companies. Me? I prefer a dumb datastore and keep my business logic in places that can be reused easily.

                  Sander RosselS Offline
                  Sander RosselS Offline
                  Sander Rossel
                  wrote on last edited by
                  #31

                  Vark111 wrote:

                  One thing I find intriguing about Oracle PL/SQL Packages is that you can do row-level operations with loops (i.e. cursors) but still have set-based performance.

                  That's really interesting actually. I never use cursors in SQL Server for that reason. I've come across them A LOT in Oracle (although Oracle has a few different cursor types I believe). Then again, databases shouldn't really be doing loops in the first place :D I'm going to check that out and add it to the "cool in Oracle" list though :thumbsup:

                  Read my (free) ebook Object-Oriented Programming in C# Succinctly. Visit my blog at Sander's bits - Writing the code you need. Or read my articles here on CodeProject.

                  Simplicity is prerequisite for reliability. — Edsger W. Dijkstra

                  Regards, Sander

                  1 Reply Last reply
                  0
                  • J Jorgen Andersson

                    It''s interesting to read the comments in this thread. Having worked for many years on Oracle, but now having changed company to work with SQL server, I have quite different experience. SQL Server is a much less mature product. It really feels like going fifteen years back in time. Programming in T-Sql feels like using prehistoric VB, the code is totally littered with stupid prefixes like @ and #. And it lacks consistency. The worst part is probably lock handling, on Oracle I never needed to think about it, period. No flashback queries. On Oracle you can do a SELECT AS OF TIMESTAMP. Even from dropped tables. Always on failover is a really poor substitute for RAC. Half the point with clustering is gone if you can only use one node at a time. Composite indexes are only having statistics on the first column, reducing the efficiency of the optimizer considerably. No pipelined functions, at all. I can keep on going for long. On the other hand, SSIS is just brilliant.

                    Wrong is evil and must be defeated. - Jeff Ello

                    Sander RosselS Offline
                    Sander RosselS Offline
                    Sander Rossel
                    wrote on last edited by
                    #32

                    Jörgen Andersson wrote:

                    No pipelined functions, at all.

                    I've only seen it once so far. As I understand it a pipelined function returns a row to the caller as soon as it's available instead of waiting for the entire result set to be calculated. Sounds really good. Adding it to my "cool in Oracle list"! :D Flashback technology sounds awesome (just Googled it) :omg: Not really something a dev would need though ;)

                    Jörgen Andersson wrote:

                    Having worked for many years on Oracle, but now having changed company to work with SQL server, I have quite different experience.

                    As far as I can see you and @mika-wendelius are the only ones to like/prefer Oracle so far. And you two have one thing in common that the other people on this thread have not: you're actual DBA's rather than developers who need to use a database now and then. So perhaps Oracle has more going on than what it looks like, but that's not very interesting to the average developer? Unfortunately, due to awful tooling from Oracle, the average developer will never see it either.

                    Jörgen Andersson wrote:

                    Programming in T-Sql feels like using prehistoric VB, the code is totally littered with stupid prefixes like @ and #. And it lacks consistency.

                    AT LEAST ORACLE IS CONSISTENT IN ONE THING :D I'm not sure why you'd think T-SQL feels like prehistoric VB though :~

                    Read my (free) ebook Object-Oriented Programming in C# Succinctly. Visit my blog at Sander's bits - Writing the code you need. Or read my articles here on CodeProject.

                    Simplicity is prerequisite for reliability. — Edsger W. Dijkstra

                    Regards, Sander

                    J 1 Reply Last reply
                    0
                    • Sander RosselS Sander Rossel

                      Mika Wendelius wrote:

                      One benefit with Oracle is to be able to run it on different platforms.

                      Yes, that's one I heard and a very plausible one at that! :D Good thing we run it on Windows servers :laugh:

                      Mika Wendelius wrote:

                      Any examples?

                      Table variables, simply declaring some variables and using them (in all manner of ways). For example, I simply wanted to something like the following:

                      DECLARE @Names TABLE (Name VARCHAR(100))

                      INSERT INTO @Names
                      SELECT Name
                      FROM Person.Person

                      SELECT @Names

                      SELECT Column
                      FROM Table
                      WHERE Name IN @Names -- Not sure if I need a sub select from the top of my head

                      DECLARE @SomeText VARCHAR(100)
                      SET @SomeText = "Not doable in Oracle"
                      SELECT @SomeText

                      I think the first thing with the table variable just isn't possible. My coworker, who worked with Oracle for about 30 years now, looked at me in disbelief and asked why I wanted to do such a thing anyway :~ The second, declaring a variable, assigning it a value and simply selecting it (FROM DUAL???) is just so awkward. Having multiple result sets in one procedure/session isn't possible. For example, from my software I want to insert an order, its details and do some auditing/logging and check if everything is in the database as expected.

                      SELECT * FROM SalesOrder
                      SELECT * FROM SalesOrderDetail
                      SELECT * FROM AuditLog

                      I have to execute the statements one by one and check the results, no way to do it all at once and get the results next to each other. Please, I beg of you, prove me wrong! It would make my life so much easier :D Maybe I'm in a "SQL Server state of mind" and Oracle just is another paradigm? Like OOP vs. Functional? And I'm simply missing it? :confused:

                      Read my (free) ebook Object-Oriented Programming in C# Succinctly. Visit my blog at Sander's bits - Writing the code you need. Or read my articles here on CodeProject.

                      Simplicity is prerequisite for reliability. — Edsger W. Dijkstra

                      Regards, Sander

                      J Offline
                      J Offline
                      Jorgen Andersson
                      wrote on last edited by
                      #33

                      Yes I believe the state of mind is a powerful thing to overcome. As to your questions, they have already been addressed by Mika. Oracle is undoubtedly a bit quirkier than SQL Server, but it's more consistent in my opinion, it's a little bit like going from VB to C#.

                      Wrong is evil and must be defeated. - Jeff Ello

                      W Sander RosselS 2 Replies Last reply
                      0
                      • S Shelby Robertson

                        See also[^]

                        CPallini wrote:

                        You cannot argue with agile people so just take the extreme approach and shoot him. :Smile:

                        Sander RosselS Offline
                        Sander RosselS Offline
                        Sander Rossel
                        wrote on last edited by
                        #34

                        Don't particularly like South Park, but that's hilarious! :laugh: :laugh: :laugh:

                        Read my (free) ebook Object-Oriented Programming in C# Succinctly. Visit my blog at Sander's bits - Writing the code you need. Or read my articles here on CodeProject.

                        Simplicity is prerequisite for reliability. — Edsger W. Dijkstra

                        Regards, Sander

                        S 1 Reply Last reply
                        0
                        • Sander RosselS Sander Rossel

                          Don't particularly like South Park, but that's hilarious! :laugh: :laugh: :laugh:

                          Read my (free) ebook Object-Oriented Programming in C# Succinctly. Visit my blog at Sander's bits - Writing the code you need. Or read my articles here on CodeProject.

                          Simplicity is prerequisite for reliability. — Edsger W. Dijkstra

                          Regards, Sander

                          S Offline
                          S Offline
                          Shelby Robertson
                          wrote on last edited by
                          #35

                          It seemed relevant lol.

                          CPallini wrote:

                          You cannot argue with agile people so just take the extreme approach and shoot him. :Smile:

                          1 Reply Last reply
                          0
                          • J Jorgen Andersson

                            Yes I believe the state of mind is a powerful thing to overcome. As to your questions, they have already been addressed by Mika. Oracle is undoubtedly a bit quirkier than SQL Server, but it's more consistent in my opinion, it's a little bit like going from VB to C#.

                            Wrong is evil and must be defeated. - Jeff Ello

                            W Offline
                            W Offline
                            Wendelius
                            wrote on last edited by
                            #36

                            Jörgen Andersson wrote:

                            it's a little bit like going from VB to C#.

                            Thank you so much! Now I have to wipe away the stains of tea from my monitor... :-D

                            J 1 Reply Last reply
                            0
                            • W Wendelius

                              Hopefully people don't mind me posting a few technical stuff...

                              Sander Rossel wrote:

                              I think the first thing with the table variable just isn't possible.

                              Why? You can define a type and you can define a table for a type: PL/SQL Tables and User-Defined Records[^]

                              Sander Rossel wrote:

                              The second, declaring a variable, assigning it a value and simply selecting it (FROM DUAL???) is just so awkward

                              Why not use a simple assignment

                              X:=5;

                              Sander Rossel wrote:

                              Having multiple result sets in one procedure/session isn't possible.

                              Yes it is, and you can use REF cursors: Optimize Result Set Retrieval Using ODP.NET and Ref Cursors[^] If these cause you headache, we can take the discussion outside, for example to Q&A. Lounge is not appropriate for these :)

                              Sander RosselS Offline
                              Sander RosselS Offline
                              Sander Rossel
                              wrote on last edited by
                              #37

                              Mika Wendelius wrote:

                              If these cause you headache

                              The headache is actually in doing any of that ad-hoc :laugh: Open up a window in SQL Developer and typing:

                              DECLARE x NUMBER;
                              x := 5;
                              SELECT x FROM DUAL;

                              won't work at all :D

                              Mika Wendelius wrote:

                              PL/SQL Tables and User-Defined Records[^]

                              That's actually a pretty good article, will read it :thumbsup:

                              Mika Wendelius wrote:

                              we can take the discussion outside, for example to Q&A

                              I could create a question so that you specifically could answer it :laugh: I don't have access to Oracle right now though, so I can't post anything at the moment :)

                              Read my (free) ebook Object-Oriented Programming in C# Succinctly. Visit my blog at Sander's bits - Writing the code you need. Or read my articles here on CodeProject.

                              Simplicity is prerequisite for reliability. — Edsger W. Dijkstra

                              Regards, Sander

                              J 1 Reply Last reply
                              0
                              • J Jorgen Andersson

                                Yes I believe the state of mind is a powerful thing to overcome. As to your questions, they have already been addressed by Mika. Oracle is undoubtedly a bit quirkier than SQL Server, but it's more consistent in my opinion, it's a little bit like going from VB to C#.

                                Wrong is evil and must be defeated. - Jeff Ello

                                Sander RosselS Offline
                                Sander RosselS Offline
                                Sander Rossel
                                wrote on last edited by
                                #38

                                Jörgen Andersson wrote:

                                it's a little bit like going from VB to C#

                                I actually did just that (VB.NET mind you!) and all the glorious stories I heard, about C# being the better and prettier language, were proven not true. It seems idiots write in C# as well :sigh: And indeed, I went from a SQL Server team to an Oracle team and suddenly everyone uses select ... from table1, table2 where table1.id = table2.table1_id to join tables... :sigh: Not what I was expecting from the grande Oracle database (that, and everything else in this topic) ;p

                                Read my (free) ebook Object-Oriented Programming in C# Succinctly. Visit my blog at Sander's bits - Writing the code you need. Or read my articles here on CodeProject.

                                Simplicity is prerequisite for reliability. — Edsger W. Dijkstra

                                Regards, Sander

                                J 1 Reply Last reply
                                0
                                • Sander RosselS Sander Rossel

                                  Jörgen Andersson wrote:

                                  No pipelined functions, at all.

                                  I've only seen it once so far. As I understand it a pipelined function returns a row to the caller as soon as it's available instead of waiting for the entire result set to be calculated. Sounds really good. Adding it to my "cool in Oracle list"! :D Flashback technology sounds awesome (just Googled it) :omg: Not really something a dev would need though ;)

                                  Jörgen Andersson wrote:

                                  Having worked for many years on Oracle, but now having changed company to work with SQL server, I have quite different experience.

                                  As far as I can see you and @mika-wendelius are the only ones to like/prefer Oracle so far. And you two have one thing in common that the other people on this thread have not: you're actual DBA's rather than developers who need to use a database now and then. So perhaps Oracle has more going on than what it looks like, but that's not very interesting to the average developer? Unfortunately, due to awful tooling from Oracle, the average developer will never see it either.

                                  Jörgen Andersson wrote:

                                  Programming in T-Sql feels like using prehistoric VB, the code is totally littered with stupid prefixes like @ and #. And it lacks consistency.

                                  AT LEAST ORACLE IS CONSISTENT IN ONE THING :D I'm not sure why you'd think T-SQL feels like prehistoric VB though :~

                                  Read my (free) ebook Object-Oriented Programming in C# Succinctly. Visit my blog at Sander's bits - Writing the code you need. Or read my articles here on CodeProject.

                                  Simplicity is prerequisite for reliability. — Edsger W. Dijkstra

                                  Regards, Sander

                                  J Offline
                                  J Offline
                                  Jorgen Andersson
                                  wrote on last edited by
                                  #39

                                  You can think of pipelined functions in the same way as yield return in C#. Flashback really is the best thing since sliced bread. It's a bit of a performance drain, but still faster than SQL Server though. Ever wondered why you get the query time in seconds in SSMS and in ms from Oracle? ;P

                                  Sander Rossel wrote:

                                  Unfortunately, due to awful tooling from Oracle

                                  Well, I certainly give you that one, SSIS is simply awesome despite some quirks.

                                  Sander Rossel wrote:

                                  you're actual DBA's

                                  I'm not, I'm both a backend developer and database developer. No admin in my title to be found.

                                  Sander Rossel wrote:

                                  but that's not very interesting to the average developer?

                                  That's maybe where the problem is. People don't understand what's going on in the databases, and SQL-Server is much better integrated with Visual Studio so it's really quite hidden from people. I once saw someone here comment that the biggest problem with Access is that it makes it to easy for people that don't know what they are doing to create a database. Well that statement really holds a bit of truth for SQL Server as well. That's also why we're seeing these reactionist NOSQL databases which is really bringing us back to the sixties. BTW, one of the big differences between PL-SQL and T-SQL is that there is a lot of implicit stuff going on in T-SQL. In PL-SQL you have to define everything. And that's probably why you thought you can only have one return set from PL-SQL.

                                  Wrong is evil and must be defeated. - Jeff Ello

                                  Sander RosselS 1 Reply Last reply
                                  0
                                  • W Wendelius

                                    Jörgen Andersson wrote:

                                    it's a little bit like going from VB to C#.

                                    Thank you so much! Now I have to wipe away the stains of tea from my monitor... :-D

                                    J Offline
                                    J Offline
                                    Jorgen Andersson
                                    wrote on last edited by
                                    #40

                                    Glad to be of service. :)

                                    Wrong is evil and must be defeated. - Jeff Ello

                                    1 Reply Last reply
                                    0
                                    • Sander RosselS Sander Rossel

                                      Do people here actually like the Oracle database? Especially when compared to SQL Server. It seems everything I did so easily in SQL Server seems to be difficult or even impossible in Oracle. So far I like the for loops and the some_table.some_column%type type declarations. I'm not looking for Oracle hate or a religious war. I really just want to know what's so great about Oracle so I can enjoy it too (so far it's been mostly frustration).

                                      Read my (free) ebook Object-Oriented Programming in C# Succinctly. Visit my blog at Sander's bits - Writing the code you need. Or read my articles here on CodeProject.

                                      Simplicity is prerequisite for reliability. — Edsger W. Dijkstra

                                      Regards, Sander

                                      Kornfeld Eliyahu PeterK Offline
                                      Kornfeld Eliyahu PeterK Offline
                                      Kornfeld Eliyahu Peter
                                      wrote on last edited by
                                      #41

                                      It is maybe the order I learned things, but I do not find Oracle that difficult (my first was DB2 on mainframe), but it seems to be less advanced than MSSQL these days, so can't see any reason to bother with in the first place (it even seems to me that most free RDBMS offer more than Oracle for some problems)... So. No good words for Oracle...

                                      Skipper: We'll fix it. Alex: Fix it? How you gonna fix this? Skipper: Grit, spit and a whole lotta duct tape.

                                      "It never ceases to amaze me that a spacecraft launched in 1977 can be fixed remotely from Earth." ― Brian Cox

                                      Sander RosselS 1 Reply Last reply
                                      0
                                      • J Jorgen Andersson

                                        You can think of pipelined functions in the same way as yield return in C#. Flashback really is the best thing since sliced bread. It's a bit of a performance drain, but still faster than SQL Server though. Ever wondered why you get the query time in seconds in SSMS and in ms from Oracle? ;P

                                        Sander Rossel wrote:

                                        Unfortunately, due to awful tooling from Oracle

                                        Well, I certainly give you that one, SSIS is simply awesome despite some quirks.

                                        Sander Rossel wrote:

                                        you're actual DBA's

                                        I'm not, I'm both a backend developer and database developer. No admin in my title to be found.

                                        Sander Rossel wrote:

                                        but that's not very interesting to the average developer?

                                        That's maybe where the problem is. People don't understand what's going on in the databases, and SQL-Server is much better integrated with Visual Studio so it's really quite hidden from people. I once saw someone here comment that the biggest problem with Access is that it makes it to easy for people that don't know what they are doing to create a database. Well that statement really holds a bit of truth for SQL Server as well. That's also why we're seeing these reactionist NOSQL databases which is really bringing us back to the sixties. BTW, one of the big differences between PL-SQL and T-SQL is that there is a lot of implicit stuff going on in T-SQL. In PL-SQL you have to define everything. And that's probably why you thought you can only have one return set from PL-SQL.

                                        Wrong is evil and must be defeated. - Jeff Ello

                                        Sander RosselS Offline
                                        Sander RosselS Offline
                                        Sander Rossel
                                        wrote on last edited by
                                        #42

                                        Jörgen Andersson wrote:

                                        Ever wondered why you get the query time in seconds in SSMS and in ms from Oracle?

                                        I never got a timeout in Oracle and plenty in SQL Server... :sigh: I SHOULD mention that I haven't worked with Oracle like I have with SQL Server (few months development in Oracle vs. years of development and production in SQL Server).

                                        Jörgen Andersson wrote:

                                        I'm not, I'm both a backend developer and database developer. No admin in my title to be found.

                                        Still, your profile says "Database developer" rather than "Software developer" ;)

                                        Jörgen Andersson wrote:

                                        People don't understand what's going on in the databases

                                        Very true, although my experience is that people don't know what's going on inside C# (or any technology for that matter) as well. Most people are missing theoretical knowledge because that's just not interesting, we're practical and need results :sigh: Just recently a coworker complained that a SELECT TOP 10 * FROM SomeView was very slow so we should move the select statement from the view to an SP and pass in the TOP 10 as parameter to that SP. Yes, because that's certainly going to make it a lot faster... :~ (his idea was actually that the entire view was selected (and the view didn't have a top 10) and that the top 10 was applied after that).

                                        Jörgen Andersson wrote:

                                        That's also why we're seeing these reactionist NOSQL databases which is really bringing us back to the sixties.

                                        I have to disagree there! I'm no NoSQL expert, but I really think NoSQL databases solve actual problems and can be successfully leveraged to create highly performant systems where traditional relational databases would fail miserably. Of course you still have to know what you're actually doing.

                                        Jörgen Andersson wrote:

                                        that's probably why you thought you can only have one return set from PL-SQL

                                        Nope, I actually want to see exactly this[^] in SQL Developer, but it's impossible :)

                                        Read my (free) ebook

                                        J 1 Reply Last reply
                                        0
                                        • W Wendelius

                                          Schema is used for example to define an ownership and to separate logically different components into separate areas, in both systems. A separate database in SQL Server is very different from schema.

                                          S Offline
                                          S Offline
                                          Slacker007
                                          wrote on last edited by
                                          #43

                                          Exactly. Correct me if I am wrong, but it is usually just "one" database in Oracle with _n_Number of schemas.

                                          J 1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • World
                                          • Users
                                          • Groups