Pl/sql vs sql basic question

Hi,
I have a very very basic question, so excuse me for that... I just would like to know the difference ( and the difference in usage) between sql and pl/sql?
thank you
Yann

SQL - the structured query language - is the language available for extracting data from the database. It is a 4GL, and each command stands alone and performs a database action.
PL/SQL is the 3GL primarily intended to control the flow of a series of SQL commands. PL/SQL does not, in any way, interact with the data in the database. It does, however, allow SQL statements to be called, or even created, in a specific order.
SQL is capable of a LOT more than people usually realize. Unfortunate, as people often create PL/SQL programs when single SQL statements will do the job. I encourage reading the O'Reilly 'Mastering Oracle SQL' book ... only after fiunishing that book do I recommend any of Feuerstein's excellent PL/SQL books.

Similar Messages

  • SQL server service accounts question

    We created a test SQL environment using a Technet evaluation copy of Windows Server 2012 along with an evaluation copy of SQL2012. After testing, everything is working as planned so were going to enter the product keys for both Windows Server and SQL 2012.
    My question is that once we have our Server licensed we’re going to start a new domain and recreate all the user accounts but I installed SQL using a local user account I created called ”sqladmin”. Once Server 2012 is the DC in the new domain will I need to
    change all the service accounts for SQL in order for it to function or can I still use the local “sqladmin” user account? If I can re-use that local account are there any downside to that? What’s the best practice in this scenario

     Once Server 2012 is the DC in the new domain will I need to change all the service accounts for SQL in order for it to function or can I still use the local “sqladmin” user account? If I can re-use that local account are there any downside to that?
    What’s the best practice in this scenario
    Hi,
    You can use your sqladmin account but that wont be a good security practice. You should always follow principal of least privilege and should run SQL server with domain account having least privilege.Below link will help you in this
    Configure SQL server account and services
    Please mark this reply as the answer or vote as helpful, as appropriate, to make it useful for other readers
    My TechNet Wiki Articles

  • Basic question regarding SSIS 2010 Package where source is Microsoft Excel 97-2005 and there is no Microsoft office or Excel driver installed in Production

    Hi all,
    I got one basic question regarding SSIS 2010 Package where source is Microsoft Excel 97-2005. I wanted to know How this package works in production where there is no Microsoft office or Excel driver installed. To check that there is excel driver installed
    or not, I followed steps: Start-->Administrative Tools--> Data Sources(ODBC)-->Drivers and I found only 2 drivers one is SQL Server and another one is SQL Server Native Client 11.0.
    Windows edition is Windows Server 2008 R2 Enterprise, Service Pack-1 and System type is 64-bit Operating System.
    We are running this package from SQL Server Agent and using 32-bit (\\Machine_Name\d$\Program Files (x86)\Microsoft SQL Server\110\DTS\Binn\DTExec.exe /FILE "\\Machine_Name\d$\ Folder_Name\EtL.dtsx" /CONFIGFILE "\\Machine_Name\d$\Folder_Name\Config.dtsConfig"
    /MAXCONCURRENT " -1 " /CHECKPOINTING OFF /REPORTING E) to run this package. I opened the package and tried to find out what connection we have used and found that we have used "Excel Connection Manager" and ConnectionString=Provider=Microsoft.Jet.OLEDB.4.0;Data
    Source=F:\Fares.xls;Extended Properties="EXCEL 8.0;HDR=YES"; and source is ‘Excel Source’
    I discussed with my DBA and He said that SSIS is having inbuilt Excel driver but I am not convinced.
    Could anyone please clear my confusion/doubt?
    I have gone through various links but my doubt is still not clear.
    Quick Reference:
    SSIS in 32- and 64-bits
    http://toddmcdermid.blogspot.com.au/2009/10/quick-reference-ssis-in-32-and-64-bits.html
    Why do I get "product level is insufficient..." error when I run my SSIS package?
    http://blogs.msdn.com/b/michen/archive/2006/11/11/ssis-product-level-is-insufficient.aspx
    How to run SSIS Packages using 32-bit drivers on 64-bit machine
    http://help.pragmaticworks.com/dtsxchange/scr/FAQ%20-%20How%20to%20run%20SSIS%20Packages%20using%2032bit%20drivers%20on%2064bit%20machine.htm
    Troubleshooting OLE DB Provider Microsoft.ACE.OLEDB.12.0 is not registered Error when importing data from an Excel 2007 file to SQL Server 2008
    http://www.mytechmantra.com/LearnSQLServer/Troubleshoot_OLE_DB_Provider_Error_P1.html
    How Can I Get a List of the ODBC Drivers that are Installed on a Computer?
    http://blogs.technet.com/b/heyscriptingguy/archive/2005/07/07/how-can-i-get-a-list-of-the-odbc-drivers-that-are-installed-on-a-computer.aspx
    Thanks Shiven:) If Answer is Helpful, Please Vote

    Hi S Kumar Dubey,
    In SSIS, the Excel Source and Excel Destination natively use the Microsoft Jet 4.0 OLE DB Provider which is installed by SQL Server. The Microsoft Jet 4.0 OLE DB Provider deals with .xls files created by Excel 97-2003. To deal with .xlsx files created by
    Excel 2007, we need the Microsoft ACE OLEDB Provider. SQL Server doesn’t install the Microsoft ACE OLEDB Provider, to get it we can install the
    2007 Office System Driver: Data Connectivity Components or
    Microsoft Access Database Engine 2010 Redistributable or Microsoft Office suit.
    The drivers listed in the ODBC Data Source Administrator are ODBC drivers not OLEDB drivers, therefore, the Excel Source/Destination in SSIS won’t use the ODBC driver for Excel listed in it by default. On a 64-bit Windows platform, there are two versions
    of ODBC Data Source Administrator. The 64-bit ODBC Data Source Administrator is C:\Windows\System32\odbcad32.exe, while the 32-bit one is C:\Windows\SysWOW64\odbcad32.exe. The original 32-bit and 64-bit ODBC drivers are installed by the Windows operating system.
    By default, there are multiple 32-bit ODBC drivers and fewer 64-bit ODBC drivers installed on a 64-bit platform. To get more ODBC drivers, we can install the 2007 Office System Driver: Data Connectivity Components or Microsoft Access Database Engine 2010 Redistributable.
    Besides, please note that 2007 Office System Driver: Data Connectivity Components only install 32-bit ODBC and OLEDB drivers because it only has 32-bit version, but the Microsoft Access Database Engine 2010 Redistributable has both 32- bit version and 64-bit
    version.
    If you have any questions, please feel free to ask.
    Regards,
    Mike Yin
    TechNet Community Support

  • Basic Questions

    Hi all,
    I´ve some basic questions - we are seeking for an alternative for our MS Exchange System. So I need some more information before going to hot testing Oracle :-)
    - Does Oracle Coll. support multiple Domains? Not only subdomains - either completley different Domains?
    - Is it possible to create multiple Users via SQL (Massgeneration)?
    A more technical question:
    On my first testing (Solaris 10, Sparc) I run into a strange phaenomen - my FQDN hast an '-' interated and the installation process interpreted it as '_'? I mean I have read something about that but couldn´t find that in the doc. anymore. I think it is a big problem for sending mails if the system change my domain name from [email protected] to mail@fq_dn.com ... ;-)
    Is it my fault or is it a "feature"?

    Hi Eisfalke!
    Oracle Collaboration Suite supports multiple domains.
    You will not create users with SQL but with some other commandline tools as their data goes into the OID and the CS database. But yes, it has tools for bulkcreation.
    I have not yet had the pleasure of working with a domain with a - but you should be capable of creating a new domain with a dash and remove the domain with the underscore.
    cu
    Andreas

  • XML parsing with SQL/PL-SQL

    Hi,
    My question is about how can an XML message can be best parsed using SQL/PL-SQL.
    The scenario is as follow. The XML message is stored in a CLOB; only some of its data needs to be extracted; there are six different types of structures of XML; the size of each XML is about 50 lines (maximum depth level is 3); the data could be written in English or Greek or French or German or Russian; this is going to be done every hour and the parsing is going to be against 3,000 records approx.
    In the development, I need to take into consideration performance. We are using Oracle 10, but we could migrate to Oracle 11 if necessary.
    Apologies for this basic question but I have never done XML parsing in SQL/PL-SQL before.
    Thank you.
    PS I have copied this question to the XML forum.
    Edited by: user3112983 on May 19, 2010 3:30 PM
    Edited by: user3112983 on May 19, 2010 3:39 PM

    user3112983 wrote:
    The scenario is as follow. The XML message is stored in a CLOB; only some of its data needs to be extracted; there are six different types of structures of XML; the size of each XML is about 50 lines (maximum depth level is 3); the data could be written in English or Greek or French or German or Russian; this is going to be done every hour and the parsing is going to be against 3,000 records approx.Parsing is done using the XMLTYPE data type (object class) in Oracle.
    Something as follows:
    SQL> create table xml_doc( id number, doc clob );
    Table created.
    SQL>
    SQL> insert into xml_doc values( 1, '<root><row><name>John</name></row><row><name>Jack</name></row></root>' );
    1 row created.
    SQL> commit;
    Commit complete.
    SQL>
    SQL> declare
      2          rawXml  xml_doc.doc%type;
      3          xml     xmltype;
      4  begin
      5          -- get the raw XML (as a CLOB)
      6          select doc into rawXml from xml_doc where id = 1;
      7
      8          -- parse it
      9          xml := new xmltype( rawXml );  
    10         -- process the XML...
    11  end;
    12  /
    PL/SQL procedure successfully completed.
    SQL>The variable xml in the sample code is the XML DOM object. XML functions can be used against it (e.g. to extract values in a tabular row and column structure).
    Note that the CLOB needs to contain a valid XML. An XML containing XML fragments is not valid and cannot be parsed. E.g.
    SQL> declare
      2          xml     xmltype;
      3  begin
      4          -- attemp to parse fragments
      5          xml := new xmltype( '<row><name>John</name></row>  <data><column>Name</column></data>' );
      6  end;
      7  /
    declare
    ERROR at line 1:
    ORA-31011: XML parsing failed
    ORA-19202: Error occurred in XML processing
    LPX-00245: extra data after end of document
    Error at line 1
    ORA-06512: at "SYS.XMLTYPE", line 301
    ORA-06512: at line 5This XML contains 2 fragments. A row structure and a data structure. It is not a valid XML and as such cannot be parsed. If a root tag is used to encapsulate these 2 fragments, then it will be a valid XML structure.
    In the development, I need to take into consideration performance. We are using Oracle 10, but we could migrate to Oracle 11 if necessary.Have not run into any XML performance problems specifically - and am using it extensively. Even large XMLs (10's of 1000's of elements) parse pretty fast.

  • Basic Questions about Package Installation

    I have one basic question about installing packages.
    How can I find out if needed software is already installed without knowing the name of the package?
    For e.g. I want to know, if the MYSQL Server is already installed but I don't know the Package name.
    How can I find out the package name of needed software?

    Difficult.
    Assuming the string "MYSQL" appears somewhere in the package
    name or the package description, you can grep the output from
    "pkginfo". That is "pkginfo | grep -i sql" would list all installed
    packages that contain the substring "sql" with either upper- or
    lowercase letters.

  • VERY Basic Questions about Oracle eBusiness - what "languages" are used?

    Please forgive the very basic nature of this post- (I have been in systems (IT) for over 20 years, so I do have lots of systems experience, but no exposure to this particular software.)
    So here are the basic questions - I assume that much of the data base logic is written in PL/SQL, but what other tools / languages are the applications written in?
    (Oracle Forms, Oracle Reports, Java, C, something else?)
    With over 20 years and experience with a number of other packages, I can learn a great deal about an application by 1. Looking at the DB structures (charts), 2. looking into DB code (Packages, triggers, procedure, functions) and 3. Seeing the screen shots.
    None of my customers have had Oracle eBusiness - that have had home grown applications or other COTS/packages.
    can anyone suggest a place where an independent person can inexpensively get some exposure?
    My sincere thanks for any answers/suggestions. 

    Hi,
    Please refer to the following links for details about the different database releases and Oracle tools.
    Oracle Timeline
    http://www.oracle.com/timeline/index.html
    http://www.oracle.com/oramag/profit/07-may/p27anniv_timeline.pdf
    Oracle Corporation - Oracle FAQ
    http://www.orafaq.com/wiki/Oracle_Corporation
    Oracle E-Business Suite consists of Application/Database/Client tiers, you can find more details in [Oracle Applications Concepts|http://www.oracle.com/technology/documentation/applications.html] manual.
    Oracle Forms
    http://en.wikipedia.org/wiki/Oracle_Forms
    Regards,
    Hussein

  • Basic Question - Update - Usage of index

    Gurus,
    I have a basic question. As per my knowledge, an index will speed up the process while we are selecting the data. If we are doing some DML operations (especially Update), do we need the index to speed up the process eventhough the indexed column is in the where condition?
    Regards
    Edited by: Sarma12 on Apr 17, 2012 5:59 AM

    Have you tried setting up a test scenario? For example:
    SQL> CREATE TABLE test AS SELECT 1 num FROM DUAL CONNECT BY LEVEL <= 1000;
    Table created.
    SQL> UPDATE test SET NUM = 99 WHERE ROWNUM = 1;
    1 row updated.
    SQL> COMMIT;
    Commit complete.
    SQL> UPDATE /*+gather_plan_statistics*/
      2         test
      3  SET    num = 2
      4  WHERE  num = 99
      5  ;
    1 row updated.
    SQL> SELECT * FROM TABLE(DBMS_XPLAN.DISPLAY_CURSOR(null,null,'ALLSTATS LAST'));
    PLAN_TABLE_OUTPUT
    SQL_ID  96wt4ddwy0sa5, child number 0
    UPDATE /*+gather_plan_statistics*/        test SET    num = 2 WHERE
    num = 99
    Plan hash value: 3859524075
    | Id  | Operation          | Name | Starts | E-Rows | A-Rows |   A-Time   | Buffers |
    |   0 | UPDATE STATEMENT   |      |      1 |        |      0 |00:00:00.01 |       7 |
    |   1 |  UPDATE            | TEST |      1 |        |      0 |00:00:00.01 |       7 |
    |*  2 |   TABLE ACCESS FULL| TEST |      1 |      1 |      1 |00:00:00.01 |       4 |
    Predicate Information (identified by operation id):
       2 - filter("NUM"=99)
    Note
       - dynamic sampling used for this statement (level=2)
    24 rows selected.
    SQL> rollback;
    Rollback complete.
    SQL> CREATE INDEX test_x1 ON test(num);
    Index created.
    SQL> UPDATE /*+gather_plan_statistics*/
      2         test
      3  SET    num = 2
      4  WHERE  num = 99
      5  ;
    1 row updated.
    SQL> SELECT * FROM TABLE(DBMS_XPLAN.DISPLAY_CURSOR(null,null,'ALLSTATS LAST'));
    PLAN_TABLE_OUTPUT
    SQL_ID  96wt4ddwy0sa5, child number 0
    UPDATE /*+gather_plan_statistics*/        test SET    num = 2 WHERE
    num = 99
    Plan hash value: 734435536
    | Id  | Operation         | Name    | Starts | E-Rows | A-Rows |   A-Time   | Buffers |
    |   0 | UPDATE STATEMENT  |         |      1 |        |      0 |00:00:00.01 |       9 |
    |   1 |  UPDATE           | TEST    |      1 |        |      0 |00:00:00.01 |       9 |
    |*  2 |   INDEX RANGE SCAN| TEST_X1 |      1 |      1 |      1 |00:00:00.01 |       2 |
    Predicate Information (identified by operation id):
       2 - access("NUM"=99)
    Note
       - dynamic sampling used for this statement (level=2)
    24 rows selected.So yes, an index may be used in DML.

  • MapViewer - A team of newbies and definitely basic questions...

    Dear All,
    We are a team of programmers who are very new to MapViewer. We are an experienced team of GIS programmers, however, we find difficulty in applying known functions to MapViewer. It's a great application, but a lot of unknowns.
    We have very basic questions, as well as advanced ones. I would like to summarize them as follows:
    1. How can I let the map to be zoomed into a specific feature?
    2. How can I execute a query to find a specific feature?
    3. How can I execute network analysis query to find the shortest path or paths between two or more nodes?
    4. How can I find out the nearest node to the location when user clicks on an arbitrary location on the map?
    5. How can I execute generic queries, without (this is important) need to send/receive XML queries?
    6. The bottomline is: we just want to use ready made functions to make it as easy as possible.
    Anyhelp is greatly appreciated. We are stuck with the basics of MapViewer (Oracle Maps).
    Please help us find the light :)
    Best regards.
    Desperate MapViewer Team!

    Here are some quick answers, hopefully they are not too late.
    1. You will construct a theme (mostly a dynamic one) that contains the specific feature, then call the theme's setBoundingTheme(true). Typically what we see people do is: a) create a dynamic theme with a query that selects a set of features; b) create a FOI layer based on the theme (MVThemeBasedFOI); c) call the setBoundingTheme(true) on the FOI layer. The end result, is that MapViewer will process your query and return the FOI data to the Oracle Maps JavaScript client, which will zoom the map to include the set of features in the FOI layer. Check out Oracle Maps tutorial #35 for an example.
    2. This is partly answered above. Basically you will construct a theme with a dynamic query string. You may want to check out tutorial #37 which finds out and displays the buffers around a set of points; the buffers are constructed via a SQL query at run time.
    3. This is not really a MapViewer question; rather, you may need to consult the Oracle Spatial routing engine XML API; the gist is you send the XML route request to the routing server, which returns a set of coordinates for your directions, which you can construct (MapViewer) FOI objects out of and display them on the map.
    4. I'm not sure our routing engine or network data model API has such a function ready for use; what you can do is if you can formulate the SQL query string (with the current location represented as a binding variable), then you can create a theme out of this query condition, and simply supply the location at run time to get the set of nodes.
    5. Can you please elaborate on what do you mean by generic queries? A simple usage scenario will help.
    6. We understand; there are quite a lot of things that can be made easier out of the box and we are working towards that. in the mean time, just ask questions if you have them; and always check out the Oracle maps tutorials first (actually reading the MapViewer primer article should be the absolute first step :) ).
    thanks
    LJ

  • Problem opening an Excel rowset in SQL/T-SQL

    
    In SSMS ((SS 2008 R2) when I run:
    SELECT * FROM
    OPENROWSET (
    'Microsoft.ACE.OLEDB.12.0',
    'Excel 12.0;Database=C:\test\xltest.xls;HDR=YES;IMEX=1',
    'SELECT * FROM [Sheet1$]'
    From this article:
    http://social.msdn.microsoft.com/Forums/sqlserver/en-US/3ffcbe7c-cdce-43cd-97b1-ea480bbbfff9/openrowset-excel
    I get error:
    Msg 7403, Level 16, State 1, Line 1
    The OLE DB provider "Microsoft.ACE.OLEDB.12.0" has not been registered.
    However, over in SSIS, the Excel Connection Manager connection string property (which works!) is:
    Provider=Microsoft.ACE.OLEDB.12.0;Data Source= C:\test\xltest.xls;Extended Properties="EXCEL 12.0 XML;HDR=NO";
    Showing that Microsoft.ACE.OLEDB.12.0 is registered on this machine.
    What do I need to do in SQL/T-SQL to have the code work?

    Those issues are a challenge to fix: search web, install, new error, search web, install, new error.....
    I found it easier to use the SSIS Import/Export Wizard:
    http://www.sqlusa.com/bestpractices/ssis-wizard/
    It is a charm!
    Kalman Toth Database & OLAP Architect
    SELECT Video Tutorials 4 Hours
    New Book / Kindle: Exam 70-461 Bootcamp: Querying Microsoft SQL Server 2012
    Kalman,  
    This would be great content for a Wiki article:
    http://social.technet.microsoft.com/wiki/contents/articles/23330.technet-guru-contributions-for-march.aspx#SQL_BI_amp_Power_BI
    Thanks!
    Ed Price, Power BI & SQL Server Customer Program Manager (Blog,
    Small Basic,
    Wiki Ninjas,
    Wiki)
    Answer an interesting question?
    Create a wiki article about it!

  • Siebel 7.8(Basic Questions)

    Hello Everyone,
    I have three very basic questions and I was wondering if any of you can answer it.
    1. Can we run Siebel 7.8 on Windows 2008 Server?
    2. Is Siebel 7.8 compatible with SQL 2008?
    3. Can we run Siebel 7.8 servers from a Windows 2003 server and have the database (SQL 2008) on a Windows
    2008 Server?
    Please help!
    Nick
    Edited by: Nick Advani on Sep 25, 2009 12:13 PM

    I can speak from personal experience.
    I recently setup Siebel 7.8 on SQL 2008 R2 in our test environment. Everything works well with the database.
    You can run siebel 7.8 without any issue, you don't need the 7.8.2 update, but I do recommend it for a production system
    When you go to install siebel, you will have to run setup.exe with the compatibility mode setting of "Windows 2003 sp1"
    Use the SNAC, MS Sql 2005 ODBC client on you application server and gateway. The native sql 2008 client / driver will NOT work with siebel.
    As Always, siebel is 32-bit and requires the 32-bit version of server 2008 for the gateway and application server.
    IE 8 will need to run in compatibility mode, in order to work with the we application.
    Other than that,
    Its identical to a windows 2003 installation :)

  • JDeveloper/OAS/Oracle - Basic Question

    Hi,
    I have a very basic question. I want to write a simple application using JDeveloper 3.0, OAS 4.0.8.0 and Oracle 8i as the database. The functionality of the application will be to simply display all the rows from a particular Oracle table on a front-end screen.
    Can anyone suggest which would be the best architecture to adopt. Should I use EJBs, or applets or .
    There are no examples (samples) provided with the documentation that illustrate simple applications like the one I am trying to build.
    It will be great is someone could illustrate (step-by-step) what I should use to paint my front-end screen, what I should use to write my SQL (to retrieve rows from the Oracle table) and how I should deploy all of this on OAS.
    Thanks in advance.
    null

    I guess my question was not framed correctly. I am new to JDeveloper and was trying to learn how to develop applications using the tool. I am also new to Internet programming in general so please bear with me. Coming from a old Client/Server school, I thought I would start learning JDeveloper by creating a "Client" using the many features of JDeveloper and then call a "Server" to do the database access. Now my question was the process to go about doing this. You have asked me whether I want to create an application or an applet. Well, the answer is that I frankly dont know. I want to be able to design (paint) a HTML page on which I want to be able to display rows from a Oracle table. Once I have managed to do this simple application I will start putting more complex functionality into that application to learn advanced features. Hope that helps.

  • Some basic questions on HANA

    Hi All,
    I have some basic questions on SAP HANA,
    I heard from one of my colligues that it is mandatory to learn SQL scripts for HANA, is it true?
    Or basic knowledge is enough for HANA???
    Is it added advantage while working on HANA or can we manage with basic knowledge of SQL???
    I tried to find answers for these questions in SCN, but I could not get proper answers, So could you please provide answers for above my questions.
    Thanks in advance,
    Venkat Kalla

    Hi Vladmir,
    SAP HANA is a platform and is more than just database. Which can serve both OLTP and OLAP.
    But since it is a database, Sp SQL skills helps you while modelling in SAP HANA. So When will it be helpful ? It is while addressing some complex requirements using SAP HANA.
    At the end of the day, when you want to work in HANA ( a super duper database ) and you still thinking of whether to learn SQL or not?
    Regards,
    Krishna Tangudu

  • Possible way to prevent basic questions being asked repeatedly

    hi,
    could this be a possible way to prevent basic questions being asked repeatedly (and to encourage search before post)  (may be atleast for newcomers to the forum, to minimize one-liner questions).
    when a user tries to post the question, as the user types or in the preview screen or before he clicks on the submit button, the SCN should show the similar questions/threads (or atleast threads with exactly the same text) asked/discussed before.
    then the forum user might click on the links, instead of posting a new one, as the answer could be readily available in existing threads.
    this functionality i have seen in yahoo answers.
    if you go to answers.yahoo.com and ask a very simple question like
    "what is difference between sql  and mysql"
    then yahoo provides a popup "Wait, we might already have the answer you are looking for:" and it also shows the possible similar questions like:
    What is the difference between a MySQL, SQL, and Access database?
    Programming & Design - 6 answers
    What is the difference between mysql and mico sql softserver 2005?
    what is MYSQL? what is Microsoft SQL server 2005
    Programming & Design - 2 answers
    What is the difference between mySQL and MS SQL server database?
    I am starting a website but I am not sure what to use. It is a wensite with a very large database. Please help!
    Programming & Design - 3 answers
    What is the difference between MySQL and the Microsoft SQL? Which one is better?
    How is the Microsoft SQL better than MySQL? Which is better for security? E-Commerce? Most importantly, Which uses a cheaper server to ...
    Programming & Design - 4 answers
    if you want to try, go to:
    http://answers.yahoo.com/question/ask?title=whatisdifferencebetweensql%0D%0Aandmysql
    may be similar mechanism can be used by sap forums.
    thanks,
    Jagdishwar

    I also think it is a cool idea, but unfortunately the "no brainers" are a small group in my experience and will not be detered by this.
    We are using a new secret weapon in the past weeks against repeat offenders. Please use the Abuse Report button to report such basic questions when the person is "hard of hearing".
    As a side note, also consider that some people are not fluent in English. Or even have no English language skills and use enterpreters. That is of course no reason to be a pain and break the rules (cross-posting, etc) but it does explain isolated misunderstandings.
    I once called a repeat offender on the phone because he posted his telephone number in the forums. He could hardly speak any English at all, let alone write it...
    Cheers,
    Julius

  • PL/SQL vs SQL

    What are the fundamental differences between PL/SQL and SQL?

    Just to expand on what was said.
    PL/SQL is a formal procedural language based on Ada (Ada and Pascal are very similar). PL/SQL is in that respect equivalent to C, Pascal, Visual Basic etc.
    What makes PL/SQL different (a 4GL instead of a 3GL) is that it is specifically designed to deal with data processing problems in Oracle using SQL.
    In 3GLs you need to use SQL pre-compilers or special classes (wrapping the database's SQL call interface) to talk SQL to the database. E.g. Pro*C precompiler for use with C. The TQuery class in Delphi that wraps the Oracle Call Interface (OCI) into an object class.
    PL/SQL goes further as it allows you to natively use SQL inside the language, as if it is part of the language. The PL compiler/PL engine is however clever enough to recognise SQL statements and do the complex stuff needed to make a SQL call to the SQL engine. It handles bind variables for you. It handles SQL data types for you. It does the SQL engine call for you. It fetches the data from the SQL engine for you. Etc.
    Using SQL natively in the PL language is what makes PL/SQL so powerfull. It blurs the line between having to deal with two separate langauges - a procedure (and object orientated) programming language and the SQL language.
    This blurring does have its cons . Developers often fail to recognise just what is PL and what is SQL ito doing a proper program design and implementation. Or they treat PL/SQL as something different than Java, Delphi or C/C++. A programming language is a programming language, Programming 101 fundamentals apply. Irrespective of the language. Period.
    For example, they use PL/SQL cursor fetch loops to process SQL data in a row-by-row fashion, instead of using SQL to do that work instead. SQL is by far superior in this regard. Or they use SQL (i.e. SELECT func() INTO var FROM dual) to assign values from functions to PL/SQL variables. Why use SQL to do perform this variable assignment when dealing with PL variables?
    There are numerous brain farts from developers in this respect. Not understanding PL/SQL. Not even bothering to familiarise themselves with the Oracle manuals on the language. Which is a pity as this result in crappy code and a developer that fails to understand Oracle. Worse, developers start to dislike Oracle because it "does not work properly" due to their utter failure to grasp the concepts of the database and the language.
    However, if you understand what PL is and what SQL is in PL/SQL, and you treat both languages correctly, no other language on this planet allows you to process Oracle data more effectively. Fact: PL/SQL scales and performs better than whatever Java architecture and code you can deploy on an application tier.

Maybe you are looking for