How can I create a cluster on the fly?

I'm inserting rows in a database table as part of a logging effort for our program.  The table in question has a lot of columns, many of which can be null at any particular time.  As such, I'd like to decide at run time (as situations warrant) which columns get a value when I add the new row.  The columns are of mixed data types... some strings, some floats, some ints, etc.
For example...
On one pass, I'd like to populate columns "temp", "volume", and "weight".
On another pass, I may want to populate columns "temp", "color", and "notes".
I gen the array of column names.  That part's easy
How (in the world) do I create the cluster that feeds the DATA input of the "DB Tools Insert Data" VI?
Sometimes I may need an int, a float, and a boolean.
Other times I may need two ints and a string.
Thanks!
Solved!
Go to Solution.

Given this example you could have a table which contains a the timestamp and a record ID. Most databases can assign the key automatically and guarantee it to be unique. You may also store the machine name or other identifying information specific to this entry. However, all columns in this table would be populated in every record. You can then have another table which contains the specific data for that record. This table would have a column which contains the ID from your other table. You can have multiple entries in this table for that specific ID. This table would contain the ID from the other table, a column indicating what the specifc data is (voltage, temperature, pressure, etc.) and then the data itself. If you have different data types you can have a table for each specific data type (string, double, image, etc.). If you have separate tables for the different data types you would need a key/ID for each data value record. The data tables would simply be the ID for the data attribute and the value itself.
So, table one may consist of the following columns: Table1-Key, Timestamp, Test ID
The attributes table would have the following columns:  Table1-Key, Record Type, Data-Key
Your Data Tables would have the following columns: Data-Key, Value (You could have multiple Data Tables for each data type.
To get all the data for a specific time you join the results of the queries from the tables for a specific Table1-Key and the corrsponding Data-Keys from the data tables.
If your table currently has dozens of columns but you are only storing a few at a time your are wasting a ton of space for all the empty columns. Some databases are better than others at reducing this waste but link table help you to store only the specific data for a given record and not fill the database with lots of empty records.
Mark Yedinak
"Does anyone know where the love of God goes when the waves turn the minutes to hours?"
Wreck of the Edmund Fitzgerald - Gordon Lightfoot

Similar Messages

  • How can I create an element in the model node?

    Hi, Experts,
    I create a model node that name is containerNode in the contxt. Cadinility is: 1..n
    I write the code in the method:
      private String getDataForOutputTable( IWDNode wageTypePayslip, IWDNode containerNode ){
           String betrgSumStr = "";
         int index = 0;
         Vector containerVector = new Vector();
         int size = wageTypePayslip.size();
         IWDNodeElement element = containerNode.createElement();// The system report error when I run the application.
         BigDecimal betrgSum = new BigDecimal( 0 );
    I try to create a element in the containerNode, But the system report error when I run the application.
    java.lang.IllegalArgumentException: model object must not be null
         at com.sap.tc.webdynpro.progmodel.context.ModelNodeElement.<init>(ModelNodeElement.java:66)
         at besuretech.com.wdp.IPrivatePayDataDispView$IOContainerElement.<init>(IPrivatePayDataDispView.java:1537)
         at besuretech.com.wdp.IPrivatePayDataDispView$IContextNode.doCreateElement(IPrivatePayDataDispView.java:88)
         at com.sap.tc.webdynpro.progmodel.context.NodeInfo.createElement(NodeInfo.java:884)
         at com.sap.tc.webdynpro.progmodel.context.Node.createElementInternal(Node.java:1351)
         at com.sap.tc.webdynpro.progmodel.context.Node.createElement(Node.java:1370)
         at besuretech.com.PayDataDispView.getDataForOutputTable(PayDataDispView.java:251)
         at besuretech.com.PayDataDispView.getAllData(PayDataDispView.java:196)
         at besuretech.com.PayDataDispView.onPlugPayListViewIn(PayDataDispView.java:154)
         at besuretech.com.wdp.InternalPayDataDispView.wdInvokeEventHandler(InternalPayDataDispView.java:391)
         at com.sap.tc.webdynpro.progmodel.generation.DelegatingView.invokeEventHandler(DelegatingView.java:87)
         at com.sap.tc.webdynpro.clientserver.cal.ClientApplication.navigate(ClientApplication.java:826)
         at com.sap.tc.webdynpro.clientserver.cal.ClientComponent.navigate(ClientComponent.java:881)
         at com.sap.tc.webdynpro.clientserver.window.WindowPhaseModel.doNavigation(WindowPhaseModel.java:498)
    How can I create an element in the model node ?
    Best regards,
    tao

    Hi,
    You need to execute the model before creating the element.
    Regards
    Ayyapparaj

  • How can I create a drawing like the one pictured from a photo?

    How can I create a drawing like the one pictured from a photo?

    OK, you are getting closer. Now, use your result, and place a Layer above that. Use the Pen Tool to create the "pen strokes" basically tracing over your background image. Then, when you have created each Path (or Sub-Path), choose Stroke Path, with probably the Pencil Tool and a Brush size that is small enough.
    Not sure which versions of PS these are good for, but here are some plug-ins, that might be helpful.
    AKVIS Sketch
    EdgeLine
    Sketch Effects
    Sketch Master
    I see that one of my old favorites, Flaming Pear's India Ink is not around any more.
    Good luck,
    Hunt

  • HT5114 How can I create multiple accounts without the necessity to create multiple email addresses?  I now have 2 i-phones (mine and my wife's#, 1 i-pad #mine#, 1 i-pad mini #10 year old's#, and 1 I-pod touch #11 year old's).  I would like to maintain pur

    How can I create multiple accounts without the necessity to create multiple email addresses?  I now have 2 i-phones (mine and my wife's), 1 i-pad (mine), 1 i-pad mini (10 year old's), and 1 I-pod touch (11 year old's).  I would like to maintain purchase control, but would like to be able to have a separate account ID for each person.  Is that possible?

    Each email address can only be on one iTunes account, and all purchases are tied to the account that buys them. If you want to have separate iTunes accounts on each then you will need separate email accounts for each iTunes account

  • How can i create a Laptop like the ones use in SAP TecEd?

    How can i create a Laptop like the ones use in SAP TecEd hands on labs? with all the NW products install on it.

    Hi,
    Vague question, but to create a laptop with the solution installed - you need to order the solution and and then install it on the laptop. Or download trial versions from SCN and install those as well.
    Regards,
    Srikishan

  • Oracle Trigger - How can I capture and correct on the fly  ORA-01847

    Oracle Trigger - How can I capture and correct on the fly ORA-01847 day of month must be between 1.
    I have a table that has a date column. Sometimes an invalid date is passed and I'd like to capture and initilize the incoming value to null and have it inserted without error. Currently I get ORA-01847 day of month must be between 1.
    Example:
    create table ep1
    col_1 number,
    col_2 date
    Now if a user does the following, I want no error to occure but rather for the date value to be set to null and inserted.
    insert into ep1 values('1', '41-JAN-13')
    The insert may come from any client and I can't change the calling code hence can't used a precedure to replace the insert. I'm guessing there is some way to catch system level exceptions on the DB level. This doesn't need to be nice, it just needs to work.
    Here is the question on experts exchange. I'm told there is no way, but there must be. After all the exception is on a DB system level and I would think one could extend or override these, or disable them.
    http://www.experts-exchange.com/Database/Oracle/PL_SQL/Q_23045306.html

    SQL> declare
      2     wrong_month      exception;
      3     pragma exception_init (wrong_month, -1843);
      4  begin
      5    begin
      6      insert into emp (empno, hiredate)
      7      values (2345,to_date('13/25/81','MM/DD/YY'));
      8    exception
      9      when wrong_month then
    10      dbms_output.put_line('I caught the bad month');
    11      insert into emp (empno, hiredate)
    12      values (2345,null);
    13    end;
    14  end;
    15  /
    I caught the bad month
    PL/SQL procedure successfully completed.
    SQL>
    SQL> select * from emp
      2  where empno = 2345;
         EMPNO ENAME      JOB              MGR HIREDATE         SAL       COMM     DEPTNO
          2345Note the 1843 error vice 1847. It can be done outside of a trigger.

  • How can I create a Title for the worksheet in Discoverer Plus

    Dear members,
    I am using discoverer 4i Plus to create workbooks. I am not finding an option to insert a title for the worksheet. In Discoverer Desktop we have a separate option to insert or edit a title. I am not sure how can we create titles in Plus.
    Any suggestions.
    Thanks
    Sandeep

    Hi,
    I am not able to login to Discoverer Desktop Using my Applications username. My Desktop Version is 4.1.37. The same username works in Discoverer 4i Plus and i can create workbook there.
    I went to Tools--->Options--->Connections and checked the option connect to both standard and application EUL's and while i am logging in i checked the small box which comes in the login screen. I do not know why this happening.
    I am also able to login as the database user in Desktop but not as an application user.
    I want to login into desktop as an application user and create a template workbook which has title and then assign that workbook to a particular responsibility since creating title cannot be done in Plus.
    I am not sure what's going wrong here because the Desktop works for database user but not for an application user. Any comments are highly appreciated.
    Thanks
    sandeep

  • How can I create a sample with the Flex data?

    Hi mates, I'm thinking about doing some stutter vocals with the ultrabeat so I've got a vocal and I have flexed it in time so it fits well on the song's tempo, the problem is that when I create an audio file of the part of the vocal I want to use on my ultrabeat, it creates an audio file that's not fitted in time.
    How can I create the audio file fitted in time?with the flex info?
    Thanks so much!

    psikonetik wrote:
    How can I create the audio file fitted in time?with the flex info?
    You need to create Apple Loop, REX etc.
    For example select the region that you have already flexed, right click ->Bounce Merge->Bounce Inplace. I will create a new audio track with the bounced Flex work.
    Select the new region and go to Audio menu ->Open in Apple Loop Utility and check "Loop" and other attributes to create an Apple Loop. Save the Apple Loop and close the utility. It's expected that the Apple Loop aif must be created in your Project path folder or have a look at the Audio Bin in Logic where is the aif path.
    Drug the Apple Loop in the Arrange audio track ( or it will create one ) and operate with any tempos.
    !http://img59.imageshack.us/img59/4967/aglogo45.gif!

  • How do I create an object on the fly

    Hello there,
         I was wondering if it is possible to create an object on-the-fly. For example:- I have a class called Customer which holds the name, address and phone number of a customer. While the program is running I get a new customer, Mr Brown. How can I create a new Customer object which will hold the details of Mr Brown.
    yours in anticipation
    seaview

    If I understood you right, you are thinking far too complicated.
    So, when you click a button, a new object shall be created and stored. So basically you write a listener to your button that contains a method like this:
    public void actionPerformed(ActionEvent e){
       Customer newCustomer = new Customer(textfield.getText());
       listOfCustomers.add(newCustomer);
    }Maybe what got you confused is the object's name. Remember this: variables and field names DON'T exist anymore at runtime! They are just meant to help you when programming. If you want Mr. Brown as a customer, you have to provide a field in the customer class for the name. If a field is required for the existence of an object, you usually write a custom constructor for it, which accepts an according parameter.

  • How Can I create a cluster of two instances running on the same server?

    Hello,
    I can't find how to create a cluster or even a failover rule for my two instances running on the same server ODSEE 11gR1.
    Could you please help?
    Thanks,

    Hello,
    Clustering (intended as Sun Cluster, Veritas Cluster, etc... ) IS NOT SUPPORTED since 7.0:
    http://docs.oracle.com/cd/E20295_01/pdf/821-1216.pdf [page 20]
    and, based on my own experience, is the WORST way of achieving high availability of an LDAP Directory Service and an almost GRANTED way to get replication issues in your topology (lock, split, re-init, etc...).
    Please use instead the 'application-level' clustering that you get out of the box with the Multi-Master Replication.
    http://docs.oracle.com/cd/E20295_01/html/821-1217/index.html
    http://docs.oracle.com/cd/E20295_01/html/821-1220/fhkry.html#scrolltoc
    HTH,
    Marco

  • How can I create a box in the toolbar to dispaly cursor coordinates

    I would like to create a box in the acrobat toolbar to display cursor position coordinates relative to a user specified origin. How can this box be created and added to the toolbar? I'm just getting started with writing acrobat plugins.

    OK...
    You can create a floating palette using the ADM APIs that are documented in the SDK, and for which there are samples.
    Or use your OS platform APIs for doing windows...
    Leonard

  • Hi. I want to build a GUI based on several windows appearing following a certain sequence. How can i create different windows in the same VI? Also, i want the front panel of a subvi to appear when i run, how can i enable this.Thanks

    Having several windows appear ...

    Hi,
    You can't create several windows for one VI. But you can use the "Tab Control" and change tab's in the program. Or you can use sub VI's and show ther front panels.
    To show the front panel of a sub VI you have to open the VI you want to show and select "File->VI Properties". In the VI Properties window select Category "Window Appearance" and click Customize...
    In the Customize Window Appearence window, here you can set a number of attributes for how the window will appear, select "Show front panel when called" and "Close afterwards if originally closed" click OK and OK and save the VI, done.
    Now the VI front panel will appear then you use it as a sub VI.
    /Thomas

  • How Can I Create a Menu Where the Audio Loops Twice But the Video Loops Forever

    I'm wanting to create a 50 second looping menu with a video background and some music, but I only want the music to play twice.  After the second time the music plays, I'd like the video background to continue looping, but not have any music.
    How could I achieve this while giving the user the ability to make menu selections at any time?  I've seen it done on a number of commerically available DVDs and Blu-rays, but I can't figure out how to do it in Encore.
    I'm using Encore CS6.
    Thanks.

    Stan Jones wrote:
    I do not know if that works, but I don't see why it wouldn't.
    I'm not sure what you're referring to.  Are you referring the commercially available DVDs that I've seen achieving what I mentioned in the first post? 
    There's definately a way to do this, but perhaps Encore just insn't capable. I always find it annoying when a DVD menu loops music or some other audio infinately.  I may stick a disc in the player and walk into the other room to do something while it's loading up.  I always appreciate it when whoever made the disc only has the music or audio looping a couple of times, then it stops.
    Just wish I could do the same.

  • How can I create a universe with the BO repository tables?

    Hi. I need make a universe with the BO repository tables, in order to get user information .
    But, when I try to insert tables in designer, using a new conecction to BO repository. I can't see tables.
    Someone can help me?

    The CMS repository is organized into both physical and virtual tables. Only the CMS can access the virtual tables, therefore you cannot create a universe on the CMS repository. You can access the CMS repository information through the Enterprise SDK.
    https://www.sdn.sap.com/irj/boc/businessobjects-sdklibrary

  • How can I create an index on the date part of a timestamp field?

    is there a way I can create an index on the date part of a timestamp field?

    LONGENECKER wrote:
    Idea:
    If you find no direct command that allows you to create an index on JUST the date portion of a timestamp datatype column then I recommend you consider splitting date and time into two seperate columns.
    If date is column "A" and time is column "B" then you can concatenate them using a view or virtual column (in 11G) to re-assemble them at run time.
    In the solution I describe above you might trade ease of management for better performing queries.
    Additional Info:
    This thread may be of some value.
    Can we create INDEX on TIMESTAMP column???
    And what datatype do you propose for your columns A and B? The only proper datatypes would be DATE or TIMESTAMP. Both of these inherently carry both date and time components, so that would have to be dealt with anyway. The use of any character or number datatype to hold date and/or time should be treated with an application of Billy's lead pipe.
    Perhaps function based indexes would be a better solution.

Maybe you are looking for