0 Replies Latest reply on Feb 26, 2015 7:48 PM by Christian Berg

    Forum etiquette and how to ask questions

    Christian Berg

      Good evening everybody,


      BluShadow wrote a very good post on general forum etiquette over in the SQL and PL/SQL forum and especially an extremely pertinent paragraph on how to ask a question. We often refer to this page here How To Ask Questions The Smart Way to explain how to ask questions, but let me re-post BluShadows info here as-is and we'll try to make this a sticky-post which all users of this forum should read before posting any question.


      1) New Thread

      Click the "Post New Thread" link. (Note: do not post your new question in answer to someone elses thread; that's called "hijacking")


      2) Thread Subject line

      Give your thread a meaningful subject, not just "help please", "Query help" or "SQL". This is the SQL and PL/SQL forum. We know your question is going to be about those things, make it meaningful to the type of question so that people with the right sort of knowledge can pick it up and those without can ignore it. Never, EVER, mark your subject as "URGENT" or "ASAP".  This forum is manned by volunteers giving their own time to help and your question is never urgent or more important than their own work or than other people's questions. It may be urgent to you, but that's not forum members issue.  By marking your question as urgent you are actually less likely to get a good response, as members will choose to ignore such questions or respond infavorably.


      3) SMS/Txt Spk

      Avoid using "SMS spk" or "txt spk" in your posts. This is a professional forum and the primary language is English, though this is not everyone's native language. Using txt spk makes it hard for people to read and understand your requirements. Spelling mistakes, errors and language differences accepted. Abbreviations are ok, in moderation.


      4) Ask nicely

      Typing your subject line or your post IN CAPITALS is considered shouting. It's considered rude to SHOUT at people, so please use mixed case unless you are emphasising a word for a particular reason. Consider the internet's rules of netiquette (http://www.ietf.org/rfc/rfc1855.txt) in your posts.


      5) Database Version

      Ensure you provide your database version number e.g. so that we know what features we can use when answering.


      If you're not sure what it is you can do the following:

      select * from v$version;

      in an SQL*Plus session and paste the results.

      6) Tables/Indexes
      Provide us with table structures and indexes where necessary. Use the DESC command in SQL*Plus or your CREATE statements if you have them.


      7) Sample Data
      Provide us with sample data to help recreate the issue

      You can do this using subquery factoring (a "WITH" statement) e.g.


      with t as (select 1 as id, to_date('01/01/2009','DD/MM/YYYY') as date_created, 50 as val from dual union all

                 select 2, to_date('02/02/2009','DD/MM/YYYY'), 25 from dual union all

                 select 3, to_date('03/02/2009','DD/MM/YYYY'), 30 from dual)

          ,x as (select 1 as id, 'Fred' as name from dual union all

                 select 2, 'Bob' from dual union all

                 select 3, 'Tim' from dual)


      or by providing create table and insert statements e.g.


      create table t (id number,

                      date_created date,

                      val number)


      create table x (id number,

                      name varchar2(20))



      insert into t values (1, to_date('01/01/2009','DD/MM/YYYY'), 50);

      insert into t values (2, to_date('02/02/2009','DD/MM/YYYY'), 25);

      insert into t values (3, to_date('03/02/2009','DD/MM/YYYY'), 30);

      insert into x values (1, 'Fred');

      insert into x values (2, 'Bob');

      insert into x values (3, 'Tim');


      8) Expected Output
      Provide us with an example of the expected output. You can show this in a table, as with the sample data, or just as formatted output.

      9) Formatting code and data

      Ensure you format your code and data so that it's readable on the forum.

      On the new forum, this is now achieved using the Syntax Highlighting option, by copy/pasting your code to the editor, highlighting it, then clicking the "insert" (>>) button, selecting "Syntax Highlighting >" and choosing SQL (or the appropriate language).  Your code should then appear formatted and highlighted. (although day 1 this still appears buggy)


      1. DECLARE 
      2.    v_str VARCHAR2(100); 
      3. BEGIN 
      4.    v_str := 'This is some sample code'; 
      5. END; 


      The other option at the minute seems to be pasting your code/data and ensuring you change it to Courier New font, so that the indentation stays correctly.


      10) Error Messages

      If your code is producing an error, copy and paste the error message for everyone to see.  Don't just say "it doesn't work" as that means nothing.  Also try and include the full message, not just the ORA-XXXXX code.  There are some common codes people may know immediately, but most people have not memorised the meaning of the hundreds of possible ORA codes that can be produced.


      11). Post Answered Etiquette

      It's good etiquette, when your question has been answered to mark it as answered, and mark posts as "correct" or "helpful".  You can mark 1 post as correct and any others as helpful.  Don't be pushed into marking people's answers if they say "please mark my answer correct/helpful" as once you've marked them, you cannot remove it.  Ensure you are happy you've got the correct answer to your question first and wait and listen for the responses of those who are experts as they may be able to improve on previous replies.  People who ask a lot of questions but don't mark them as answered may find they get less responses as people are less willing to help if they don't get any feedback from you.


      12) Homework/Study/Interview questions

      If you question relates to homework, your studies or was something you were asked in an interview, ensure you show your own answer or what you've tried yourself so far, even if it's not working.  Members have their own work to do and do not just want to do your work for you, though most are willing to help out if you can show that you've made some effort yourself and you're clearly stuck.


      Thanks for reading this carefully and making the forum a better place with more optimized questioning and hence answering processes.