Globle table  data  problem with pragma autonomous_tranaction

hi gurus,
i have  two globle table both having   preserve  row on commit
g_emp ;
g_hop_brk ;
in  procedure
   i m populating   g_emp  then  on this table  doing some manipulation
   loop
i m calling function  which  have  pragma autonomous_tranaction;
               this function is
              is now referring  g_emp ;
               inserting into  g_hop_brk  ;
           commit ;
loop end
  now fetching data from  g_hop_brk   ;
end procedure ;
with this logic i m not  getting value  when loop runs first time but from 2nd time i m getting value ,
please tell me why its happening ,
how to make work
thanks

On the second iteration of the loop, the parent transaction has committed after the first iteration, so some data will be visible.
If you are merely trying to log the value the function is going to return, the function itself should not be an autonomous transaction. A separate procedure should be created to log the return value, that procedure should be an autonomous transaction, and the procedure should be called just before you return, i.e.
CREATE OR REPLACE PROCEDURE log_something( p_return_val IN NUMBER )
  PRAGMA autonomous_transaction
IS
BEGIN
  INSERT INTO log_table ...
  commit;
END;
CREATE OR REPLACE FUNCTION your_function( some_parameters )
  RETURN something
IS
  l_ret_val number;
BEGIN
  log_something( l_ret_val );
  RETURN l_ret_val;
END;The procedure never has to query any tables, so the fact that it can't see the parent's uncommitted changes is irrelevent.
Justin

