GetMaxRows() to get next value

Hello
I have a table that has a column of just ID which is just an integer. When i add a new record into the database whats the best way for me to get the next value for ID column. lets say before the insert statement the last row of the table has ID 50. In my insert statement how can i determine that the next value should be 51. i thought of using getMaxRows() and adding one to that everytime i do insert.
But whenever i do getMaxRows() i just get 0 back. i did something like this
String max = "Select * from table";
stmt1 = connection.prepareStatement(max);
result = stmt1.executeQuery();
System.out.println("This is max rows"+stmt1.getMaxRows());

i do think this method will occur some problem...
think...if u have 50 rows of data...and some day u need to delete data
ID 49...so the next data ID ur program will produce is ->50...but data ID 50 already exist in database...so maybe ur program will get duplicate of primary key error.
this is just assumsion.because before that i also think the getMaxRow() can solve my problem...but it doesn't.
and usually data ID is the primary key... :)
if u has no primary key u can jus ignore this reply

Similar Messages

  • Read table to get next value (Sequence Question)

    Is there a function in line with my_seq_no.nextval that can read a value in the previous field and get the next sequence number? I know how to create a sequence, but I thought that there is something like a getnextval function.
    Thanks.

    Preston,
    The problem is that there is no such thing as a previous value in Oracle.
    You have to specify some way (like maximum number.. etc..) to get the expected value...
    Sometimes , you can see code like....
    insert into emp values
    (select max(empid) + 1 from emp) new_emp_id,
    ''XYZ' ename,
    from dual;As is evident...the above code takes the maximum value from the table emp and gives you the next emp id.
    The problem here is that all the currently logged in users will get the same value for the new empid until someone inserts a record and then.. all the others would have unique constraint errors (if you have the right constraints in place).
    Using sequences is the right way to make sure all the concurrent users get their own unique values for the new values.
    As for the getnextval, one could always come up with a function which just selects the max(col_name)+1 and returns it... but it has the same problems as the insert...select mentioned above.. So i would rather not provide code for such a thing.. I'd be doing more damage than help. Please use a sequence for your case.

  • Command button to get next value?

    i am new to j2me
    i have this code which just shows 2x10=20 for now
    Code:
    import javax.microedition.midlet.*;
    import javax.microedition.lcdui.*;
    public class TestMidlet extends MIDlet {
    private Form form;
    private StringItem testTable1;
    private Command testTable1Command = null;
    public void startApp() {
         Display.getDisplay(this).setCurrent(getValue(2));
    public void pauseApp() {
    public void destroyApp(boolean unconditional) {
    // form.addCommand(getExitCommand());
    //form.setCommandListener(this);
    private int getValue(int val){
    int total=val*10
    return total;
    what i want is add a 'NEXT' button(Command button) in the main display or canvas
    which clicked shows value of (value+1)x10 and so on
    for eg
    on first 'NEXT' click it should show 30(ie 3x10)
    again pressed shows 40 and so on
    i actually want to implement it to a calendar code
    next i press on next on january display calendar of feburary should come
    suppose calendar is being displayed in getValue function
    I want to make concept clear through above simplified example
    thanks

    Thanks for the encouragement; I am going through the tutorials and also own two books, the Easy HTML-DB book and the Pro Oracle Application Express book. I do find it odd that the books and tutorials don't assume one has already created the database and then wants to create an application after that- such as that they all begin with creating an application from a spreadsheet and talk about uploading data, things I would expect to be done via PL/SQL or some other approach (such as pushing from SAS to Oracle). So these tutorials spend a lot of time on the loading of data as opposed to actually creating a front-end application, which is frustrating to me because I've already got my database all loaded and modeled.
    But I will be more specific in questions in the future. If any of you need any SAS help, please ask at the SAS forum (google SAS-L, hosted by Univ. of Georgia).
    Thanks :-)
    -Mary

  • Get next value in a Multi Record Block

    Hi,
    I've a Multi Record block with 2 items like below.
    pos width
    1 7
    8 5
    13 5
    18 2
    ie pos in next item is sum of pos and width of previous item.I've already implemented this.
    The problem is if the user changes width in a particular record,I want to change next records pos automatically.
    To achieve this,I wrote a when-new-record -instance-trigger as follws:
    if :system.cursor_record=1 then
    :pos:=1;
    elsif :system.record_status='changed' then
    :pos:=:pos+:width;
    end if;
    but even Though I change column width of block,:system.record_status still remain 'INSERT'.
    Pls can u pls tell me how can I acheive this?
    Prashanth Deshmukh

    You cannot use Record Status like that.
    You need to create a procedure that loops through your entire block, keeping track of the pos and width of the prior record to calculate the new pos of each record.
    Your procedure would need to do something like this:
    Declare
        v_Pos  pls_integer := 1;
    Begin
      Go_block('B1');
      First_Record;
      Loop
        Exit when :System.record_status='NEW';
        :B1.pos := v_Pos;
        v_Pos := v_Pos + :B1.width;
        Exit when :System.last_record = 'TRUE';
        Next_Record;
      End Loop;
      First_Record;
    End;

  • How can i get dynamic values to next page.

    HI!
    I am generating a dynamic rows with some different values.And in the end of each row there is a button .i want as i click that button i can get those values on next page.
    Can any one help me out in this.
    On click i can send values thouugh get or post to next page.But how will i read that on next page.
    Help if any one can.

    Not excatly.But i am trying to solve that problem.Responding early may
    help me.

  • How to Create process of Type : Get Next or Previous Primary Key Value

    Hi,
    Can anybody give the steps how to create the page process for type Get Next or Previous Primary Key Value in oracle Express database
    Ramesh j c.

    Hi Justin,
    In oracle 10g XE , we have sample application v2.0
    1. Do you have any Document to create step by step the sample application v2.0 and Is it possible to create all the pages of this sample application v2.0 b by wizard. To recreate or create the demo app, start from the home area,
    next go to application builder,
    then click the create button,
    next choose "demonstration application"
    and then you can choose "Run | Edit | Re-install" the "Sample Application" along with a few other apps.
    2. When we install this sample application v2.0 , which is the sql script is executed or how it is installed. If you want the sample application you can export it after you create it if you want the SQL associated with it.
    3. Whenever the sample application v2.0 is installed, how the encrypted pass word is created for the user demo and admin. This is setup with the application install. I don't believe it is encrypted either. If your wanting SSL there are some threads on here that talk about encrypting content.
    Justin thanks for to create process Get Next or Previous Primary Key Value

  • Best way to get sequence.next value in pl-sql/triggers

    Hi,
    I want to know the best practice about to get the sequence.next value in pl-sql procedures / triggers from the below two methods.
    1. SELECT PRINT_BATCH_SEQ.NextVal INTO PSQNO FROM DUAL;
    INSERT INTO TABLE R1TMP VALUES (PSQNO, '12-MAR-06');
    2. INSERT INTO TABLE R1TMP VALUES (PRINT_BATCH_SEQ.NextVal, '12-MAR-06');
    From the above two statements which one is best with respect to performance / parsing /memory usage.
    Kindly give your suggession please.
    Thanks,
    Riaz.

    Hi,
    Thanks for your immediate reply.
    My thought was
    1. when we do like this, at the time of insert the cost of the operation will be more and this will lead some performance issue as bulk insert.
    2. If we get it from dual and send the value as bind variable, then we can avoid the parsing of the sql.
    Please correct me if i am wrong.
    thanks,
    riaz.

  • Not able to get the value in the next page

    Hi,
    I am newbee for JSF and this question may sound silly. I tried to search through this
    forum, google....but did not find a solution....I hope some one here could please help
    me :-(
    I have Page1 and Page2. Page1 has a h:inputText field and a submit button.
    On click of the "Submit" button in Page1, I have to pass this text value entered by
    the user to Page2. In Page2, I have <h:inputText readonly="true" /> field,
    which will display the value that the user entered in Page1. Also, Page2 has a "Submit"
    button. On click of Page2.Submit button, the value displayed in the Page2.textfield
    is not getting populated to the Page2 bean attribute.
    Here are the code that I am using
    1. Page1:
    <f:view>
    <h:form id="Page1">
         <h:inputText id="primaryKey" required="true" value="#{Page1.primaryKey}" />
         <h:commandButton id="command" value="Submit" action="Page1"/>
    </h:form>
    </f:view>
    2. Page2:
    <f:view>
    <h:form id="Page2">
         // Yes, Value attribute points to Page1.primaryKey to display user entered value in this page.
         <h:inputText id="test" value="#{Page1.primaryKey}" readonly="true" />
         <h:commandButton id="command" value="Submit" action="#{Page2.save()}"/>
    </h:form>
    </f:view>
    3. faces-config.xml
    <navigation-rule>
    <from-view-id>/Page1.jsp</from-view-id>
    <navigation-case>
    <from-outcome>Page1</from-outcome>
    <to-view-id>/Page2.jsp</to-view-id>
    </navigation-case>
    </navigation-rule>
    <managed-bean>
    <managed-bean-name>Page1</managed-bean-name>
    <managed-bean-class>com.Page1Bean</managed-bean-class>
    <managed-bean-scope>request</managed-bean-scope>
    </managed-bean>
    <navigation-rule>
    <from-view-id>/Page2.jsp</from-view-id>
    <navigation-case>
    <from-outcome>success</from-outcome>
    <to-view-id>/success.jsp</to-view-id>
    </navigation-case>
    </navigation-rule>
    <managed-bean>
    <managed-bean-name>Page2</managed-bean-name>
    <managed-bean-class>com.Page2Bean</managed-bean-class>
    <managed-bean-scope>request</managed-bean-scope>
    </managed-bean>
    4. com.Page1Bean.java
    public class Page1Bean {
         private String primaryKey;
         //getter and setter method below
    5. com.Page2Bean.java
    public class Page2Bean {
         private String test;
         //getter and setter method below
         public String save() {
    Now let me explain my issue, I enter a value in Page1 -> click on submit -> I see this value in the text field of
    Page2. But when I click on submit button of Page2, test attribute is still null. Could you please suggest me what
    am I suppose to do inorder to get this value in Page2Bean when I click on save button?
    Hope to listen from one of you,
    Thank you,
    VinodRamu

    Go here
    http://jsffaq.com/
    Many of your questions will be answered

  • Getting the value of iframe to next page while submitting the form

    hi,
    I have used iframe to change the text as bold or italic . This is changing the text as bold or italic.
    iframe has properties name & id, by using i have tried to get the value while submitting the form , I couldn't get the value.
    can u please help me how to read the iframe content.
    the html code is
    *<div><iframe id="xxx" name="xxxx"></frame></div>*

    Hi Anjan,
    I am using this workflow for an employee to send leave request. I have created an event in a program using SAP_WAPI_CREATE_EVENT to create an event zabsence_form. This event is used to trigger the workflow. I have created a table for leave details. The container used in the form is of that table type.
    The agent for ZFILL_ABS_FORM (for filling leave application)  is the workflow initiator and ZABS_APPROVE is a user who is his manager.
    Now the scenario is that I need to do some screen changes for those two users. For that, I need to get the workflow initiator value in the PBO of the form screen. Any way to do that?

  • Get all values from request.getParameter

    In ASP, I can do something like that...
    For each item in Request.Form
    Response.write "Name is:" & item & " value is:" & Request(item)
    Next
    How about in JSP? How do i get the names and values of the form using a loop?

    You can use request.getParameterNames() which will return an enumeration, then you can iterate through the enumeration and use request.getParameterValue(String paramName) method to get the values.

  • Problem getting arraylist values from request

    Hi All,
    I am trying to display the results of a search request.
    In the jsp page when I add a scriplet and display the code I get the values else it returns empty as true.Any help is appreciated.
    <%@ taglib prefix="sql" uri="http://java.sun.com/jsp/jstl/sql" %>
    <%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
    <%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
    <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
    <html>
    <head>
         <%@ include file="/includes/header.jsp"%>
         <title>Research Results</title>
    </head>
    <body>
    <div class="ui-widget  ui-widget-content">
        <%  
        ArrayList<Research> research = (ArrayList<Research>) request.getAttribute("ResearchResults");
         Iterator iterator = research.iterator();
              while(iterator.hasNext()){
              Research r = (Research) iterator.next();
              out.println("Result Here"+r.getRequesterID());
              out.println("Result Here"+r.getStatus());
        %> 
         <form>
         <c:choose>
         <c:when test='${not empty param.ResearchResults}'>
         <table cellspacing="0" cellpadding="0" id="research" class="sortable">
         <h2>RESEARCH REQUESTS</h2>
                   <tr>
                   <th><a href="#">RESEARCH ID</a></th>
                   <th><a href="#">REQUESTOR NAME</a></th>
                   <th><a href="#">DUE DATE</a></th>
                   <th><a href="#">REQUEST DATE</a></th>
                   <th><a href="#">CLIENT</a></th>
                   <th><a href="#">STATUS</a></th>
                   <th><a href="#">PRIORITY</a></th>
                   </tr>
              <c:forEach var="row" items="${param.ResearchResults}">
                        <tr title="">
                             <td id="researchID">${row.RESEARCH_ID}</td>
                             <td>${row.REQUESTER_FNAME}  ${row.REQUESTER_LNAME}</td>
                             <td><fmt:formatDate pattern="MM/dd/yyyy" value="${row.DUE_DATE}"/></td>
                             <td><fmt:formatDate pattern="MM/dd/yyyy" value="${row.CREATED_DATE}"/></td>
                             <td>${row.CLIENT}</td>
                             <td>
                             <c:choose>
                               <c:when test="${row.STATUS=='10'}">New Request</c:when>
                               <c:when test="${row.STATUS=='20'}">In Progress</c:when>
                               <c:when test="${row.STATUS=='30'}">Completed</c:when>
                              </c:choose>
                             </td>
                             <td>
                             <c:choose>
                               <c:when test="${row.PRIORITY=='3'}">Medium</c:when>
                               <c:when test="${row.PRIORITY=='2'}">High</c:when>
                               <c:when test="${row.PRIORITY=='1'}">Urgent</c:when>
                              </c:choose>
                             </td>
                             </tr>
              </c:forEach>
         </table>
         </c:when>
         <c:otherwise>
         <div class="ui-state-highlight ui-corner-all">
                   <p><b>No results Found. Please try again with a different search criteria!</b> </p>
              </div>
         </c:otherwise>
         </c:choose>
         </form>
              <%@ include file="/includes/footer.jsp"%>
         </div>
         </body>
    </html>

    What is ResearchResults?
    Is it a request parameter or is it a request attribute?
    Parameters and attributes are two different things.
    Request parameters: the values submitted from the form. Always String.
    Request attributes: objects stored into scope by your code.
    They are also accessed slightly differently in EL
    java syntax == EL syntax
    request.getParameter("myparameter") == ${param.myparameter}
    request.getAttribute("myAttribute") == ${requestScope.myAttribute}
    You are referencing the attribute in your scriptlet code, but the parameter in your JSTL/EL code.
    Which should it be?
    cheers,
    evnafets

  • Getting the Values from a Tiled View

    Hi,
    I have a TiledView and I have checkbox in the tiled view. I am trying
    to get the values of the checked boxes.
    I have coded like this.
    Object[] links = getRSystemLinks().getCbSystemUrl().getValues();
    if I see the links.length i get only one. In html If I see the code
    it appends the TileIndex in brackets. If I replace the TileIndex with
    0 in all the fields in endCbSystemUrl method I get the correct values.
    In the TiledView beginDisplay() method my code is like this.
    if (getPrimaryModel() == null) throw new ModelControlException
    ("Primary model is null");
    super.beginDisplay();
    resetTileIndex();
    pgCustomizeLinksViewBean parentBean = (pgCustomizeLinksViewBean)
    getParent();
    ((DatasetModel) getDefaultModel()).setSize
    (parentBean.SystemChoicesValue.size());
    Any Suggestions on this.
    Thanks
    Namburi

    Namburi--
    Remember, the getValues() method does not return the values from a column in
    a TiledView. It is strictly for use by fields that can have multiple
    values, like multi-select list boxes.
    DO NOT remove the indexing feature from the field names, especially in the
    case of checkboxes, because checkboxes aren't submitted back to the server
    unless they are checked. By overriding the automatic checkbox tracking
    feature JATO provides, you won't be able to tell which checkboxes were
    actually checked by row--you'll simply get back a list the same size as the
    number of checkboxes that were checked, without any placeholders for the
    ones that weren't checked.
    Instead, on submit, you simply need to move through the tiledView and check
    the value of checkbox on each row:
    tiledView.beforeFirst();
    while (tiledView.next())
    if (getDisplayFieldBooleanValue("myCheckBox"))
    You can use the same construct to build up an array or list:
    List checkedList=new LinkedList();
    tiledView.beforeFirst();
    while (tiledView.next())
    if (getDisplayFieldBooleanValue("myCheckBox"))
    checkedList.add(new Boolean(true))
    else
    checkedList.add(new Boolean(false))
    Todd
    Todd Fast
    Senior Engineer
    Sun Microsystems, Inc.
    todd.fast@s...
    ----- Original Message -----
    From: <vnamboori@y...>
    Sent: Wednesday, October 17, 2001 3:49 PM
    Subject: [iPlanet-JATO] Getting the Values from a Tiled View
    Hi,
    I have a TiledView and I have checkbox in the tiled view. I am trying
    to get the values of the checked boxes.
    I have coded like this.
    Object[] links = getRSystemLinks().getCbSystemUrl().getValues();
    if I see the links.length i get only one. In html If I see the code
    it appends the TileIndex in brackets. If I replace the TileIndex with
    0 in all the fields in endCbSystemUrl method I get the correct values.
    In the TiledView beginDisplay() method my code is like this.
    if (getPrimaryModel() == null) throw new ModelControlException
    ("Primary model is null");
    super.beginDisplay();
    resetTileIndex();
    pgCustomizeLinksViewBean parentBean = (pgCustomizeLinksViewBean)
    getParent();
    ((DatasetModel) getDefaultModel()).setSize
    (parentBean.SystemChoicesValue.size());
    Any Suggestions on this.
    Thanks
    Namburi
    [email protected]

  • How to Get property values from Shared Object in client's load event - Very urgent

    I am using shared object to share data between two users. First user connect to shared object and set some value in shared object. Please consider that second user has not connected with the shared object yet.
    Now when second user connects to the server and try to get that property set by first user, he could get shared object but could not get properties of Shared object set by first user. I observed few times that Second user can get these properties within "Sync" event between two users. But I would like to get these values for Second user in any stage (i.e. in load event etc.). Whenever Second user tries to get the property of Shared object, the object will reset the actual property value and then return reset value.
    Anyone faced such issue while using shared object between two users. If so, I would appreciate if you could let me know your suggestions for following questions:
    1) Is there any way to get all the properties of shared object before sync event called, as I want to get it immediately when second user connect to the application and perform next task based on the values stored in shared object.
    2) Is it possible for second user to check whether any property has been set by first user? So that second user can use the property instead of reset it.
    Any kind of help would be greatly appreciated.
    Thank You.

    I am using shared object to share data between two users. First user connect to shared object and set some value in shared object. Please consider that second user has not connected with the shared object yet.
    Now when second user connects to the server and try to get that property set by first user, he could get shared object but could not get properties of Shared object set by first user. I observed few times that Second user can get these properties within "Sync" event between two users. But I would like to get these values for Second user in any stage (i.e. in load event etc.). Whenever Second user tries to get the property of Shared object, the object will reset the actual property value and then return reset value.
    Anyone faced such issue while using shared object between two users. If so, I would appreciate if you could let me know your suggestions for following questions:
    1) Is there any way to get all the properties of shared object before sync event called, as I want to get it immediately when second user connect to the application and perform next task based on the values stored in shared object.
    2) Is it possible for second user to check whether any property has been set by first user? So that second user can use the property instead of reset it.
    Any kind of help would be greatly appreciated.
    Thank You.

  • How to get attribute value from standard page ?

    Hi,
    How to get attribute value from standard page ?
    String str = (String)vo.getCurrentRow().getAttrbute("RunId");
    But this value is returning a null value ....
    Can anyone help me to get this attribute value which is actually having a actual value .

    getCurrentRow() would always return null if no setCurrentRow() is used.
    Please check the page design and understand how many rows of VO are there. You can also use the following to get the row:
    vo.reset();
    vo.next();
    Regards
    Sumit

  • "How to get distinct values of sharepoint column using SSRS"

    Hi,
        I have integrated sharepoint list data to SQL Server reporting services. I am using the below to query sharepoint list data using sql reporting services.
    <Query>
       <SoapAction>http://schemas.microsoft.com/sharepoint/soap/GetListItems</SoapAction>
       <Method Namespace="http://schemas.microsoft.com/sharepoint/soap/" Name="GetListItems">
          <Parameters>
             <Parameter Name="listName">
                <DefaultValue>{GUID of list}</DefaultValue>
             </Parameter>
             <Parameter Name="viewName">
                <DefaultValue>{GUID of listview}</DefaultValue>
             </Parameter>
             <Parameter Name="rowLimit">
                <DefaultValue>9999</DefaultValue>
             </Parameter>           
          </Parameters>
       </Method>  
    <ElementPath IgnoreNamespaces="True">*</ElementPath>
    </Query>
    By using this query, I am getting a dataset which includes all the columns of sharepoint list. Among these columns, I wanted to display only 2 columns (i.e Region and Sales type) using chart. I have created a Region parameter but when I click preview, the drop down box is giving me all the repeatative values of region like RG1,RG1,RG1,RG2,RG2,RG2,RG2,RG3.......... I wanted to display only distinct values of Region parameter so that whenever end user select region from the parameter drop down, it will display the respective value of Sales type column.
    Also when I select only RG1 parameter, it is giving me a chart including the sales type of all the Regions. (it should display me only the sales type of RG1) How can I link these 2 columns so that they will display the values respectively.
              I would really appreciate if anyone can help me out with this.
    Thanks,
    Sam.

    Hi Sam,
    By code, the CAML language doesn’t have any reserved word (or tag) to set this particular filter to remove duplicate results.
    In this case, we could use the custom code to get distinct records.
    Here are the detailed steps:
    1.         Create a hidden parameter that gets all the records in one field.
    Note: Please create another dataset that is same of the main dataset. This dataset is used for the parameter.
    2.         Create a function that used to remove the duplicate records.
    Here is the code:
    Public Shared Function RemoveDups(ByVal items As String) As String
    Dim noDups As New System.Collections.ArrayList()
    Dim SpStr
    SpStr = Split(items ,",")
    For i As Integer=0 To Ubound(Spstr)
    If Not noDups.Contains(SpStr(i).Trim()) Then
    noDups.Add(SpStr(i).Trim())
    End If
    Next
    Dim uniqueItems As String() = New String(noDups.Count-1){}
    noDups.CopyTo(uniqueItems)
    Return String.Join(",", uniqueItems)
    End Function
    3.         Create another parameter that will be used for filtering the maindata.
    Please set the available value to be =Split(Code.RemoveDups(JOIN(Parameters!ISSUE_STATUS_TEMP.Value, ",")), ",")
    And the default value to be the value you what such as the first value:
    =Split(Code.RemoveDups(JOIN(Parameters!ISSUE_STATUS_TEMP.Value, ",")), ",").(0)
    4.         Go to the main dataset. Open the property window of this dataset.
    5.         In the “Filters” tab, set the filter to be:
    Expression: <The field to be filter>
    Operator: =
    Value: =Parameters!Region.Value
    The parameter “Region” should be the parameter we created in the step3.
    Now, we should get distinct values of SharePoint columns.
    If there is anything unclear, please feel free to ask.
    Thanks,
    Jin
    Jin Chen - MSFT

Maybe you are looking for