Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.server -> Re: Insert Records into a table

Re: Insert Records into a table

From: B. Williams <willdrama_at_hotmail.com>
Date: Thu, 7 Sep 2006 13:22:13 -0400
Message-ID: <gzYLg.10099$JR5.3743@dukeread11>

<fitzjarrell_at_cox.net> wrote in message
news:1157647743.465901.6420_at_e3g2000cwe.googlegroups.com...
> Comments embedded.
> B. Williams wrote:
>> I have created a table with two columns and one of the columns is the
>> month
>> and the other is the date.
>
> Why?
>
>> I want to use a pl/sql program to insert the
>> months and dates into the table using a loop instead of using a bunch of
>> insert statements.
>
> Again I ask why? What purpose does this serve?
>
>>Will someone assist me with this? If I can get some help
>> with January, I can figure the rest of the months out.
>>
>
> Oh, I'm fairly certain someone will try, but I can't understand why
> these columns are created, or why you feel the need to store date
> values as strings. To get you started I'd be looking up information on
> the to_char() function as it will allow you to isolate date parts as
> strings. If your issue is generating dates from January 1 on then I
> would investigate analytic functions such as CUBE. Or read this thread
> for some ideas:
>
> http://groups.google.com/group/comp.databases.oracle.server/browse_thread/thread/ab8b78b80f6371cf/61217f3306654aa5?lnk=gst&q=generate+past+dates&rnum=1#61217f3306654aa5
>
>> Thanks
>
>
> David Fitzjarrell

I have this book on using PL/SQL and it is one of the exercises on working with records. It ask to create the two columns with the month being a varhcar2 and the date being an integer. The end result is supposed to list the two columns with the month under the month column and the date under the day column. It also requires using a seperate loop for every month and a counter to keep track of the total records inserted. I have a good understanding of counter so I don't need any assistance with that. I created a loop for the months, but it is rather long and it doesn't meet the requirement for the day. I'll post that below. What I need is something like this

YEAR_MONTH        YEAR_DAY
January                        1
January                        2
...
January                        30
January                        31


This is the code I wrote to just list the months

Declare
Type name_varray is varray(12) of varchar2(20); varray_name name_varray :=
name_varray(null,null,null,null,null,null,null,null,null,null,null,null);

begin

varray_name(1) := 'January';
varray_name(2) := 'February';
varray_name(3) := 'March';
varray_name(4) := 'April';
varray_name(5) := 'May';
varray_name(6) := 'June';
varray_name(7) := 'July';
varray_name(8) := 'August';
varray_name(9) := 'September';
varray_name(10) := 'October';
varray_name(11) := 'November';
varray_name(12) := 'December';

dbms_output.put_line('Year_Month');

for i in 1..12 loop

dbms_output.put_line(varray_name(i));

end loop;
end;
/ Received on Thu Sep 07 2006 - 12:22:13 CDT

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US