Similar Messages

  • Table Filter Problem with Operators And ,Or

    Hi ,
    Version : Jdeveloper 11.1.1.5
    I Created one view object based on query( Select Empno,Ename From Emp)
    Based on View Object - I created adf table .
    In Emp table data is as shown below
    Empno Ename
    1 Hari
    2 Ramu and Hari
    I made "Filterable" Property true and FilterFeature is CaseInsensitive
    When i query 'Ramu a' it will retrive correctly,if i query 'Ramu and' it will show no data to display
    Please suggest me how to solve
    Note : What i noticed is and ,or are treating as operators
    Thanks
    Sk

    Hi,
    tried the same with JDeveloper 11.1.1.6 and it works without problems. The only problem that will arise is if you search for e.g. "Mickey and" to find Mickey and Mouse. Here "and" is recognized as a reserved keyword. However, you work around this by using "Mickey an". Note that you can intercept the table query using a QueryListener to handle cases where key words are used within a string
    Frank
    Edited by: Frank Nimphius on Apr 27, 2012 7:55 AM

  • Having data problems with ios6, seems to be a unique problem?

    My little brother recently bought an iphone 4s and imediately upgraded to ios6. Since the phone has been in use (less than 30 days) the phone company (bell a canadian company) claims he has used up 17 Gigs of data but the iphone counter says he has only used 5 gigs. I realize the counter may not be totally accurate but that big of a difference seems a little crazy. I also have an iphone 4s with the ios 6 and my data usage that my phone counter displays matches what my phone company says almost perfect (a few mb difference). The data amounts come in large chunks on my brothers phone and at very odd times such as: 1456.28 mb at 4:04 am, or 4268.07mb in one session. He does not use his phone for streaming or anything like that, We are aware of what uses large amounts of data and what does not. he uses it for facebook twitter web browing etc.
    When talking to tech support one guy said that we could have a "lemon" phone claiming that a known problem with ios6 can cause the data to somehow get "scrambled" and completely making up data usage numbers to send to the phone company. According to him this makes it an apple problem.
    My main question is has anyone heard of this? If so I am looking for articles talking abut this problem, we are looking at $1000.00 in overage chrges and are preparing for a fight with the phone company.
    The counter has never been reset and I know that I use my iphone 4s much more than my brother (I stream utube and radio stations alllll the time, goole maps etc) and have never once gone over my 6 gb limit. It just seems quite crazy to me that the difference in the iphone data collector (about 5 gb) and what the phone company has (17gb) is so great. To me that is indicating a serious problem. Any input would be greatly appreciated!
    Thanks
    Crystal

    kleptul wrote:
    I have upgraded from a SB Li've! to an SB Li've 24-bit, but I HAVE performed a complete format/clean install of WinXP SP2 to try to correct this problem. WinXP at first recognizes the card as a "Multimedia Audio Controller(the whole yellow "!" found in device manager). Upon installing either the drivers that came with the CD or the updated drivers from the website, the card works fine until I start the system up again, and I'm back at square one, having to install either set of drivers again(and rebooting) to have the card work properly once again. But after shutting down AGAIN... It's like I never installed the drivers in the first place. I'm running in a vicious circle here, like WinXP refuses to acknowledge the drivers permanently. I have formatted and reinstalled WinXP SP2 a total of three times now, to no avail. I'm a computer tech of 2 years and have NEVER seen a problem such as this. Each time the device manager comes up as "drivers for this device has not been installed". And from personal experiences/general knowledge, this does not sound like faulty hardware to me. It's THIS kind of instabilaty that makes me actually MISS dos! Um... help?
    Hi
    Sounds like your system don't recognize the sard (BIOS or OS).
    Does your system recognize the card as a "Creative Li've! 24-bit" or something (is PnP functionality in use?) even it don't work? Is BIOS battery well?
    Have you tried by installing Li've! in another PCI slot?
    Is there some security settings set on XP, and are you installing with full admin rights? Can you find the driver files even when your card is not functioning?
    Also, have you tried install drivers by executing the ctzapxx.exe found on installation package.
    jutapaMessage Edited by jutapa on 0-06-2006 08:53 PM

  • Live Data / Problem with file permissions

    Just trying out an old version of Dreamweaver MX 2004. I am
    using my webhosting service for remote server/testing server
    duties. It is running PHP 4.3.10 and MySQL 3.23.58. I was able to
    set up the database connection and test-retrieve a recordset with
    no problems. In following the tutorial I found that Livedata
    wouldn't work, it just giving me a warning about file permissions
    being wrong. It turns out that when Dreamweaver creates a temporary
    file of the work-in-progress to upload to the remote server the
    file is created on the server with owner=rw, group=rw, world=r
    which explains why it won't run - group has to be set to group=r.
    The file is created on the fly and then immediately deleted by
    Dreamweaver so it is impossible to manually set the permission on
    the server and probably fairly pointless too.
    I tried just saving the file and previewing in the browser
    which again causes it to be uploaded to the remote server. The
    first time this resulted in the browser offering a file download
    box instead of running the page. The reason is - again - that
    Dreamweaver is setting the uploaded file permissions to include
    group=rw. If I manually set the permission for group to group=r it
    runs fine.
    It turns out that Dreamweaver is always setting the file
    permissions on file uploads (checked php and html) to the
    remote/testing server to include group=rw. Once I set it manually
    on the remote/testing server to group=r for a php file everything
    is fine and subsequent uploads of the same file do not change it
    again.
    I checked with the webhosting company and their second-line
    have reported back to me that the default file permission they set
    on uploaded files includes group=r so it must be DW that is causing
    the problem by setting group=rw the first time. I confirmed this by
    using WS-FTP to upload the same file (renamed) to the same target
    directory and the permissions set were owner=rw, group=r, world=r.
    So
    Can anyone please tell me how to change the permissions DW
    sets on files written to a remote server because I have spent
    countless hours on it without success. From looking at other posts
    in this forum it could be that other users are hitting the same
    kind of problem with DW8

    Stop using Live Data with a hosting account. Set up PHP and
    MySQL locally on
    your machine. That is how it's supposed to work. You
    shouldn't test files on
    the fly on a host as you write them. Change your test account
    in DW to use
    the local server. Upload your files to your remote server
    after they are
    fully tested.
    Tom Muck
    http://www.tom-muck.com/
    "nigelssuk" <[email protected]> wrote in
    message
    news:[email protected]...
    > Just trying out an old version of Dreamweaver MX 2004. I
    am using my
    > webhosting
    > service for remote server/testing server duties. It is
    running PHP 4.3.10
    > and
    > MySQL 3.23.58. I was able to set up the database
    connection and
    > test-retrieve a
    > recordset with no problems. In following the tutorial I
    found that
    > Livedata
    > wouldn't work, it just giving me a warning about file
    permissions being
    > wrong.
    > It turns out that when Dreamweaver creates a temporary
    file of the
    > work-in-progress to upload to the remote server the file
    is created on the
    > server with owner=rw, group=rw, world=r which explains
    why it won't run -
    > group
    > has to be set to group=r. The file is created on the fly
    and then
    > immediately
    > deleted by Dreamweaver so it is impossible to manually
    set the permission
    > on
    > the server and probably fairly pointless too.
    >
    > I tried just saving the file and previewing in the
    browser which again
    > causes
    > it to be uploaded to the remote server. The first time
    this resulted in
    > the
    > browser offering a file download box instead of running
    the page. The
    > reason is
    > - again - that Dreamweaver is setting the uploaded file
    permissions to
    > include
    > group=rw. If I manually set the permission for group to
    group=r it runs
    > fine.
    >
    > It turns out that Dreamweaver is always setting the file
    permissions on
    > file
    > uploads (checked php and html) to the remote/testing
    server to include
    > group=rw. Once I set it manually on the remote/testing
    server to group=r
    > for a
    > php file everything is fine and subsequent uploads of
    the same file do not
    > change it again.
    >
    > I checked with the webhosting company and their
    second-line have reported
    > back
    > to me that the default file permission they set on
    uploaded files includes
    > group=r so it must be DW that is causing the problem by
    setting group=rw
    > the
    > first time. I confirmed this by using WS-FTP to upload
    the same file
    > (renamed)
    > to the same target directory and the permissions set
    were owner=rw,
    > group=r,
    > world=r.
    >
    > So
    >
    > Can anyone please tell me how to change the permissions
    DW sets on files
    > written to a remote server because I have spent
    countless hours on it
    > without
    > success. From looking at other posts in this forum it
    could be that other
    > users
    > are hitting the same kind of problem with DW8
    >

  • Binary data problem with web services on JRockit but not Sun JDK

    I have a problem with binary data in SOAP and JRockit
    (jrrt-3.0.0-1.6.0-linux-x64.bin) . I have an set of web services based
    on EJB 3.0 which return images as byte arrays inside a SOAP envelope
    to be consumed by .NET 2 services. The host app server is Oracle
    Application Server 10.3.1 on RHEL Linux update 4, on 64 bit Xeon 5500
    series HP blade hardware.
    While most images are fine most of the time, one particular image
    gives this message when being consumed in the .NET client:
    The '■' character, hexadecimal value 0x1F, cannot be included in a
    name. Line 2, position 380038.
    The MSDN suggests that this is usually caused by non-escaping of reserved XML characters like < but this isn't one of those.
    The SOAP looks ok and for the life of me I can't see why this ought to
    be a problem, especially since the problem doesn't arise running with
    the SUN JDK 1.6_06 64 bit)
    When making the same call from the OAS Enterprise Manager, I can make the same call with no problem (but the data is just rendered as character data in a browser) which maybe suggests some incompatibility with how JRockit is serializing the data ?
    Any ideas, I would be very happy to hear - JRockit gives a 15% or so
    speed boost to the website that these services power so obviously we
    want to use it if possible.
    Edited by: RichLiv on Nov 14, 2008 4:54 AM

    Seems to be the case that using MTOM stops this problem with JRockit. Strange but apparently true (so far).

  • Date problem with 5320!

    I bought a nokia 5320 xm a few days ago and i am really satisfied with it.
    But i have got some problems with the date the always gets in advance within days.
    For eg. i set the date to Friday 13 february 2009, afte 1-2 days, the date changes to Tue 17 feb 09. It always gets 4 days in advance and that's really annoying when setting new alarms.Can someone help me resolve this problem?
    My firmware version is 4.12.
    Should i update to 4.13? Is there a newer version?
     For those who have 5320, from which country is it from? I didn't get from Finland so i took Korea. Is it of good quality?
    Plz reply...

    Do you use the alarm clock and switch the phone off at night?
    If so this is a common bug that has effected many models lately.  The only workaround is to leave the phone switched on at night.
    It may have been fixed in an updated firmware so check here for new firmware: www.nokia.com/softwareupdate
    If no new updates are available then let nokia about the issue by using the "contact us" link near the top of the page.
    The quality of your model is the same as the quality of Finnish models.
    Message Edited by psychomania on 13-Feb-2009 11:07 AM

  • Date problem with IST(+5:30) timezone

    Hi,
    I'm having problem with Timezone IST, which is GMT + 05:30.
    SimpleDateFormat returns incorrect date when timezone on client machine is other than IST.
    When Timezone on machine is IST, correct value is returned.
    See the below example. All four dates are same ( LKT is also + 05:30).
    When timezone on machine is IST, all four dates are displayed same.
    For any other timezone, IST date is displayed incorrectly, rest 3 are displayed correctly.
    import java.text.ParseException;
    import java.text.SimpleDateFormat;
    import java.util.Date;
    public class Test {
        public static void main(String[] args) throws ParseException {
            SimpleDateFormat simpleDateFormat = new SimpleDateFormat("EEE MMM d HH:mm:ss Z yyyy");
            Date date1 = simpleDateFormat.parse("Wed Sep 02 02:17:41 +0530 2009");
            Date date2 = simpleDateFormat.parse("Wed Sep 02 02:17:41 IST 2009");
            Date date3 = simpleDateFormat.parse("Tue Sep 01 13:47:41 PDT 2009");
            Date date4 = simpleDateFormat.parse("Wed Sep 02 02:17:41 LKT 2009");
            System.out.println(date1.toString());
            System.out.println(date2.toString());
            System.out.println(date3.toString());
            System.out.println(date4.toString());
            System.out.println("Date1 equals Date2? " + date1.equals(date2));
            System.out.println("Date1 equals Date3? " + date1.equals(date3));
            System.out.println("Date1 equals Date4? " + date1.equals(date4));
            System.out.println("Date1.getTime() " + date1.getTime());
            System.out.println("Date2.getTime() " + date2.getTime());
            System.out.println("Date3.getTime() " + date3.getTime());
            System.out.println("Date4.getTime() " + date4.getTime());
    Output when timezone on client is GMT IST (GMT + 05:30):
    Wed Sep 02 02:17:41 IST 2009
    Wed Sep 02 02:17:41 IST 2009
    Wed Sep 02 02:17:41 IST 2009
    Wed Sep 02 02:17:41 IST 2009
    Date1 equals Date2? true
    Date1 equals Date3? true
    Date1 equals Date4? true
    Date1.getTime() 1251838061000
    Date2.getTime() 1251838061000
    Date3.getTime() 1251838061000
    Date4.getTime() 1251838061000
    Output when timezone on client is GMT (Casablanca):
    Tue Sep 01 15:47:41 ACT 2009
    Tue Sep 01 19:17:41 ACT 2009
    Tue Sep 01 15:47:41 ACT 2009
    Tue Sep 01 15:47:41 ACT 2009
    Date1 equals Date2? false
    Date1 equals Date3? true
    Date1 equals Date4? true
    Date1.getTime() 1251838061000
    Date2.getTime() 1251850661000
    Date3.getTime() 1251838061000
    Date4.getTime() 1251838061000
    Output when timezone on client is PDT ( -0800, -0700 for this date due due Daylight saving):
    Tue Sep 01 13:47:41 PDT 2009
    Tue Sep 01 17:17:41 PDT 2009
    Tue Sep 01 13:47:41 PDT 2009
    Tue Sep 01 13:47:41 PDT 2009
    Date1 equals Date2? false
    Date1 equals Date3? true
    Date1 equals Date4? true
    Date1.getTime() 1251838061000
    Date2.getTime() 1251850661000
    Date3.getTime() 1251838061000
    Date4.getTime() 1251838061000
    IS this a bug in java??
    Regards

    Your program is in error. PDT and LKT are not valid time zone ids in Java. There may be other problems, also, I didn't check.
    I know this program produces valid results, you can try it
    import java.text.DateFormat;
    import java.util.Date;
    import java.util.TimeZone;
    public class DateTest
        public static void main(String[] args)
            Date current = new Date();
            DateFormat df =
                DateFormat.getDateTimeInstance(DateFormat.MEDIUM, DateFormat.FULL);
            System.out.println("Default TZ: " + df.format(current));
            df.setTimeZone(TimeZone.getTimeZone("IST"));
            System.out.println(df.format(current));
            df.setTimeZone(TimeZone.getTimeZone("GMT"));
            System.out.println(df.format(current));
            df.setTimeZone(TimeZone.getTimeZone("Etc/GMT-5"));
            System.out.println(df.format(current));
    }This program lists all of Java's time zones
    import java.util.*;
    public class TimezoneList
        public static void main(String[] args)
            int msPerHr = 3600 * 1000;
            String[] ids = TimeZone.getAvailableIDs();
            for (int n = 0; n < ids.length; n++)
                TimeZone tz = TimeZone.getTimeZone(ids[n]);
                System.out.print(
                    "TZ: " + ids[n] + "  " + (double) tz.getRawOffset() / msPerHr + "  ");
                System.out.println(
                    tz.useDaylightTime() ? "DST=" + (double) tz.getDSTSavings() / msPerHr : "");
    }

  • Enhancement request : Table - Data  -- Filter with multiple lines

    It would be nice when the Filter option in the tables Data tab could contain multiple lines, because :
    In case of a complex where clause on a table (used in a query) it's hard to get an impression of the filter because everything is typed on one single line.
    In case of multiple lines it's also more easy to disable a single clause temporary with a double dash (--) at the start of the line instead of searching in a complex filter where to put /* ...*/
    Eric.

    What I mean is the Filter option when displaying the data (Data tab) of a table. You have the possibility to enter a Sort and a Filter (to reduce the data that is displayed). That Filter option has no possibility to enter multiple lines. So there is no way to 'format' the filter which would be nice in case of complex or large 'where clauses'.
    What would you prefer, this (multiple lines) ?
    AND ( p_peildatum IS NULL
    OR
    TRUNC(p_peildatum) BETWEEN TRUNC(dnm.datum_ingang)
    AND TRUNC(NVL(dnm.datum_einde,p_peildatum))
    AND ( p_ondergrens IS NULL
    OR
    TRUNC(p_ondergrens) <= TRUNC(NVL(dnm.datum_einde,p_ondergrens))
    or this, like it is now (everything on one single line) :
    ( p_peildatum IS NULL OR TRUNC(p_peildatum) BETWEEN TRUNC(dnm.datum_ingang) AND TRUNC(NVL(dnm.datum_einde,p_peildatum)) ) AND ( p_ondergrens IS NULL OR TRUNC(p_ondergrens) <= TRUNC(NVL(dnm.datum_einde,p_ondergrens)) )
    Eric.

  • Commit in sp  having  globle table and function with autonomus transaction

    hi gurus,
    1)  i want to know if we populate a globle table in sp  then give  commit  then weather data will be present in globle table or not ..?
    globle table :-
    ON COMMIT delete  ROWS
    NOCACHE;
    2)  in same sp if we call a function having  autonomus transaction  and commit  then wath will happen ..

    1) i want to know if we populate a globle table in sp then give commit then weather data will be present in globle table or not ..?
    globle table :-
    ON COMMIT delete ROWS
    NOCACHE;Data will be deleted from the Global Temporary Table.
    2) in same sp if we call a function having autonomus transaction and commit then wath will happen ..Data Will not be deleted from the Global Temporary Table.

  • Date problem with Epoch

    Javadoc for Date class has this definition -
    Date(long date)
    Allocates a Date object and initializes it to represent the specified number of milliseconds since the standard base time known as "the epoch", namely January 1, 1970, 00:00:00 GMT.
    When i initialiaze a Date object with a long value of 0 it doesn't give me "the epoch" when i print out the string representation.
    My simple test class is -
    import java.util.*;
    public class DateTest {
    public DateTest() {
    Date d = new Date(0L);
    System.out.println(d.toString());
    public static void main(String args[]) {
    DateTest dt = new DateTest();
    It gives me this output - Wed Dec 31 19:00:00 EST 1969
    Can anyone let me know why there is a difference of 5 hrs between the epoch and the date object?

    Hi gurudasm!
    Let us know if your time zone is GMT-5:00.

  • Sliding Window Table Partitioning Problems with RANGE RIGHT, SPLIT, MERGE using Multiple File Groups

    There is misleading information in two system views (sys.data_spaces & sys.destination_data_spaces) about the physical location of data after a partitioning MERGE and before an INDEX REBUILD operation on a partitioned table. In SQL Server 2012 SP1 CU6,
    the script below (SQLCMD mode, set DataDrive  & LogDrive variables  for the runtime environment) will create a test database with file groups and files to support a partitioned table. The partition function and scheme spread the test data across
    4 files groups, an empty partition, file group and file are maintained at the start and end of the range. A problem occurs after the SWITCH and MERGE RANGE operations, the views sys.data_spaces & sys.destination_data_spaces show the logical, not the physical,
    location of data.
    --=================================================================================
    -- PartitionLabSetup_RangeRight.sql
    -- 001. Create test database
    -- 002. Add file groups and files
    -- 003. Create partition function and schema
    -- 004. Create and populate a test table
    --=================================================================================
    USE [master]
    GO
    -- 001 - Create Test Database
    :SETVAR DataDrive "D:\SQL\Data\"
    :SETVAR LogDrive "D:\SQL\Logs\"
    :SETVAR DatabaseName "workspace"
    :SETVAR TableName "TestTable"
    -- Drop if exists and create Database
    IF DATABASEPROPERTYEX(N'$(databasename)','Status') IS NOT NULL
    BEGIN
    ALTER DATABASE $(DatabaseName) SET SINGLE_USER WITH ROLLBACK IMMEDIATE
    DROP DATABASE $(DatabaseName)
    END
    CREATE DATABASE $(DatabaseName)
    ON
    ( NAME = $(DatabaseName)_data,
    FILENAME = N'$(DataDrive)$(DatabaseName)_data.mdf',
    SIZE = 10,
    MAXSIZE = 500,
    FILEGROWTH = 5 )
    LOG ON
    ( NAME = $(DatabaseName)_log,
    FILENAME = N'$(LogDrive)$(DatabaseName).ldf',
    SIZE = 5MB,
    MAXSIZE = 5000MB,
    FILEGROWTH = 5MB ) ;
    GO
    -- 002. Add file groups and files
    --:SETVAR DatabaseName "workspace"
    --:SETVAR TableName "TestTable"
    --:SETVAR DataDrive "D:\SQL\Data\"
    --:SETVAR LogDrive "D:\SQL\Logs\"
    DECLARE @nSQL NVARCHAR(2000) ;
    DECLARE @x INT = 1;
    WHILE @x <= 6
    BEGIN
    SELECT @nSQL =
    'ALTER DATABASE $(DatabaseName)
    ADD FILEGROUP $(TableName)_fg' + RTRIM(CAST(@x AS CHAR(5))) + ';
    ALTER DATABASE $(DatabaseName)
    ADD FILE
    NAME= ''$(TableName)_f' + CAST(@x AS CHAR(5)) + ''',
    FILENAME = ''$(DataDrive)\$(TableName)_f' + RTRIM(CAST(@x AS CHAR(5))) + '.ndf''
    TO FILEGROUP $(TableName)_fg' + RTRIM(CAST(@x AS CHAR(5))) + ';'
    EXEC sp_executeSQL @nSQL;
    SET @x = @x + 1;
    END
    -- 003. Create partition function and schema
    --:SETVAR TableName "TestTable"
    --:SETVAR DatabaseName "workspace"
    USE $(DatabaseName);
    CREATE PARTITION FUNCTION $(TableName)_func (int)
    AS RANGE RIGHT FOR VALUES
    0,
    15,
    30,
    45,
    60
    CREATE PARTITION SCHEME $(TableName)_scheme
    AS
    PARTITION $(TableName)_func
    TO
    $(TableName)_fg1,
    $(TableName)_fg2,
    $(TableName)_fg3,
    $(TableName)_fg4,
    $(TableName)_fg5,
    $(TableName)_fg6
    -- Create TestTable
    --:SETVAR TableName "TestTable"
    --:SETVAR BackupDrive "D:\SQL\Backups\"
    --:SETVAR DatabaseName "workspace"
    CREATE TABLE [dbo].$(TableName)(
    [Partition_PK] [int] NOT NULL,
    [GUID_PK] [uniqueidentifier] NOT NULL,
    [CreateDate] [datetime] NULL,
    [CreateServer] [nvarchar](50) NULL,
    [RandomNbr] [int] NULL,
    CONSTRAINT [PK_$(TableName)] PRIMARY KEY CLUSTERED
    [Partition_PK] ASC,
    [GUID_PK] ASC
    ) ON $(TableName)_scheme(Partition_PK)
    ) ON $(TableName)_scheme(Partition_PK)
    ALTER TABLE [dbo].$(TableName) ADD CONSTRAINT [DF_$(TableName)_GUID_PK] DEFAULT (newid()) FOR [GUID_PK]
    ALTER TABLE [dbo].$(TableName) ADD CONSTRAINT [DF_$(TableName)_CreateDate] DEFAULT (getdate()) FOR [CreateDate]
    ALTER TABLE [dbo].$(TableName) ADD CONSTRAINT [DF_$(TableName)_CreateServer] DEFAULT (@@servername) FOR [CreateServer]
    -- 004. Create and populate a test table
    -- Load TestTable Data - Seconds 0-59 are used as the Partitoning Key
    --:SETVAR TableName "TestTable"
    SET NOCOUNT ON;
    DECLARE @Now DATETIME = GETDATE()
    WHILE @Now > DATEADD(minute,-1,GETDATE())
    BEGIN
    INSERT INTO [dbo].$(TableName)
    ([Partition_PK]
    ,[RandomNbr])
    VALUES
    DATEPART(second,GETDATE())
    ,ROUND((RAND() * 100),0)
    END
    -- Confirm table partitioning - http://lextonr.wordpress.com/tag/sys-destination_data_spaces/
    SELECT
    N'DatabaseName' = DB_NAME()
    , N'SchemaName' = s.name
    , N'TableName' = o.name
    , N'IndexName' = i.name
    , N'IndexType' = i.type_desc
    , N'PartitionScheme' = ps.name
    , N'DataSpaceName' = ds.name
    , N'DataSpaceType' = ds.type_desc
    , N'PartitionFunction' = pf.name
    , N'PartitionNumber' = dds.destination_id
    , N'BoundaryValue' = prv.value
    , N'RightBoundary' = pf.boundary_value_on_right
    , N'PartitionFileGroup' = ds2.name
    , N'RowsOfData' = p.[rows]
    FROM
    sys.objects AS o
    INNER JOIN sys.schemas AS s
    ON o.[schema_id] = s.[schema_id]
    INNER JOIN sys.partitions AS p
    ON o.[object_id] = p.[object_id]
    INNER JOIN sys.indexes AS i
    ON p.[object_id] = i.[object_id]
    AND p.index_id = i.index_id
    INNER JOIN sys.data_spaces AS ds
    ON i.data_space_id = ds.data_space_id
    INNER JOIN sys.partition_schemes AS ps
    ON ds.data_space_id = ps.data_space_id
    INNER JOIN sys.partition_functions AS pf
    ON ps.function_id = pf.function_id
    LEFT OUTER JOIN sys.partition_range_values AS prv
    ON pf.function_id = prv.function_id
    AND p.partition_number = prv.boundary_id
    LEFT OUTER JOIN sys.destination_data_spaces AS dds
    ON ps.data_space_id = dds.partition_scheme_id
    AND p.partition_number = dds.destination_id
    LEFT OUTER JOIN sys.data_spaces AS ds2
    ON dds.data_space_id = ds2.data_space_id
    ORDER BY
    DatabaseName
    ,SchemaName
    ,TableName
    ,IndexName
    ,PartitionNumber
    --=================================================================================
    -- SECTION 2 - SWITCH OUT
    -- 001 - Create TestTableOut
    -- 002 - Switch out partition in range 0-14
    -- 003 - Merge range 0 -29
    -- 001. TestTableOut
    :SETVAR TableName "TestTable"
    IF OBJECT_ID('dbo.$(TableName)Out') IS NOT NULL
    DROP TABLE [dbo].[$(TableName)Out]
    CREATE TABLE [dbo].[$(TableName)Out](
    [Partition_PK] [int] NOT NULL,
    [GUID_PK] [uniqueidentifier] NOT NULL,
    [CreateDate] [datetime] NULL,
    [CreateServer] [nvarchar](50) NULL,
    [RandomNbr] [int] NULL,
    CONSTRAINT [PK_$(TableName)Out] PRIMARY KEY CLUSTERED
    [Partition_PK] ASC,
    [GUID_PK] ASC
    ) ON $(TableName)_fg2;
    GO
    -- 002 - Switch out partition in range 0-14
    --:SETVAR TableName "TestTable"
    ALTER TABLE dbo.$(TableName)
    SWITCH PARTITION 2 TO dbo.$(TableName)Out;
    -- 003 - Merge range 0 - 29
    --:SETVAR TableName "TestTable"
    ALTER PARTITION FUNCTION $(TableName)_func()
    MERGE RANGE (15);
    -- Confirm table partitioning
    -- Original source of this query - http://lextonr.wordpress.com/tag/sys-destination_data_spaces/
    SELECT
    N'DatabaseName' = DB_NAME()
    , N'SchemaName' = s.name
    , N'TableName' = o.name
    , N'IndexName' = i.name
    , N'IndexType' = i.type_desc
    , N'PartitionScheme' = ps.name
    , N'DataSpaceName' = ds.name
    , N'DataSpaceType' = ds.type_desc
    , N'PartitionFunction' = pf.name
    , N'PartitionNumber' = dds.destination_id
    , N'BoundaryValue' = prv.value
    , N'RightBoundary' = pf.boundary_value_on_right
    , N'PartitionFileGroup' = ds2.name
    , N'RowsOfData' = p.[rows]
    FROM
    sys.objects AS o
    INNER JOIN sys.schemas AS s
    ON o.[schema_id] = s.[schema_id]
    INNER JOIN sys.partitions AS p
    ON o.[object_id] = p.[object_id]
    INNER JOIN sys.indexes AS i
    ON p.[object_id] = i.[object_id]
    AND p.index_id = i.index_id
    INNER JOIN sys.data_spaces AS ds
    ON i.data_space_id = ds.data_space_id
    INNER JOIN sys.partition_schemes AS ps
    ON ds.data_space_id = ps.data_space_id
    INNER JOIN sys.partition_functions AS pf
    ON ps.function_id = pf.function_id
    LEFT OUTER JOIN sys.partition_range_values AS prv
    ON pf.function_id = prv.function_id
    AND p.partition_number = prv.boundary_id
    LEFT OUTER JOIN sys.destination_data_spaces AS dds
    ON ps.data_space_id = dds.partition_scheme_id
    AND p.partition_number = dds.destination_id
    LEFT OUTER JOIN sys.data_spaces AS ds2
    ON dds.data_space_id = ds2.data_space_id
    ORDER BY
    DatabaseName
    ,SchemaName
    ,TableName
    ,IndexName
    ,PartitionNumber  
    The table below shows the results of the ‘Confirm Table Partitioning’ query, before and after the MERGE.
    The T-SQL code below illustrates the problem.
    -- PartitionLab_RangeRight
    USE workspace;
    DROP TABLE dbo.TestTableOut;
    USE master;
    ALTER DATABASE workspace
    REMOVE FILE TestTable_f3 ;
    -- ERROR
    --Msg 5042, Level 16, State 1, Line 1
    --The file 'TestTable_f3 ' cannot be removed because it is not empty.
    ALTER DATABASE workspace
    REMOVE FILE TestTable_f2 ;
    -- Works surprisingly!!
    use workspace;
    ALTER INDEX [PK_TestTable] ON [dbo].[TestTable] REBUILD PARTITION = 2;
    --Msg 622, Level 16, State 3, Line 2
    --The filegroup "TestTable_fg2" has no files assigned to it. Tables, indexes, text columns, ntext columns, and image columns cannot be populated on this filegroup until a file is added.
    --The statement has been terminated.
    If you run ALTER INDEX REBUILD before trying to remove files from File Group 3, it works. Rerun the database setup script then the code below.
    -- RANGE RIGHT
    -- Rerun PartitionLabSetup_RangeRight.sql before the code below
    USE workspace;
    DROP TABLE dbo.TestTableOut;
    ALTER INDEX [PK_TestTable] ON [dbo].[TestTable] REBUILD PARTITION = 2;
    USE master;
    ALTER DATABASE workspace
    REMOVE FILE TestTable_f3;
    -- Works as expected!!
    The file in File Group 2 appears to contain data but it can be dropped. Although the system views are reporting the data in File Group 2, it still physically resides in File Group 3 and isn’t moved until the index is rebuilt. The RANGE RIGHT function means
    the left file group (File Group 2) is retained when splitting ranges.
    RANGE LEFT would have retained the data in File Group 3 where it already resided, no INDEX REBUILD is necessary to effectively complete the MERGE operation. The script below implements the same partitioning strategy (data distribution between partitions)
    on the test table but uses different boundary definitions and RANGE LEFT.
    --=================================================================================
    -- PartitionLabSetup_RangeLeft.sql
    -- 001. Create test database
    -- 002. Add file groups and files
    -- 003. Create partition function and schema
    -- 004. Create and populate a test table
    --=================================================================================
    USE [master]
    GO
    -- 001 - Create Test Database
    :SETVAR DataDrive "D:\SQL\Data\"
    :SETVAR LogDrive "D:\SQL\Logs\"
    :SETVAR DatabaseName "workspace"
    :SETVAR TableName "TestTable"
    -- Drop if exists and create Database
    IF DATABASEPROPERTYEX(N'$(databasename)','Status') IS NOT NULL
    BEGIN
    ALTER DATABASE $(DatabaseName) SET SINGLE_USER WITH ROLLBACK IMMEDIATE
    DROP DATABASE $(DatabaseName)
    END
    CREATE DATABASE $(DatabaseName)
    ON
    ( NAME = $(DatabaseName)_data,
    FILENAME = N'$(DataDrive)$(DatabaseName)_data.mdf',
    SIZE = 10,
    MAXSIZE = 500,
    FILEGROWTH = 5 )
    LOG ON
    ( NAME = $(DatabaseName)_log,
    FILENAME = N'$(LogDrive)$(DatabaseName).ldf',
    SIZE = 5MB,
    MAXSIZE = 5000MB,
    FILEGROWTH = 5MB ) ;
    GO
    -- 002. Add file groups and files
    --:SETVAR DatabaseName "workspace"
    --:SETVAR TableName "TestTable"
    --:SETVAR DataDrive "D:\SQL\Data\"
    --:SETVAR LogDrive "D:\SQL\Logs\"
    DECLARE @nSQL NVARCHAR(2000) ;
    DECLARE @x INT = 1;
    WHILE @x <= 6
    BEGIN
    SELECT @nSQL =
    'ALTER DATABASE $(DatabaseName)
    ADD FILEGROUP $(TableName)_fg' + RTRIM(CAST(@x AS CHAR(5))) + ';
    ALTER DATABASE $(DatabaseName)
    ADD FILE
    NAME= ''$(TableName)_f' + CAST(@x AS CHAR(5)) + ''',
    FILENAME = ''$(DataDrive)\$(TableName)_f' + RTRIM(CAST(@x AS CHAR(5))) + '.ndf''
    TO FILEGROUP $(TableName)_fg' + RTRIM(CAST(@x AS CHAR(5))) + ';'
    EXEC sp_executeSQL @nSQL;
    SET @x = @x + 1;
    END
    -- 003. Create partition function and schema
    --:SETVAR TableName "TestTable"
    --:SETVAR DatabaseName "workspace"
    USE $(DatabaseName);
    CREATE PARTITION FUNCTION $(TableName)_func (int)
    AS RANGE LEFT FOR VALUES
    -1,
    14,
    29,
    44,
    59
    CREATE PARTITION SCHEME $(TableName)_scheme
    AS
    PARTITION $(TableName)_func
    TO
    $(TableName)_fg1,
    $(TableName)_fg2,
    $(TableName)_fg3,
    $(TableName)_fg4,
    $(TableName)_fg5,
    $(TableName)_fg6
    -- Create TestTable
    --:SETVAR TableName "TestTable"
    --:SETVAR BackupDrive "D:\SQL\Backups\"
    --:SETVAR DatabaseName "workspace"
    CREATE TABLE [dbo].$(TableName)(
    [Partition_PK] [int] NOT NULL,
    [GUID_PK] [uniqueidentifier] NOT NULL,
    [CreateDate] [datetime] NULL,
    [CreateServer] [nvarchar](50) NULL,
    [RandomNbr] [int] NULL,
    CONSTRAINT [PK_$(TableName)] PRIMARY KEY CLUSTERED
    [Partition_PK] ASC,
    [GUID_PK] ASC
    ) ON $(TableName)_scheme(Partition_PK)
    ) ON $(TableName)_scheme(Partition_PK)
    ALTER TABLE [dbo].$(TableName) ADD CONSTRAINT [DF_$(TableName)_GUID_PK] DEFAULT (newid()) FOR [GUID_PK]
    ALTER TABLE [dbo].$(TableName) ADD CONSTRAINT [DF_$(TableName)_CreateDate] DEFAULT (getdate()) FOR [CreateDate]
    ALTER TABLE [dbo].$(TableName) ADD CONSTRAINT [DF_$(TableName)_CreateServer] DEFAULT (@@servername) FOR [CreateServer]
    -- 004. Create and populate a test table
    -- Load TestTable Data - Seconds 0-59 are used as the Partitoning Key
    --:SETVAR TableName "TestTable"
    SET NOCOUNT ON;
    DECLARE @Now DATETIME = GETDATE()
    WHILE @Now > DATEADD(minute,-1,GETDATE())
    BEGIN
    INSERT INTO [dbo].$(TableName)
    ([Partition_PK]
    ,[RandomNbr])
    VALUES
    DATEPART(second,GETDATE())
    ,ROUND((RAND() * 100),0)
    END
    -- Confirm table partitioning - http://lextonr.wordpress.com/tag/sys-destination_data_spaces/
    SELECT
    N'DatabaseName' = DB_NAME()
    , N'SchemaName' = s.name
    , N'TableName' = o.name
    , N'IndexName' = i.name
    , N'IndexType' = i.type_desc
    , N'PartitionScheme' = ps.name
    , N'DataSpaceName' = ds.name
    , N'DataSpaceType' = ds.type_desc
    , N'PartitionFunction' = pf.name
    , N'PartitionNumber' = dds.destination_id
    , N'BoundaryValue' = prv.value
    , N'RightBoundary' = pf.boundary_value_on_right
    , N'PartitionFileGroup' = ds2.name
    , N'RowsOfData' = p.[rows]
    FROM
    sys.objects AS o
    INNER JOIN sys.schemas AS s
    ON o.[schema_id] = s.[schema_id]
    INNER JOIN sys.partitions AS p
    ON o.[object_id] = p.[object_id]
    INNER JOIN sys.indexes AS i
    ON p.[object_id] = i.[object_id]
    AND p.index_id = i.index_id
    INNER JOIN sys.data_spaces AS ds
    ON i.data_space_id = ds.data_space_id
    INNER JOIN sys.partition_schemes AS ps
    ON ds.data_space_id = ps.data_space_id
    INNER JOIN sys.partition_functions AS pf
    ON ps.function_id = pf.function_id
    LEFT OUTER JOIN sys.partition_range_values AS prv
    ON pf.function_id = prv.function_id
    AND p.partition_number = prv.boundary_id
    LEFT OUTER JOIN sys.destination_data_spaces AS dds
    ON ps.data_space_id = dds.partition_scheme_id
    AND p.partition_number = dds.destination_id
    LEFT OUTER JOIN sys.data_spaces AS ds2
    ON dds.data_space_id = ds2.data_space_id
    ORDER BY
    DatabaseName
    ,SchemaName
    ,TableName
    ,IndexName
    ,PartitionNumber
    --=================================================================================
    -- SECTION 2 - SWITCH OUT
    -- 001 - Create TestTableOut
    -- 002 - Switch out partition in range 0-14
    -- 003 - Merge range 0 -29
    -- 001. TestTableOut
    :SETVAR TableName "TestTable"
    IF OBJECT_ID('dbo.$(TableName)Out') IS NOT NULL
    DROP TABLE [dbo].[$(TableName)Out]
    CREATE TABLE [dbo].[$(TableName)Out](
    [Partition_PK] [int] NOT NULL,
    [GUID_PK] [uniqueidentifier] NOT NULL,
    [CreateDate] [datetime] NULL,
    [CreateServer] [nvarchar](50) NULL,
    [RandomNbr] [int] NULL,
    CONSTRAINT [PK_$(TableName)Out] PRIMARY KEY CLUSTERED
    [Partition_PK] ASC,
    [GUID_PK] ASC
    ) ON $(TableName)_fg2;
    GO
    -- 002 - Switch out partition in range 0-14
    --:SETVAR TableName "TestTable"
    ALTER TABLE dbo.$(TableName)
    SWITCH PARTITION 2 TO dbo.$(TableName)Out;
    -- 003 - Merge range 0 - 29
    :SETVAR TableName "TestTable"
    ALTER PARTITION FUNCTION $(TableName)_func()
    MERGE RANGE (14);
    -- Confirm table partitioning
    -- Original source of this query - http://lextonr.wordpress.com/tag/sys-destination_data_spaces/
    SELECT
    N'DatabaseName' = DB_NAME()
    , N'SchemaName' = s.name
    , N'TableName' = o.name
    , N'IndexName' = i.name
    , N'IndexType' = i.type_desc
    , N'PartitionScheme' = ps.name
    , N'DataSpaceName' = ds.name
    , N'DataSpaceType' = ds.type_desc
    , N'PartitionFunction' = pf.name
    , N'PartitionNumber' = dds.destination_id
    , N'BoundaryValue' = prv.value
    , N'RightBoundary' = pf.boundary_value_on_right
    , N'PartitionFileGroup' = ds2.name
    , N'RowsOfData' = p.[rows]
    FROM
    sys.objects AS o
    INNER JOIN sys.schemas AS s
    ON o.[schema_id] = s.[schema_id]
    INNER JOIN sys.partitions AS p
    ON o.[object_id] = p.[object_id]
    INNER JOIN sys.indexes AS i
    ON p.[object_id] = i.[object_id]
    AND p.index_id = i.index_id
    INNER JOIN sys.data_spaces AS ds
    ON i.data_space_id = ds.data_space_id
    INNER JOIN sys.partition_schemes AS ps
    ON ds.data_space_id = ps.data_space_id
    INNER JOIN sys.partition_functions AS pf
    ON ps.function_id = pf.function_id
    LEFT OUTER JOIN sys.partition_range_values AS prv
    ON pf.function_id = prv.function_id
    AND p.partition_number = prv.boundary_id
    LEFT OUTER JOIN sys.destination_data_spaces AS dds
    ON ps.data_space_id = dds.partition_scheme_id
    AND p.partition_number = dds.destination_id
    LEFT OUTER JOIN sys.data_spaces AS ds2
    ON dds.data_space_id = ds2.data_space_id
    ORDER BY
    DatabaseName
    ,SchemaName
    ,TableName
    ,IndexName
    ,PartitionNumber
    The table below shows the results of the ‘Confirm Table Partitioning’ query, before and after the MERGE.
    The data in the File and File Group to be dropped (File Group 2) has already been switched out; File Group 3 contains the data so no index rebuild is needed to move data and complete the MERGE.
    RANGE RIGHT would not be a problem in a ‘Sliding Window’ if the same file group is used for all partitions, when they are created and dropped it introduces a dependency on full index rebuilds. Larger tables are typically partitioned and a full index rebuild
    might be an expensive operation. I’m not sure how a RANGE RIGHT partitioning strategy could be implemented, with an ascending partitioning key, using multiple file groups without having to move data. Using a single file group (multiple files) for all partitions
    within a table would avoid physically moving data between file groups; no index rebuild would be necessary to complete a MERGE and system views would accurately reflect the physical location of data. 
    If a RANGE RIGHT partition function is used, the data is physically in the wrong file group after the MERGE assuming a typical ascending partitioning key, and the 'Data Spaces' system views might be misleading. Thanks to Manuj and Chris for a lot of help
    investigating this.
    NOTE 10/03/2014 - The solution
    The solution is so easy it's embarrassing, I was using the wrong boundary points for the MERGE (both RANGE LEFT & RANGE RIGHT) to get rid of historic data.
    -- Wrong Boundary Point Range Right
    --ALTER PARTITION FUNCTION $(TableName)_func()
    --MERGE RANGE (15);
    -- Wrong Boundary Point Range Left
    --ALTER PARTITION FUNCTION $(TableName)_func()
    --MERGE RANGE (14);
    -- Correct Boundary Pounts for MERGE
    ALTER PARTITION FUNCTION $(TableName)_func()
    MERGE RANGE (0); -- or -1 for RANGE LEFT
    The empty, switched out partition (on File Group 2) is then MERGED with the empty partition maintained at the start of the range and no data movement is necessary. I retract the suggestion that a problem exists with RANGE RIGHT Sliding Windows using multiple
    file groups and apologize :-)

    Hi Paul Brewer,
    Thanks for your post and glad to hear that the issue is resolved. It is kind of you post a reply to share your solution. That way, other community members could benefit from your sharing.
    Regards.
    Sofiya Li
    Sofiya Li
    TechNet Community Support

  • Possible Corruption in old Oracle 9i table - Fixed problem with WinXP Mode

    EDIT: This was not a corruption in my database. It was a communication problem between Windows 7 (where my app runs) and Windows XP Mode (where my Oracle 9i database runs). Skip to the bottom of page 2 to see the solution I found.
    I have an old program that I use constantly. It connects to an Oracle 9i database (version 9.2.0.5). Within the past month, one of the processes has slowed to a crawl. This process saves an Excel file to an Oracle table. The files are no larger than 6MB. The field that holds the spreadsheet is a LONG RAW data type. I cannot figure out why the process is taking to long now. It takes up to an hour to save the file to the table. The code has not changed. Here's what I've tried so far. I'm not an Oracle DBA.
    1. Tried running VALIDATE STRUCTURE on table and all indexes. No corruption found.
    2. Tried truncating the table to remove all existing data. No change.
    3. Tried running DBMS_REPAIR on table. No corruption found.
    4. Tried running DB_VERIFY on all data files. No corruption found.
    5. Tried dropping and recreating the table with no data in it. No change.
    I'm not sure that this is a corruption problem, but I can't think of what else has changed. Nothing has happened recently that should have caused this.
    What else can I look for?
    Thank you for your help.
    EDIT: Changed title to help other people using Oracle in WinXP Mode find this solution.

    JavaUser wrote:
    I figured out how to turn on tracing for my Java program at the point where it is taking a very long time. The trace shows that it takes 205.66 second to execute my INSERT statement. Here is the trace output translated by TKProf for this INSERT statement:
    call     count       cpu    elapsed       disk      query    current        rows
    Parse        1      0.00       0.00          0          0          0           0
    Execute      1      2.18     205.66          0         75        508           1
    Fetch        0      0.00       0.00          0          0          0           0
    total        2      2.18     205.66          0         75        508           1
    Misses in library cache during parse: 0
    Optimizer goal: CHOOSEI'm seeing how long the query is taking, but I'm not seeing why. What else should I be looking for?
    Thanks for your help!
    Edited by: JavaUser on Apr 18, 2012 2:32 PMtwo different ways below
    DBMS_SESSION.SESSION_TRACE_ENABLE(TRUE,TRUE,'ALL_EXECUTIONS');
    alter session set events '10046 trace name context forever, level 12';
    -- invoke the SQL code
    DBMS_SESSION.SESSION_TRACE_ENABLE(FALSE,FALSE,NULL);
    DBMS_MONITOR.SESSION_TRACE_ENABLE(
        session_id   IN  BINARY_INTEGER DEFAULT NULL,
        serial_num   IN  BINARY_INTEGER DEFAULT NULL,
        waits        IN  BOOLEAN DEFAULT TRUE,
        binds        IN  BOOLEAN DEFAULT FALSE,
        plan_stat    IN  VARCHAR2 DEFAULT NULL);

  • Table editor problem with default value for column

    Hi there,
    I'm trying to use SQL Developer 1.2.1 on Ubuntu 7.10 (though I don't think the OS is relevant) and I'm running into a snag when trying to update table structures. If you go to edit the table to say modify a column name, and that column has a default value set, SQL Developer is encapsulating the value with brackets and quotes. When trying to save the changes, it complains about the default value being 4 chars too many for the column width. An example of this would be a currency code column of varchar2 (3) set with EUR as the default. SQL Developer changes the value to ('EUR') hence the error.
    Is there anyway to prevent this from happening?
    Cheers,
    Chris

    Could you please be more specific? In 1.2.1.32.40 I
    added the column COL1 VARCHAR2(3) with default value
    'EUR'. The data display field refreshed to show the
    default value, so I edited it in a couple of entries
    and comitted the change without problem. Then I
    renamed the column from the "Edit table" popup menu.
    Finally, I renamed the column from the "Rename
    column" popup menu, no problem either.Ah, you are correct. That does work. What I was trying is select tablename in the object browser, then right click on it and select "Edit" from the contextual menu. You are then presented with edit table dialog box. If you then select a column in that box you will see a column properties box. In that section you can change the name, default value, datatype et cetera. Note that your default column value which should just be EUR (or 'EUR' to denote that it's a string) is now ('EUR'). Once you try changing the name to of the column to something else and then click OK, you should then get an error complaining of "Invalid varchar2 default value" with a more specific message of "Default values size 7 is greater than the allowed 3"
    You have provided a work around, and thanks for that, but it would be nice to edit everything in the Edit table dialog box if you're modifying more than one column name. I'm tasked with cleaning up a bit of a messy database, and there are a good deal of columns to be renamed.
    Cheers,
    Chris

  • App+IIS server role, WCF data problems with Shrepoint Foundation 2013 install on 2012 R2

    Hi
    I am having tremendous trouble installing Sharepoint Foundation on a Windows 2012 R2 domain controller.
    The server has just been added to our domain, promoted and this is the first piece of software I am trying to install. I had run Windows Update after joining it to the domain and before making it a member server before it was promoted.
    I had real problems getting AppFabric to install but that is now done. However when I run the Sharepoint prerequisite installer (As Administrator) a results screen is displayed stating there was a configuration error during the installation of the Application
    Server Role, Web Server (IIS) Role. It also says that the installation of Microsoft WCF Data Services 5 was skipped.
    I manually added the Application Server Role.
    I have manually installed WCF Data Services, which was successful.
    I have used this page
    http://support.microsoft.com/kb/2765260/en-gb to try and get around the Application Server and IIS Roles error. The hotfix quoted on that page is not applicable to this system. I had to run a DISM command to create an image from the OS installation media
    before the Powershell commands would work.
    Next, I rebooted the server and ran the prerequisite installer again as recommended. However, exactly the same problems are reported.
    Can anyone help me with this, please?
    Thanks.
    Prerequisiteinstaller log:
    2014-07-08 15:31:20 - Processor architecture is (9)
    2014-07-08 15:31:20 - Reading the following string value/name...
    2014-07-08 15:31:20 - Common Startup
    2014-07-08 15:31:20 - from the following registry location...
    2014-07-08 15:31:20 - SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders
    2014-07-08 15:31:20 - The value is...
    2014-07-08 15:31:20 - C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup
    2014-07-08 15:31:20 - Trying to remove the startup task if there is any.
    2014-07-08 15:31:20 - C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup\SharePointServerPreparationToolStartup_0FF1CE14-0000-0000-0000-000000000000.cmd
    2014-07-08 15:31:20 - Error: Startup task doesn't exist. This is not a continuation after a restart.
    2014-07-08 15:31:20 - Locating the following command line arguments file:
    2014-07-08 15:31:20 - C:\Program Files (x86)\MSECache\SharePoint2010\PrerequisiteInstaller.Arguments.txt
    2014-07-08 15:31:20 - Error: This file does not exist
    2014-07-08 15:31:20 - Details of the current operating system:
    2014-07-08 15:31:20 - Major version number of the operating system:  (6)
    2014-07-08 15:31:20 - Minor version number of the operating system:  (2)
    2014-07-08 15:31:20 - Build number of the operating system:  (0X23F0=9200)
    2014-07-08 15:31:20 - Major version number of the latest Service Pack:  (0)
    2014-07-08 15:31:20 - Minor version number of the latest Service Pack:  (0)
    2014-07-08 15:31:20 - Platform ID of the operating system:  (2)
    2014-07-08 15:31:20 - Product suites available on the operating system:  (0X110=272)
    2014-07-08 15:31:20 - Product type of the operating system: VER_NT_DOMAIN_CONROLLER
    2014-07-08 15:31:20 - Product type:  (7)
    2014-07-08 15:31:20 - OS type:  (0)
    2014-07-08 15:31:20 - Configuring the application's property sheet...
    2014-07-08 15:31:20 - Check whether the following prerequisite is installed:
    2014-07-08 15:31:20 - Windows Management Framework 3.0
    2014-07-08 15:31:20 - Reading the following string value/name...
    2014-07-08 15:31:20 - PowerShellVersion
    2014-07-08 15:31:20 - from the following registry location...
    2014-07-08 15:31:20 - SOFTWARE\Microsoft\PowerShell\3\PowerShellEngine
    2014-07-08 15:31:20 - The value is...
    2014-07-08 15:31:20 - 4.0
    2014-07-08 15:31:20 - A higher version of the prerequisite above is already installed
    2014-07-08 15:31:20 - Check whether the following prerequisite is installed:
    2014-07-08 15:31:20 - Microsoft .NET Framework 4.5
    2014-07-08 15:31:20 - Reading the following DWORD value/name...
    2014-07-08 15:31:20 - Install
    2014-07-08 15:31:20 - from the following registry location...
    2014-07-08 15:31:20 - SOFTWARE\Microsoft\Net Framework Setup\NDP\V4\full
    2014-07-08 15:31:20 - The value is (1)
    2014-07-08 15:31:20 - Reading the following string value/name...
    2014-07-08 15:31:20 - Version
    2014-07-08 15:31:20 - from the following registry location...
    2014-07-08 15:31:20 - SOFTWARE\Microsoft\Net Framework Setup\NDP\V4\full
    2014-07-08 15:31:20 - The value is...
    2014-07-08 15:31:20 - 4.5.51641
    2014-07-08 15:31:20 - A post release .NET 4.5 is installed
    2014-07-08 15:31:20 - Check whether the following prerequisite is installed:
    2014-07-08 15:31:20 - Windows Identity Foundation (KB974405)
    2014-07-08 15:31:20 - Reading the following string value/name...
    2014-07-08 15:31:20 -
    2014-07-08 15:31:20 - from the following registry location...
    2014-07-08 15:31:20 - SOFTWARE\Microsoft\Windows Identity Foundation\Setup\v3.5
    2014-07-08 15:31:20 - The value is...
    2014-07-08 15:31:20 - 6.1.7600.0
    2014-07-08 15:31:20 - The prerequisite above is already installed
    2014-07-08 15:31:20 - Check whether the following prerequisite is installed:
    2014-07-08 15:31:20 - Microsoft Sync Framework Runtime v1.0 SP1 (x64)
    2014-07-08 15:31:20 - Reading version of the following file...
    2014-07-08 15:31:20 - C:\Windows\assembly\GAC_MSIL\Microsoft.Synchronization\1.0.0.0__89845dcd8080cc91\Microsoft.Synchronization.dll
    2014-07-08 15:31:20 - The version is...
    2014-07-08 15:31:20 - 1.0.3010.0
    2014-07-08 15:31:20 - The prerequisite above is already installed
    2014-07-08 15:31:20 - Check whether the following prerequisite is installed:
    2014-07-08 15:31:20 - Microsoft SQL Server 2008 R2 SP1 Native Client
    2014-07-08 15:31:20 - Reading the following string value/name...
    2014-07-08 15:31:20 - Version
    2014-07-08 15:31:20 - from the following registry location...
    2014-07-08 15:31:20 - SOFTWARE\Microsoft\Microsoft SQL Server\SQLNCLI10\CurrentVersion
    2014-07-08 15:31:20 - The value is...
    2014-07-08 15:31:20 - 10.51.2500.0
    2014-07-08 15:31:20 - A higher version of the prerequisite above is already installed
    2014-07-08 15:31:20 - Check whether the following prerequisite is installed:
    2014-07-08 15:31:20 - Windows Server AppFabric
    2014-07-08 15:31:20 - Reading the following string value/name...
    2014-07-08 15:31:20 - ProductVersion
    2014-07-08 15:31:20 - from the following registry location...
    2014-07-08 15:31:20 - SOFTWARE\Microsoft\AppFabric\V1.0
    2014-07-08 15:31:20 - The value is...
    2014-07-08 15:31:20 - 1.1.2106.32
    2014-07-08 15:31:20 - Reading the following string value/name...
    2014-07-08 15:31:20 - ProductVersion
    2014-07-08 15:31:20 - from the following registry location...
    2014-07-08 15:31:20 - SOFTWARE\Microsoft\AppFabric\V1.0
    2014-07-08 15:31:20 - The value is...
    2014-07-08 15:31:20 - 1.1.2106.32
    2014-07-08 15:31:20 - Reading the following string value/name...
    2014-07-08 15:31:20 - ProductVersion
    2014-07-08 15:31:20 - from the following registry location...
    2014-07-08 15:31:20 - SOFTWARE\Microsoft\AppFabric\V1.0
    2014-07-08 15:31:20 - The value is...
    2014-07-08 15:31:20 - 1.1.2106.32
    2014-07-08 15:31:20 - Reading the following DWORD value/name...
    2014-07-08 15:31:20 - DCC
    2014-07-08 15:31:20 - from the following registry location...
    2014-07-08 15:31:20 - SOFTWARE\Microsoft\AppFabric\V1.0\Features
    2014-07-08 15:31:20 - The value is (1)
    2014-07-08 15:31:20 - CacheClient is Installed.
    2014-07-08 15:31:20 - Reading the following DWORD value/name...
    2014-07-08 15:31:20 - DCS
    2014-07-08 15:31:20 - from the following registry location...
    2014-07-08 15:31:20 - SOFTWARE\Microsoft\AppFabric\V1.0\Features
    2014-07-08 15:31:20 - The value is (1)
    2014-07-08 15:31:20 - CacheService is Installed.
    2014-07-08 15:31:20 - Reading the following DWORD value/name...
    2014-07-08 15:31:20 - DCA
    2014-07-08 15:31:20 - from the following registry location...
    2014-07-08 15:31:20 - SOFTWARE\Microsoft\AppFabric\V1.0\Features
    2014-07-08 15:31:20 - The value is (1)
    2014-07-08 15:31:20 - CacheAdmin is Installed.
    2014-07-08 15:31:20 - The prerequisite above is already installed
    2014-07-08 15:31:20 - Check whether the following prerequisite is installed:
    2014-07-08 15:31:20 - Windows Identity Foundation (KB974405)
    2014-07-08 15:31:20 - Reading the following string value/name...
    2014-07-08 15:31:20 -
    2014-07-08 15:31:20 - from the following registry location...
    2014-07-08 15:31:20 - SOFTWARE\Microsoft\Microsoft Identity Extensions\Setup\1.0
    2014-07-08 15:31:20 - The value is...
    2014-07-08 15:31:20 - 2.0.1459.0
    2014-07-08 15:31:20 - A higher version of the prerequisite above is already installed
    2014-07-08 15:31:20 - Check whether the following prerequisite is installed:
    2014-07-08 15:31:20 - Microsoft Information Protection and Control Client
    2014-07-08 15:31:20 - Reading the following string value/name...
    2014-07-08 15:31:20 -
    2014-07-08 15:31:20 - from the following registry location...
    2014-07-08 15:31:20 - SOFTWARE\Microsoft\MSIPC\CurrentVersion
    2014-07-08 15:31:20 - The value is...
    2014-07-08 15:31:20 - 1.0.621.117
    2014-07-08 15:31:20 - A higher version of the prerequisite above is already installed
    2014-07-08 15:31:20 - Check whether the following prerequisite is installed:
    2014-07-08 15:31:20 - Microsoft WCF Data Services 5.0
    2014-07-08 15:31:20 - Reading the following string value/name...
    2014-07-08 15:31:20 - Version
    2014-07-08 15:31:20 - from the following registry location...
    2014-07-08 15:31:20 - SOFTWARE\Wow6432Node\Microsoft\Microsoft WCF Data Services\5.0
    2014-07-08 15:31:20 - Check whether the following prerequisite is installed:
    2014-07-08 15:31:20 - Cumulative Update Package 1 for Microsoft AppFabric 1.1 for Windows Server (KB2671763)
    2014-07-08 15:31:20 - Reading the following DWORD value/name...
    2014-07-08 15:31:20 - IsInstalled
    2014-07-08 15:31:20 - from the following registry location...
    2014-07-08 15:31:20 - SOFTWARE\Wow6432Node\Microsoft\Updates\AppFabric 1.1 for Windows Server\KB2671763
    2014-07-08 15:31:20 - The value is (1)
    2014-07-08 15:31:20 - The prerequisite above is already installed
    2014-07-08 15:31:23 - Beginning download/installation
    2014-07-08 15:31:23 - Created thread for installer
    2014-07-08 15:31:23 - "C:\Windows\system32\ServerManagerCmd.exe" -inputpath "C:\Users\ADMINI~1.HTL\AppData\Local\Temp\2\Pre1B5C.tmp.XML"
    2014-07-08 15:31:23 - Error: Unable to install (2)
    2014-07-08 15:31:23 - Error: [In HRESULT format] (-2147024894)
    2014-07-08 15:31:23 - Last return code (2)
    2014-07-08 15:31:23 - Reading the following DWORD value/name...
    2014-07-08 15:31:23 - Flags
    2014-07-08 15:31:23 - from the following registry location...
    2014-07-08 15:31:23 - SOFTWARE\Microsoft\Updates\UpdateExeVolatile
    2014-07-08 15:31:23 - Reading the following string value/name...
    2014-07-08 15:31:23 - PendingFileRenameOperations
    2014-07-08 15:31:23 - from the following registry location...
    2014-07-08 15:31:23 - SYSTEM\CurrentControlSet\Control\Session Manager
    2014-07-08 15:31:23 - Reading the following registry location...
    2014-07-08 15:31:23 - SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\Auto Update\RebootRequired
    2014-07-08 15:31:23 - Error: The tool was unable to install Application Server Role, Web Server (IIS) Role.
    2014-07-08 15:31:23 - Last return code (2)
    2014-07-08 15:31:23 - Options for further diagnostics: 1. Look up the return code value 2. Download the prerequisite manually and verify size downloaded by the prerequisite installer. 3. Install the prerequisite manually from the given location without any
    command line options.
    2014-07-08 15:31:23 - Cannot retry
    2014-07-08 15:31:23 - Check whether the following prerequisite is installed:
    2014-07-08 15:31:23 - Windows Management Framework 3.0
    2014-07-08 15:31:23 - Reading the following string value/name...
    2014-07-08 15:31:23 - PowerShellVersion
    2014-07-08 15:31:23 - from the following registry location...
    2014-07-08 15:31:23 - SOFTWARE\Microsoft\PowerShell\3\PowerShellEngine
    2014-07-08 15:31:23 - The value is...
    2014-07-08 15:31:23 - 4.0
    2014-07-08 15:31:23 - A higher version of the prerequisite above is already installed
    2014-07-08 15:31:23 - Check whether the following prerequisite is installed:
    2014-07-08 15:31:23 - Microsoft .NET Framework 4.5
    2014-07-08 15:31:23 - Reading the following DWORD value/name...
    2014-07-08 15:31:23 - Install
    2014-07-08 15:31:23 - from the following registry location...
    2014-07-08 15:31:23 - SOFTWARE\Microsoft\Net Framework Setup\NDP\V4\full
    2014-07-08 15:31:23 - The value is (1)
    2014-07-08 15:31:23 - Reading the following string value/name...
    2014-07-08 15:31:23 - Version
    2014-07-08 15:31:23 - from the following registry location...
    2014-07-08 15:31:23 - SOFTWARE\Microsoft\Net Framework Setup\NDP\V4\full
    2014-07-08 15:31:23 - The value is...
    2014-07-08 15:31:23 - 4.5.51641
    2014-07-08 15:31:23 - A post release .NET 4.5 is installed
    2014-07-08 15:31:23 - Check whether the following prerequisite is installed:
    2014-07-08 15:31:23 - Windows Identity Foundation (KB974405)
    2014-07-08 15:31:23 - Reading the following string value/name...
    2014-07-08 15:31:23 -
    2014-07-08 15:31:23 - from the following registry location...
    2014-07-08 15:31:23 - SOFTWARE\Microsoft\Windows Identity Foundation\Setup\v3.5
    2014-07-08 15:31:23 - The value is...
    2014-07-08 15:31:23 - 6.1.7600.0
    2014-07-08 15:31:23 - The prerequisite above is already installed
    2014-07-08 15:31:23 - Check whether the following prerequisite is installed:
    2014-07-08 15:31:23 - Microsoft Sync Framework Runtime v1.0 SP1 (x64)
    2014-07-08 15:31:23 - Reading version of the following file...
    2014-07-08 15:31:23 - C:\Windows\assembly\GAC_MSIL\Microsoft.Synchronization\1.0.0.0__89845dcd8080cc91\Microsoft.Synchronization.dll
    2014-07-08 15:31:23 - The version is...
    2014-07-08 15:31:23 - 1.0.3010.0
    2014-07-08 15:31:23 - The prerequisite above is already installed
    2014-07-08 15:31:23 - Check whether the following prerequisite is installed:
    2014-07-08 15:31:23 - Microsoft SQL Server 2008 R2 SP1 Native Client
    2014-07-08 15:31:23 - Reading the following string value/name...
    2014-07-08 15:31:23 - Version
    2014-07-08 15:31:23 - from the following registry location...
    2014-07-08 15:31:23 - SOFTWARE\Microsoft\Microsoft SQL Server\SQLNCLI10\CurrentVersion
    2014-07-08 15:31:23 - The value is...
    2014-07-08 15:31:23 - 10.51.2500.0
    2014-07-08 15:31:23 - A higher version of the prerequisite above is already installed
    2014-07-08 15:31:23 - Check whether the following prerequisite is installed:
    2014-07-08 15:31:23 - Windows Server AppFabric
    2014-07-08 15:31:23 - Reading the following string value/name...
    2014-07-08 15:31:23 - ProductVersion
    2014-07-08 15:31:23 - from the following registry location...
    2014-07-08 15:31:23 - SOFTWARE\Microsoft\AppFabric\V1.0
    2014-07-08 15:31:23 - The value is...
    2014-07-08 15:31:23 - 1.1.2106.32
    2014-07-08 15:31:23 - Reading the following string value/name...
    2014-07-08 15:31:23 - ProductVersion
    2014-07-08 15:31:23 - from the following registry location...
    2014-07-08 15:31:23 - SOFTWARE\Microsoft\AppFabric\V1.0
    2014-07-08 15:31:23 - The value is...
    2014-07-08 15:31:23 - 1.1.2106.32
    2014-07-08 15:31:23 - Reading the following string value/name...
    2014-07-08 15:31:23 - ProductVersion
    2014-07-08 15:31:23 - from the following registry location...
    2014-07-08 15:31:23 - SOFTWARE\Microsoft\AppFabric\V1.0
    2014-07-08 15:31:23 - The value is...
    2014-07-08 15:31:23 - 1.1.2106.32
    2014-07-08 15:31:23 - Reading the following DWORD value/name...
    2014-07-08 15:31:23 - DCC
    2014-07-08 15:31:23 - from the following registry location...
    2014-07-08 15:31:23 - SOFTWARE\Microsoft\AppFabric\V1.0\Features
    2014-07-08 15:31:23 - The value is (1)
    2014-07-08 15:31:23 - CacheClient is Installed.
    2014-07-08 15:31:23 - Reading the following DWORD value/name...
    2014-07-08 15:31:23 - DCS
    2014-07-08 15:31:23 - from the following registry location...
    2014-07-08 15:31:23 - SOFTWARE\Microsoft\AppFabric\V1.0\Features
    2014-07-08 15:31:23 - The value is (1)
    2014-07-08 15:31:23 - CacheService is Installed.
    2014-07-08 15:31:23 - Reading the following DWORD value/name...
    2014-07-08 15:31:23 - DCA
    2014-07-08 15:31:23 - from the following registry location...
    2014-07-08 15:31:23 - SOFTWARE\Microsoft\AppFabric\V1.0\Features
    2014-07-08 15:31:23 - The value is (1)
    2014-07-08 15:31:23 - CacheAdmin is Installed.
    2014-07-08 15:31:23 - The prerequisite above is already installed
    2014-07-08 15:31:23 - Check whether the following prerequisite is installed:
    2014-07-08 15:31:23 - Windows Identity Foundation (KB974405)
    2014-07-08 15:31:23 - Reading the following string value/name...
    2014-07-08 15:31:23 -
    2014-07-08 15:31:23 - from the following registry location...
    2014-07-08 15:31:23 - SOFTWARE\Microsoft\Microsoft Identity Extensions\Setup\1.0
    2014-07-08 15:31:23 - The value is...
    2014-07-08 15:31:23 - 2.0.1459.0
    2014-07-08 15:31:23 - A higher version of the prerequisite above is already installed
    2014-07-08 15:31:23 - Check whether the following prerequisite is installed:
    2014-07-08 15:31:23 - Microsoft Information Protection and Control Client
    2014-07-08 15:31:23 - Reading the following string value/name...
    2014-07-08 15:31:23 -
    2014-07-08 15:31:23 - from the following registry location...
    2014-07-08 15:31:23 - SOFTWARE\Microsoft\MSIPC\CurrentVersion
    2014-07-08 15:31:23 - The value is...
    2014-07-08 15:31:23 - 1.0.621.117
    2014-07-08 15:31:23 - A higher version of the prerequisite above is already installed
    2014-07-08 15:31:23 - Check whether the following prerequisite is installed:
    2014-07-08 15:31:23 - Microsoft WCF Data Services 5.0
    2014-07-08 15:31:23 - Reading the following string value/name...
    2014-07-08 15:31:23 - Version
    2014-07-08 15:31:23 - from the following registry location...
    2014-07-08 15:31:23 - SOFTWARE\Wow6432Node\Microsoft\Microsoft WCF Data Services\5.0
    2014-07-08 15:31:23 - Check whether the following prerequisite is installed:
    2014-07-08 15:31:23 - Cumulative Update Package 1 for Microsoft AppFabric 1.1 for Windows Server (KB2671763)
    2014-07-08 15:31:23 - Reading the following DWORD value/name...
    2014-07-08 15:31:23 - IsInstalled
    2014-07-08 15:31:23 - from the following registry location...
    2014-07-08 15:31:23 - SOFTWARE\Wow6432Node\Microsoft\Updates\AppFabric 1.1 for Windows Server\KB2671763
    2014-07-08 15:31:23 - The value is (1)
    2014-07-08 15:31:23 - The prerequisite above is already installed
    2014-07-08 15:31:26 - Opening log file
    2014-07-08 15:31:26 - Opened action for user
    2014-07-08 15:31:26 - C:\Users\ADMINI~1.HTL\AppData\Local\Temp\2\prerequisiteinstaller.2014.07.08-15.31.20.log

    SharePoint is not supported to be installed on a Domain Controller (see http://support.microsoft.com/kb/2764086). You'll need to find another server.
    But regardless, with SharePoint 2013, you need SharePoint 2013 with SP1 in order to install on Server 2012 R2.
    http://www.microsoft.com/en-us/download/details.aspx?id=42039
    Trevor Seward
    Follow or contact me at...
    &nbsp&nbsp
    This post is my own opinion and does not necessarily reflect the opinion or view of Microsoft, its employees, or other MVPs.

  • Temp Tables space problem with ORA-01114 and  ORA-27072:

    RDBMS :Oracle:9.2.0
    OS: Linux AS3
    Storage: SAND arrray (RAID 5)
    Problem on exeuting dml statement
    SQL> select * from myview ;
    select * from myview
    ERROR at line 1:
    ORA-01114: IO error writing block to file 201 (block # 3977)
    ORA-27072: skgfdisp: I/O error
    Linux Error: 28: No space left on device
    Additional information: 3976
    ORA-01114: IO error writing block to file 201 (block # 3977)
    ORA-27072: skgfdisp: I/O error
    Linux Error: 28: No space left on device
    Additional information: 3976
    With Regards
    Joy

    Hello joy,
    So, still looking for solution. I suggest you a sloution and it works well only if as you mentioned (in your previous post) that file causing error is temp file. So, get rid of this better you create new temporary table space and drop old one and then delete the old files manually.
    But this will work only for Temp Tablespace not for normal tablespaces and datafiles. Prepare new temporary tablespace at different location from the previous one, try to make it on different disk beacuse it may be due to corruption of physical medium too.
    Try this. If it works... you are through... otherwise i have no other options...
    Please update.....

Maybe you are looking for

  • Can't print PDFs after Snow Leopard

    Can't print any PDFs, no matter where they're opened (Preview, Safari, whatever) in neither of our 2 networked (via LPD) HP Laserjet 3005 printers. Another guy here is having the same problem. You open the PDF, hit Print, it shows you the preview but

  • IPod Nano 5th Gen memory issues?

    Hello. My iPod Nano 5th gen is great, and I've been able to use it for 2 years now, and it serves me well. Perfect condition since the day I got it. However, there are some memory issues... First off, I have only two recorded videos totaling 1 minute

  • "The HP Deskjet 3050 J610 series was not found." Can't scan with wireless printer to desktop. Help

    Our new wireless printer will not scan.  I have tried to scan from the computer and get the below error message and then I have activated the scan from printer and when I push the scan button on the printer, I get the same error message.  Thanks! Pro

  • Restriction on KPI's in PMS

    Dear All, I am developing  PMS Form using T-code Phap_catalog. I wish to restrict the values and apply limits on the determinant value. For Example Value entered against a certain KPI will have a resultant determinant ( value) that should not be less

  • Log() not completing the execution

    Hi, The problem is illustrated below : SQL*Plus: Release 9.2.0.4.0 - Production on Mon Aug 20 12:44:29 2007 Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved. Connected to: Oracle9i Enterprise Edition Release 9.2.0.4.0 - Production Wi