Inserting data object types

Hello
I have the table according to object type and person in charge:
create object type dimensions
area number,
volume number,
weight number;

create table objects
id number,
color varchar2(10),
shape varchar2(10),
dim dimensions,
date_added date;
I want to insert values only in id, color, brightness. I added the following to my code,
insert into object (id, color, dim(area,number,weight)) values(3, 'red', dimensions(12, 34, 5));
It gives me the following error:
PL/SQL: ORA-00917: missing comma
Thank you.
SQL>  create or replace type dimensions as object(
 area number,
 volume number,
 weight number
);
/
Type created.

SQL>  create table objects (
 id number,
 color varchar2(10),
 shape varchar2(10),
 dim dimensions,
 date_added date
)
/
Table created.

SQL>  insert into objects (id, color, dim) values(3, 'red', dimensions(12, 34, 5))
/
1 row created.

Tags: Database

Similar Questions

  • Lack the Menu "insert > Data Objects > Recordset Paging > Recordset Navigation bar.

    Hi all

    I pointed out the following tutorial.

    Build your first dynamic site - part 2: development of the back-end. Adobe Developer Connection


    In this tutorial is a section to add a record set navigation bar. I am unable to find this menu item.

    Insert > data objects > Recordset Paging > Recordset Navigation bar.


    image of Tutorial.PNG

    Did I miss an add on?

    Thank you

    Badri

    This tutorial was written five years ago for Dreamweaver CS5. It is no longer relevant. The feature has been removed from Dreamweaver.

  • Cannot insert data of type string/xml in table

    I am able to read the xml through utl_file. String, but I am not able to the same insert into the table through DBMS_XMLSTORE

    CDSL_UPLOAD is the download directory
    CDSL is the username

    PL, let myself be guided if something wrong with the following script

    SCRIPT OF THE TRIAL. XML FILE

    <? XML version = "1.0"? >
    < metadata >
    -zip codes >
    -< mappings Record = "4" >
    CA < STATE_ABBREVIATION > < / STATE_ABBREVIATION >
    < ZIPCODE > 94301 < / code >
    < / maps >
    -< mappings Record = "5" >
    < STATE_ABBREVIATION > CO < / STATE_ABBREVIATION >
    < ZIPCODE > 80323 < / code >
    < ZIP_CODE_EXTN > 9277 < / ZIP_CODE_EXTN >
    < / maps >
    < / zip codes >
    < / metadata >



    CREATE TABLE TRIALZIPCODES
    (
    STATE_ABBR VARCHAR2 (20) NOT NULL
    NUMBER ZIP_CODE (10, 0) NOT NULL
    , ZIP_CODE_EXT VARCHAR2 (20)
    );


    create or replace PROCEDURE first INSTANCE AS
    BEGIN
    DECLARE
    -declaring attributes

    charString varchar2 (80);
    finalStr varchar2 (4000): = null;
    whole rowsp;
    v_FileHandle UTL_FILE. TYPE_DE_FICHIER;
    l_context_handle dbms_xmlgen.ctxHandle;
    insCtx DBMS_XMLStore.ctxType;
    DNAME varchar2 (20);
    Start
    dnom: = "CDSL_UPLOAD";

    -DBMS_XMLGEN.setRowTag (ctx IN ctxHandle, rowTag IN VARCHAR2);
    -DBMS_XMLGEN.setRowSetTag (ctx IN ctxHandle, rowSetTag IN VARCHAR2);
    -the name of the table specified in our DTD
    DBMS_XMLGEN. SETROWSETTAG ("l_context_handle,'s postal Code");
    -the name of the data set as shown in our DTD
    DBMS_xmlgen.setRowTag (l_context_handle, 'mappings');
    -to get the result on the screen
    dbms_output. Enable (1000000);
    -Open the XML document in read-only mode
    v_FileHandle: = utl_file.fopen (dname, 'trial.xml', 'r');

    loop

    BEGIN

    UTL_FILE.get_line (v_FileHandle, charString);
    exception
    When no_data_found then
    UTL_FILE.fclose (v_FileHandle);
    "exit";

    END;
    dbms_output.put_line (charstring);
    If finalStr is not null then
    finalStr: = finalStr | charString;
    on the other
    finalStr: = charString.
    end if;
    end loop;
    -for the insertion of XML data in the table
    insCtx: = DBMS_XMLSTORE. NEWCONTEXT('CDSL.) TRIALZIPCODES');
    insCtx: = DBMS_XMLSTORE. INSERTXML (insCtx, finalStr); --ALSO FAILED HERE
    dbms_output.put_line ('INSERT FACT' |) To_char (rowsp));
    DBMS_XMLStore.closeContext (insCtx);
    END;

    TRIAL END;

    Procedure returns the following error
    ORA-031011 XML parsing failed
    ORA-19202 error has occurred in the processing of xml
    LPX-00222 error returned to the SAX callback function
    ORA-06512 at SYS. XMLSTORE 70 line
    ORA-06512 CDSL. FIRST line 47
    ORA-06512 line 2

    PL I want to know what is the problem with the above script

    Thank you
    Vishal

    Indeed a few questions:

    (1) I don't see what possible use of this part:

    -- DBMS_XMLGEN.setRowTag ( ctx IN ctxHandle, rowTag IN VARCHAR2);
    -- DBMS_XMLGEN.setRowSetTag ( ctx IN ctxHandle, rowSetTag IN VARCHAR2);
    -- the name of the table as specified in our DTD
    DBMS_XMLGEN.SETROWSETTAG(l_context_handle,'zipcode s');
    -- the name of the data set as specified in our DTD
    DBMS_xmlgen.setRowTag(l_context_handle,'mappings') ;
    

    (2) not really a problem, but do not use UTL_FILE to read XML files. Oracle already provides the practice of methods or procedures to read XML efficiently with an call (see examples below).

    (3) in order to use the DBMS_XMLSTORE, the names of XML elements must match the columns in the table exactly, which is not the case here. If you cannot change the structure of the XML or the structure of the table to get an exact match, you can pre-process the file (with XSLT, for example).

    So, below is an example of using DBMS_XMLSTORE and an alternative with XMLTable that offers more flexibility:

    SQL> CREATE TABLE TRIALZIPCODES (
      2    STATE_ABBREVIATION VARCHAR2(20) NOT NULL
      3  , ZIPCODE NUMBER(10, 0) NOT NULL
      4  , ZIP_CODE_EXTN VARCHAR2(20)
      5  );
    
    Table created
    
    SQL> set serveroutput on
    SQL> DECLARE
      2
      3   xmldoc   clob;
      4   insCtx   DBMS_XMLStore.ctxType;
      5   dname    varchar2(20) := 'TEST_DIR';
      6   numrows  number;
      7
      8  BEGIN
      9
     10   xmldoc := dbms_xslprocessor.read2clob(dname, 'trial.xml');
     11
     12   insCtx := DBMS_XMLStore.newContext('TRIALZIPCODES');
     13   DBMS_XMLStore.setRowTag(insCtx, 'mappings');
     14   numrows := DBMS_XMLStore.insertXML(insCtx, xmldoc);
     15
     16   dbms_output.put_line('INSERT DONE '||TO_CHAR(numrows));
     17
     18   DBMS_XMLStore.closeContext(insCtx);
     19
     20  END;
     21  /
    
    INSERT DONE 2
    
    PL/SQL procedure successfully completed
    
    SQL> select * from trialzipcodes;
    
    STATE_ABBREVIATION       ZIPCODE ZIP_CODE_EXTN
    -------------------- ----------- --------------------
    CA                         94301
    CO                         80323 9277
     
    

    Or,

    SQL> select *
      2  from xmltable('/metadata/Zipcodes/mappings'
      3         passing xmltype(bfilename('TEST_DIR', 'trial.xml'), nls_charset_id('AL32UTF8'))
      4         columns state_abbr    varchar2(20) path 'STATE_ABBREVIATION'
      5               , zip_code      number(10)   path 'ZIPCODE'
      6               , zip_code_ext  varchar2(20) path 'ZIP_CODE_EXTN'
      7       )
      8  ;
    
    STATE_ABBR              ZIP_CODE ZIP_CODE_EXT
    -------------------- ----------- --------------------
    CA                         94301
    CO                         80323 9277
     
    
  • Inserting data in several related tables using the database

    Hello world
    I'm working on a BPM application using Oracle BPM 11.1.1.5.0 and JDeveloper 11.1.1.5.0.

    In my database, I have two tables, loan and guarantee that are related by a field named employeeID (PK on loan) and FK in warranty.
    Each line can have several lines of guarantee.

    At this point, I'm doing an entry form for the user to insert data in the two tables.

    I did successfully before with a single table that has no relations.

    The way I'm doing here is, after the creation of the database successfully adapter, a type of LoanCollection is created in the types module, which can be used to create business objects and data objects of.

    The problem is when I create an object of type loanCollection process data and then create a UI generated automatically on that basis, only the fields in the primary table (the Table of loan) appear in the form.
    On the other hand, if I create a business object based on the LoanSchema, the form for all of the two tables is created automatically (the loan as a form, the guarantee in a table), but then, when I try to access it in the section processing service mission which calls the database adapter, I have no access to such.
    In fact, the only type which can be used in the service task is the process based on the loanCollection data object.

    To summorize, I have to use the type of business for my UI object to include all the fields in both tables, so I have to use the data object from the collection process in the transformation of service task dialog box.
    And I can't find a way to map to another.

    Can someone help me with this please?
    Thank you very much

    Try to follow these steps.

    1. create a new module in your catalogue our BPM project management section
    2. in this new module create 3 Business Objects - (LoanBusinessObject, GuaranteeBusinessObject and GuaranteeArrayBusinessObject)
    3. Add the attributes appropriate to the LoanBusinessObject and the GuaranteeBusinessObject so that they mimic your database tables, then to the GuaranteeArrayBusinessObject add an array of type attribute GuraranteeBusinessObject
    4. now you need to create two process data objects, type loanProcessObject LoanBusinessObject and type guaranteesProcessObject GuaranteeArrayBusinessObject
    5. as inputs to your human task adds the loanProcessObject and guaranteesProcessObject, these should now be available in your data controls and can be used to auto generate the form
    6. in your dbadapter you'll then use XSL Transformation and use for each so that it will write the data to the ready table and all the line items of warranty for the warranty table.

  • in DW CC data objects

    How can I "Insert record" in CC?

    Normally, it should be in "insert" - "data objects" - "insert record", but in the version CC in the dropdown menu, there is no "data object".

    These functions have been removed from a PRAB.

    You can get more back by enabling the extension of the inheritance, or buy a third party extension...

    http://helpx.Adobe.com/x-productkb/policy-pricing/Dreamweaver-CC-Server-Extensions.html

    Or, as a CC subscriber, you can download and install DWCS6 (both may be installed at the same time, they just does not work at the same time) for free: http://helpx.adobe.com/creative-cloud/kb/download-previous-versions-creative-applications. html which keeps the features of the server.

  • How to return data using the object type?

    Hello all - I have an obligation to return the values object type.

    In the same way as

    list - Plan1, Subplan1, Fund1, 2 Fund Fund 3

    list - Plan2, Subplan2, Fund2

    list - plane3, Subplan3, not funds


    To achieve this I wrote below proc but its giving as response below which is does not correspond with my requirement. Someone has an idea how to write code to get the list of funds against each plan in each line?



    Output:

    PDB01. () T_T_CONTRACT

    PDB01. T_O_CONTRACT ('p1', 's1', PDB01. T_O_FUND ('p1', 's1', 'f1')),

    PDB01. T_O_CONTRACT ('p1', 's1', PDB01. T_O_FUND ('p1', 's1', 'f2')),

    PDB01. T_O_CONTRACT ('p1', 's1', PDB01. T_O_FUND ('p1', 's1', 'f3')),

    PDB01. T_O_CONTRACT ('p2', 's2', PDB01. T_O_FUND ('p2', 's2', 'f2')),

    PDB01. T_O_CONTRACT ('p3', 's3', PDB01. T_O_FUND (NULL, NULL, NULL))

    )




    DROP TYPE T_T_fund;

    create or replace

    TYPE T_O_fund

    AS OBJECT)

    argument plan_id Varchar2 (128).

    subplan_id Varchar2 (128).

    fund_id Varchar2 (128)

    )

    No final;

    /

    create or replace

    type T_T_FUND

    as the table of T_O_FUND;

    /

    type of projection T_T_CONTRACT;

    create or replace

    TYPE T_O_contract

    AS OBJECT)

    argument plan_id Varchar2 (128).

    SUBPLAN_ID varchar2 (128).

    ov_fund T_o_fund

    )

    no final;

    /

    create or replace

    type T_t_contract as the T_O_contract table;

    /

    -------------------------

    / * Remove T_T_FUND;

    DROP TYPE T_O_fund;

    type of projection T_T_CONTRACT;

    DROP TYPE T_O_contract; * /

    ----------------

    create or replace

    procedure test_cursor (o_c1 OUT sys_refcursor) is

    V_T_T_FUND T_T_FUND;

    v_T_t_contract T_t_contract;

    Start

    WITH (CONTRACTS AS

    SELECT "p1" PLAN_ID, "s1" SUBPLAN_ID FROM DUAL UNION ALL

    SELECT "p2" PLAN_ID, 's2' SUBPLAN_ID FROM DUAL UNION ALL

    SELECT "p3" PLAN_ID, 's3' SUBPLAN_ID FROM DUAL

    ),

    Fund)

    Select "p1" PLAN_ID, SUBPLAN_ID 's1', 'f1' FUND_ID of all the DOUBLE union

    Select "p1" PLAN_ID, SUBPLAN_ID 's1', 'f2' FUND_ID of all the DOUBLE union

    Select plan_id "p1", "s1" subplan_id argument, "f3" fund_id Union double all the

    Select the argument plan_id 'p2', 's2' subplan_id, 'f2' double fund_id

    )

    Select T_O_contract (c.PLAN_ID, c.SUBPLAN_ID, T_o_FUND (f.PLAN_ID, f.SUBPLAN_ID, f.FUND_ID))

    TO COLLECT FEES IN BULK

    in v_T_t_contract

    c CONTRACTS, FUND F

    where C.PLAN_ID = F.PLAN_ID

    and c.SUBPLAN_ID = f.SUBPLAN_ID (+);

    Open the O_C1 for

    SELECT 't' TYP, v_T_t_contract contract_LST

    FROM DUAL;

    end;

    /

    impression o_test

    You can declare the attribute OV_FUND as T_T_FUND data type:

    create or replace type t_o_contract as object (
      plan_id     varchar2(128)
    , subplan_id  varchar2(128)
    , ov_fund     t_t_fund
    );
    /
    

    You will be able to do this:

    with contracts as (
      select 'p1' plan_id, 's1' subplan_id from dual union all
      select 'p2' plan_id, 's2' subplan_id from dual union all
      select 'p3' plan_id, 's3' subplan_id from dual
    ),
    funds as (
      select 'p1' plan_id , 's1' subplan_id, 'f1' fund_id from dual union all
      select 'p1' plan_id , 's1' subplan_id, 'f2' fund_id from dual union all
      select 'p1' plan_id , 's1' subplan_id, 'f3' fund_id from dual union all
      select 'p2' plan_id , 's2' subplan_id, 'f2' fund_id from dual
    )
    select t_o_contract(
             c.plan_id
           , c.subplan_id
           , cast(
               multiset(
                 select t_o_fund(f.plan_id, f.subplan_id, f.fund_id)
                 from funds f
                 where f.plan_id = c.plan_id
                 and f.subplan_id = c.subplan_id
               )
               as t_t_fund
             )
           )
    from contracts c ;
    
  • CC of Dreamweaver insert a data object to a recordset navigation bar

    How can I insert a data object of a recordset navigation bar using Dreamweaver CC?  The Insert tab doesn't have a 'data' or 'data subject' to select?

    How is this work now in CC?

    With manual coding.  Or commercial extensions.

    http://www.DMXzone.com/3/Dreamweaver-extensions

    Nancy O.

  • Could not create the domain object type oracle.jbo.domain.Date

    Hello

    I'm getting the following exception in the user interface when I click on submit button (/ commit or any other button) for date fields. I created the default objects entity and notices for the database table. I'm poplating the data after executing the "Execute" operation on the iterator for the view.

    Cannot be created with the value ' 22/09/2009' field object type oracle.jbo.domain.Date. +

    Even if I had not made any changes to the date also fields, it's give the exception message in the user interface and do not return the form.

    Could you please help me to solve the issue.

    Thank you and best regards,

    S R Prasad

    Published by: oumar s Prasad on November 18, 2009 15:01

    Prasad,

    What is your version of JDev? And what technology do you use to model? BC4J? Can you try to change the format of the attribute in the object view? Say with the type of Simple date format and format "mm/dd/yyyy".

    Arun-

  • Insert the object into the table

    Hi all

    I would insert my type of object in a table without specifying the name of the variable.

    That's my bad example:

    create or replace type MY_TYPE_OBJ as object 
    (
      val1 number,
      val2 number,
      val3 number
    );
    /
    
    CREATE TABLE MY_TABLE of MY_TYPE_OBJ;
    /
    
    declare 
        myType   MY_TYPE_OBJ;
    begin
    
      myType := new MY_TYPE_OBJ(1, 2, 3);
    
      insert into MY_TABLE values (myType.val1, myType.val2, myType.val3);
      
    end;
    /
    
    

    As you can see, on my last procedure, I had to use the insert into statement with val1, val2, val3 name filed.

    Is there a quicker way to insert an object into a table? In the production environment of the object type that almost 100 filed is not so friendly to write each one by one.

    Thank you

    Federico

    Example:

    SQL> create or replace type TFoo as object(
      2          attr1   integer,
      3          attr2   varchar2(10),
      4          attr3   date
      5  );
      6  /
    
    Type created.
    
    SQL>
    SQL> create table footab of TFoo(
      2          attr1 primary key,
      3          attr2 not null
      4  ) organization index
      5  /
    
    Table created.
    
    SQL>
    SQL> declare
      2          foo     TFoo;
      3  begin
      4          foo := new TFoo( 1, 'test1', trunc(sysdate) );
      5          insert into footab values foo;
      6  end;
      7  /
    
    PL/SQL procedure successfully completed.
    
    SQL>
    SQL> select * from footab;
    
         ATTR1 ATTR2      ATTR3
    ---------- ---------- -------------------
             1 test1      2014/08/27 00:00:00
    
    SQL>
    

    I agree though - be careful with tables of objects and now their technical implementation and advantages and disadvantages.

  • Inserting data in the nested table

    I explore the differences between the OBJECT and RECORD.

    As I'm still learning, I found that both are structures which essentially brings together different elements of types of different data or columns of data types, one is used in SQL and other is used in PL/SQL, please correct me if I'm wrong in my understanding.

    Below, I am trying to insert data into an array of type object, but I can't can you please help.

    CREATE OR REPLACE type sam as OBJECT
    (
    v1 NUMBER,
    v2 VARCHAR2(20 CHAR)
    );
    
    ---Nested Table---
    create or replace type t_sam as table of sam;
    
    --Inserting data----
    insert into table(t_sam) values(sam(10,'Dsouza'));
    

    Error message:

    Error starting at line 22 in command:
    insert into table(t_sam) values(sam(10,'Dsouza'))
    Error at Command Line:22 Column:13
    Error report:
    SQL Error: ORA-00903: invalid table name
    00903. 00000 -  "invalid table name"
    *Cause:    
    *Action:
    

    Ariean wrote:

    So the only purpose of the equivalent concept of SQL types of nested tables is to use one of the data types when you define an actual table?

    So-you can certainly use more that a simple "set an actual table. (I'm fairly certain that you can pass a table nested within a procedure, for example - try it, though - I'm not 100% sure on that - it just 'logic'.) If you can define a type, you can use it, pass it around, whatever.).

    Ariean wrote:

    And this nested table could be a record in SQL or object in PLSQL or simple data type (varchar number, etc.)?

    Nested tables are just like any other type of custom data. You can create a nested table of other types of data. You can create a custom of nested tables data type.

    Stupidly, he could become... uh, stupid O_0

    CREATE TYPE o_myobj1 AS object ( id1   number, cdate1  date );
    
    CREATE TYPE t_mytype1 AS table of o_myobj1;
    
    CREATE TYPE o_myobj2 AS object ( id2   number,  dumb  t_mytype1 );
    
    CREATE TYPE t_dumber AS table of o_myobj2;
    

    O_0

    OK, my brain is starting to hurt - I hope you get the idea

    Ariean wrote:

    Second is my understanding correct any OBJECT & RECORD?

    I see no benefit to describe another way.

  • Where I'm going wrong with the object Type

    Hello world
    I am trying to insert data into a table using a type of object
    Here is my code
    Please help me where I'm wrong...
    Thank you

    Code for the object. Type
    create or replace type emp_rec_type as object 
    ( empno number
     ,name varchar2(20)
     ,salary number(7,2)
     ,job varchar2(10)
     ,hiredate date
     ,commno number(7,2)
     ,deptno number(4));
     
    Now I want to insert data into the table like this
    begin
      insert into emp5 values(emp_rec_type(5,'jack',1000,'salesman','12-apr-2000',300.00,20));
    end;
    I don't want to create a variable of the object... Initialization type I want to create just to insert the value using the default constructor.

    Concerning
    Prost

    You can create the table of the object:

    create table emp5 of emp_rec_type;
    

    Kind regards
    Sayan M.

  • access to the external table of object type

    It is a continuation of ORA-06564: XXX_DAT_DIR object does not exist I'm hoping a different subject line will attract different people who may be able to help me solve the situation

    The bottom line is that I can't access my external table of in my object.

    Assume that the user is XYZZY. We run a simple nice don't shop here - no roles, just different schemas.

    When I connect to sqlplus to run Access simple external table that works, I connect as XYZZY. ( it works )

    When I connect my type code compile, I connect as XYZZY. ( so far, so good )

    When I connect to run the stored procedure that uses the object type, I connect as XYZZY. ( does not work.  get ORA-06564: there is no error object XXX_DAT_DIR )

    As mentioned above, I've recently logged and re-run all grants to the user XYZZY.

    When I ran the small test which included the role set to none (after replaying all grants), I logged as user XYZZY, and even though this user has grants, the test has failed. ( , it was a test based on an idea that the problem was that the subsidies have been an role, not the user.  Apparently not the problem ).

    Moira

    Published by: user7532421 on July 20, 2010 13:25

    Hello

    I tried the same scenario and it works fine for me (not at all an exception and the data is loaded into the target at the end table).
    I created all the objects (directory, types of objects, outdoor table heaps under the same user):

    Here's what I did:

    -- Under system
    GRANT CREATE ANY DIRECTORY TO hr
    /
    
    --under HR:
    
    CREATE OR REPLACE DIRECTORY
    XXX_DAT_DIR AS 'H:\Temp';
    /
    
    CREATE TABLE X_TABLE_XO
    (
      L1  VARCHAR2(3 BYTE),
      C1  VARCHAR2(3 BYTE),
      C2  VARCHAR2(3 BYTE)
    )
    ORGANIZATION EXTERNAL
      (  TYPE ORACLE_LOADER
         DEFAULT DIRECTORY XXX_DAT_DIR
         ACCESS PARAMETERS
           ( RECORDS DELIMITED BY NEWLINE
           NOBADFILE
           NODISCARDFILE
           NOLOGFILE
           SKIP 0
           FIELDS TERMINATED BY ';'
           MISSING FIELD VALUES ARE NULL
           REJECT ROWS WITH ALL NULL FIELDS
           (
             L1 Char,
             C1 Char,
             C2 Char
           )  )
         LOCATION (XXX_DAT_DIR:'test_ext_Table.txt')
      )
    REJECT LIMIT UNLIMITED
    NOPARALLEL
    NOMONITORING;
    /
    

    Here is an excerpt of my file:

    L1;v1;v2
    L2;v3;v4
    L3;v5;v5
    L4;v6;v6
    

    then:

    
    CREATE TABLE my_table AS SELECT * FROM x_table_xo WHERE ROWNUM<=0
    /
    select column_name,data_type,data_length from user_tab_columns where table_name='MY_TABLE'
    
    COLUMN_NAME,DATA_TYPE,DATA_LENGTH
    L1,VARCHAR2,3
    C1,VARCHAR2,3
    C2,VARCHAR2,3
    

    then (still in HR)

    CREATE OR REPLACE TYPE subloader UNDER dataloader (
       CONSTRUCTOR FUNCTION subloader (
          SELF          IN OUT NOCOPY   subloader,
          record_date                   DATE
       )
          RETURN SELF AS RESULT,
       OVERRIDING MEMBER FUNCTION load_data
          RETURN NUMBER
    )
    ;
    /
    
    CREATE OR REPLACE TYPE BODY subloader
    AS
       CONSTRUCTOR FUNCTION subloader (
          SELF          IN OUT NOCOPY   subloader,
          record_date                   DATE
       )
          RETURN SELF AS RESULT
       IS
       BEGIN
          --    SELF.name := name;
           --   SELF.area := 0;
          RETURN;
       END;
       OVERRIDING MEMBER FUNCTION load_data
          RETURN NUMBER
       IS
          n   NUMBER;
       BEGIN
          INSERT INTO my_table
             (SELECT *
                FROM x_table_xo);
    
          n := SQL%ROWCOUNT;
          COMMIT;
          RETURN n;
       END;
    END;
    /
    

    (no error). then

    set serveroutput on size 5000;
    
    DECLARE
       sl   subloader;
       n number;
    BEGIN
       sl:= subloader(sysdate);
       n:=sl.load_data;
       dbms_output.put_line('n:'||n);
    END;
    /
    

    -It works...

    select * from my_table
    /
    L1,C1,C2
    L1,v1,v2
    L2,v3,v4
    L3,v5,v5
    L4,v6,v6
    

    What is curious, it's that all directories are owned by SYS, even if you create with HR! (select * from all_directories)->, I tried both (System and HR, but the table is owned by HR) not-> no problem. in both situations.

  • Casting of object type to aid to more specific

    Hello

    I'm bit stuck in the legacies of the class in my current project. I implement a zero-coupling messaging architecture that uses variant tables to store objects to be cast to sample.

    The good news: it works in general, little we take a peek at some photos

    I tried the script of coulee before using an example that works as expected.

    Shows probe resulting:

    The Message of abstract [14] is cast to the more specific Message for the controller test [15], [9]

    Now, this implementation with the variants table, change things unfrotunately:

    The only thing that apparently changes is, as the class to be cast to a return value of a Subvi (actually reading the table variant) [12].

    As shown in the probe that the casting does not work this time... There is also no error on the terminal error.

    I have to admit, I'm quite confused... especially because in another class this exact methodiolgy works...

    Any thoughts?

    See you soon

    Oli

    Cast throws more specific to the type of object shown on the thread in the IDE, regardless of the type of the actual object passing along this thread (i.e. type of YARN and not DATA type).

    I bet that your wire to the Center terminal of the 'to more specific' is a son of the same type as the object you are trying to change but actually a more specific object.  The 'Cast to more specific"is a compiling decision, not a decision of execution. As such it takes the type of thread, not the object type for the casting.

    Look at the names on the left of your probes, they are all the same in the example below (all wires are nominally of the same type).  It's the onfo LV casting (assuming the names corresponding to the nominal type of the thread) not use content REAL of the wire.

    Shane.

    PS to make things clearer, give each hierarchy in your legacy a different aspect of wire.

  • -2147217833 error in NI_Database_API.lvlli: Execute.vi Cmd - &gt; NI_Database_API.lvllib:DB tools Insert Data.vi-&gt; TESTDATABASE.vi

    This error appears when I run the respective VI (attached file). The entire message:

    Possible reasons:

    "ADO error: 0x80040E57 the Exception occurred in the Microsoft JET Database Engine: the field is too small to accept the amount of data you attempted to add." Try insert or paste less data in

    ' Create a NI_Database_API.lvllib:Rec - Command.vi - > NI_Database_API.lvlib:Cmd Execute.vi - > NI_Database_API.lvlibB Tools Insert Data.vi-> TESTDATABASE.vi.

    I don't know if the cause might be to make the .udl file. But I doubt that.

    I can list a series of factors that can have an impact on this error, since I do not know the possible cause.

    -The database .mdb extension, it's a 2013 Access database but I taped in .mdb

    -When you create the .udl file, the selected provider is Microsoft JET 4.0 OLE DB Provider.

    -In the block diagram after the function bundle, I used a Variant function, as I read its viable to use. I already tried without the variant of thought.

    Your column names do not match - in the database, you underscore characters in the names of your column in your VI, you do not have.

    You might also have a problem with your "Test number" field - depending on the size of the field, you have set up, he could not accept double digital floats:

    Which corresponds to the error you see. If you use an integer, you should connect an integer type of the appropriate size (e.g., I16, I32/I64) to the insert command.

  • Insert data into an existing timechannel

    Hello

    I'm trying to insert data into an existing timechannel. To illustrate my use case, I prepared a few data :

    Absolute timechannel D1 D2 D3
    14.02.2013 03:22:51.3930 - 4-92-703
    14.02.2013 03:22:52.3930 - 4-92-697
    14.02.2013 04:06:19.7280 - 1-75-674
    14.02.2013 04:06:20.7280 - 1-75-696

    As you can see there is a chronological gap between the second and the third group of data. Now, I want to insert a line with NoValues in this interval.
    The data has been saved with a sampling rate of 1 Hz. After processing the data, they should look like this:

    Absolute timechannel D1 D2 D3
    14.02.2013 03:22:51.3930 - 4-92-703
    14.02.2013 03:22:52.3930 - 4-92-697
    14.02.2013 03:22:53.3930 NV NV NV
    14.02.2013 04:06:19.7280 - 1-75-674
    14.02.2013 04:06:20.7280 - 1-75-696

    Insertion of the NoValues in the data channel works very well with 'DataBlInsertVal '. But I'm having a hard time to achieve the same in the timechannel. Especially with a dependency on the sampling rate.
    Someone has tried to do the same thing or has some tips how to do this? The main objective is to avoid reporting to connect the data points on this chronological gap.

    Best regards, Marc

    Hi Marc,

    I tried what you wanted to do and he worked with DIAdem 2012 without any problem.

    I used the attached file and copy the following code:

    Call DataBlInsertVal(Data.Root.ChannelGroups(1).Channels("Time"), 13, 1, NV)
    

    Can you try this line with my file?

    Cheers, RMathews

Maybe you are looking for