How to monitor the update of database in Java

The situation:
if the database on the server side is updated, i need to dump the changed files to the client side immediately.
my question:
if only a table is changed, how can i know the specific table in the database immediately?
thank you.

if the database on the server side is updated, i need to dump the changed files to the client side immediately.Changed files? Hopefully you are not talking about the database files. If so then you would have to lock the database before do that.
There are only two ways that you can be notified. The database does it or you poll. If you poll you need an indicator of some sort to indicate that an update has occurred like a record count or a field with a timestampt. The record count is risky because it presumes records will never be deleted.
The database side solution is to add a trigger that sends a notification to you. The type of possible notifications depends on the database. A mixed mode solution is possible with this as the trigger can add a update record to a specific table which your app is polling on.
Polling/triggers are expensive operations. They should never be used in situations where multiple clients are notified. Instead snapshots should be used.

Similar Messages

  • How to monitor the success of database shutdown command

    Sometimes , the "shutdown immediate" command can fail on one of our databases. We want to monitor the success of the shutdown command. If it fails, then we will issue a "shutdown abort" command. My question is: how can I monitor the success of database shutdown command?
    sqlplus / as sysdba <<EOF
    shutdown immediate
    EOF
    if failed ???? ;then
    sqlplus / as sysdba <<EOF
    shutdown abort
    EOF
    Thanks in advance for your help!

    No version, no platform. How do you expect help?
    And what does 'fail' mean?
    A few remarks:
    You can have sqlplus error out to the O/S by using whenever sqlerror exit failure
    Shutdown immediate usually doesn't fail but just doesn't complete.
    One would usually monitor the alert log as to check what is going on, and issue the shutdown abort in a different session.
    Sybrand Bakker
    Senior Oracle DBA

  • How to monitor the work processes in a Java instance?

    Dear Experts,
    In an abap system, we can use sm50 to check the processes of the user, and also the memory consumption of each user, but how do we do that in an JAVA only instance?
    I was told by one of my colleagues that i could enter a command to generate thread dumps and from there i could analyze which class is giving the trouble, but he cannot recall what command is that, anyone have any idea for that?
    Replies are very much appreciated.

    The equivalent of SM50 (dpmon) is jcmon, you can also monitor your engine from NWA.
    Read
    http://help.sap.com/saphelp_nw04s/helpdata/EN/d3/4d074147c1f06fe10000000a1550b0/frameset.htm
    Regards
    Juan

  • How to monitor the database growth?

    Dear All,
    How to monitor the database growth in SAP.
    Is there any t.code available to check the same.
    advance thanks,
    Sundar  C
    Note: suitable answers will get maximum reward points.

    Hai,
          You can check the database growth using tcode -db02.
    and also use tcode-db02old(if the SAP is Netweaver2004s version)  and click on space statistics for monitoring the datbase growth,
    Thanks and Regards,

  • How to display the updated data from db to user interface in sruts framewor

    A beginner in this area, I have been able to read a record from a
    MySQL database and populate in jsp form . Now, my goal is to
    allow the user to edit the contents of the form and then update the
    record in MySQL and then display the same in jsp. page
    The scenario in detail
    1)the data is fetched from db and displayed in non-editable format
    2)Next button is clicked
    3)Now in the same jsp page I view the same data from db in editable format
    4)The user is allowed to change the information
    5)Now update button is clicked
    6)the records are updated in the db -Finished doing till this step
    7)But the updated info in non - editable format to be displayed in jsp page is left pending.
    Here is my code for jsp,i want know how to write an action for this,tried doing the same in java and I'm successful.but what I need is how to fetch the updated information in the user interface.
    I've made both editable as well as non editable info in the same page with different actions.
    pl help me,I'm a newbie
    <%@ taglib uri="/WEB-INF/struts-bean" prefix="bean" %>
    <%@ taglib uri="/WEB-INF/struts-html" prefix="html" %>
    <%@ taglib uri="/WEB-INF/struts-logic" prefix="logic" %>
    <%@ page language="java" %>
    <%@ page import="java.util.ArrayList,java.util.Iterator" %>
    <%@ page import="com.finocus.common.container.CustomerDetailsTest;" %>
    <html:html>
    <head>
         <title>CUSTOMER DISPLAY</title>
    </head>
    <body>
         <table width="100%" bgcolor="darkkhaki">
         <tr>
              <td><table width="100%" bgcolor="indigo">
                   <tr>
                        <td><font color="white">Display</font></td>
                        <td><font color="white">Update</font></td>
                        <td><font color="white">Verify</font></td>
                        <td><font color="white">Confirm</font></td>
                   </tr>
                   </table>
              </td>
         </tr>
    <%
              //Container for holding data
              ArrayList list = (ArrayList)session.getAttribute("CUSTOMERDETAILS");
              Iterator itr=list.iterator();
              while(itr.hasNext())
              CustomerDetailsTest cust = (CustomerDetailsTest) itr.next();
              System.out.println("testGetCustomerDetails()-successed. retrieved CustomerDetailsTest="+cust.toString());
    %>
    <%
              //Session for checking whether edit or non-edit mode
              String pageMode = (String)session.getAttribute("CUSTOMER_PAGE_MODE");
              session.removeAttribute("CUSTOMER_PAGE_MODE");
              if(null==pageMode)
                   pageMode = "EDIT";
              if(pageMode.equals("EDIT"))
                   //display data in the form
                   System.out.println("Editable mode");
    %>
              <html:form action="/nonedit">
                   <tr>
              <td><table width="100%" bgcolor="darkkhaki">
              <tr>
                        <td><b><bean:message key="label.id"/></b></td>
                        <td><font color="red"><%=cust.getCusId()%></font></td>
         </tr><br>
         <td>
                             <font color="brown" face="Courier New"><b>
                        <bean:message key="label.Company"/></b>
                        </td><br>
                        <tr>
                   <td><bean:message key="label.cname"/></td>
                   <td><font color="blue"><html:text property="name" value="<%=cust.getCname()%>"/></font></td>
                        <td><bean:message key="label.cphone"/></td>
                        <td><font color="blue"><html:text property="phone" value="<%=cust.getCphone()%>"/></font></td>
              </tr><br>
         <tr>
                   <td><bean:message key="label.caddr1"/></td>
                   <td><font color="blue"><html:text property="address1" value="<%=cust.getCaddress1()%>"/></font></td>
                        <td><bean:message key="label.cemail"/></td>
                        <td><font color="blue"><html:text property="email" value="<%=cust.getCemail()%>"/></font></td>
              </tr><br>
         <tr>
                   <td><bean:message key="label.caddr2"/></td>
                   <td><font color="blue"><html:text property="address2" value="<%=cust.getCaddress2()%>"/></font></td>
                        <td><bean:message key="label.cfax"/></td>
                        <td><font color="blue"><html:text property="fax" value="<%=cust.getCfax()%>"/></font></td>
              </tr><br>
         <tr>
                   <td><bean:message key="label.ccity"/></td>
                   <td><font color="blue"><html:text property="city" value="<%=cust.getCcity()%>"/></font></td>
                        <td><bean:message key="label.czip"/></td>
                        <td><font color="blue"><html:text property="zip" value="<%=cust.getZip()%>"/></font></td>
              </tr><br>
         <tr>
                   <td><b><bean:message key="label.cstate"/></b></td>
                   <td><font color="red"><html:text property="state" value="<%=cust.getCstate()%>"/></font></td>
         </tr><br>
         <td>
                             <font color="brown" face="Courier New"><b>
                        <bean:message key="label.Admin"/></b>
                        </td><br>
         <tr>
                   <td><b><bean:message key="label.AAname"/></b></td>
                   <td><font color="red"><html:text property="adminname" value="<%=cust.getAname()%>"/></font></td>
         </tr><br>
         <tr>
                   <td><b><bean:message key="label.AAemail"/></b></td>
                   <td><font color="red"><html:text property="adminemail" value="<%=cust.getAemail()%>"/></font></td>
         </tr><br>
         <tr>
                   <td><b><bean:message key="label.AAphone"/></b></td>
                   <td><font color="red"><html:text property="adminphone" value="<%=cust.getAphone()%>"/></font></td>
         </tr><br>
         <td>
                             <font color="brown" face="Courier New"><b>
                        <bean:message key="label.User"/></b>
                        </td><br>
         <tr>
                   <td><b><bean:message key="label.AUname"/></b></td>
                   <td><font color="red"><html:text property="adminusername" value="<%=cust.getUname()%>"/></font></td>
         </tr><br>
         <tr>
                   <td><b><bean:message key="label.AUemail"/></b></td>
                   <td><font color="red"><html:text property="adminuseremail" value="<%=cust.getUemail()%>"/></font></td>
         </tr><br>
              <tr align="center">
                        <td><html:cancel value="Cancel"/>
                        <html:submit value="Next"/></td>
              </tr>
              </html:form>
    <%               
              }else
                   //display data in the text
                   System.out.println("Non-Editable mode");
    %>
              <html:form action="/edit">
              <tr>
              <td><table width="100%" bgcolor="darkkhaki">
                   <tr>
                        <td><b><bean:message key="label.id"/></b></td>
                        <td><font color="red"><%=cust.getCusId()%></font></td>
                        <td><b><bean:message key="label.status"/></b></td>
                        <td><font color="red"><%=cust.getStatus() %></font></td>
         </tr><br>
         <td>
                             <font color="brown" face="Courier New"><b>
                        <bean:message key="label.Company"/></b>
                        </td><br>
                        <tr>
                   <td><bean:message key="label.cname"/></td>
                   <td><font color="blue"><%=cust.getCname()%></font></td>
                        <td><bean:message key="label.cphone"/></td>
                        <td><font color="blue"><%=cust.getCphone()%></font></td>
              </tr><br>
         <tr>
                   <td><bean:message key="label.caddr1"/></td>
                   <td><font color="blue"><%=cust.getCaddress1()%></font></td>
                        <td><bean:message key="label.cemail"/></td>
                        <td><font color="blue"><%=cust.getCemail()%></font></td>
              </tr><br>
         <tr>
                   <td><bean:message key="label.caddr2"/></td>
                   <td><font color="blue"><%=cust.getCaddress2()%></font></td>
                        <td><bean:message key="label.cfax"/></td>
                        <td><font color="blue"><%=cust.getCfax()%></font></td>
              </tr><br>
         <tr>
                   <td><bean:message key="label.ccity"/></td>
                   <td><font color="blue"><%=cust.getCcity()%></font></td>
                        <td><bean:message key="label.czip"/></td>
                        <td><font color="blue"><%=cust.getZip()%></font></td>
              </tr><br>
         <tr>
                   <td><b><bean:message key="label.cstate"/></b></td>
                   <td><font color="red"><%=cust.getCstate()%></font></td>
         </tr><br>
         <td>
                             <font color="brown" face="Courier New"><b>
                        <bean:message key="label.Admin"/></b>
                        </td><br>
         <tr>
                   <td><b><bean:message key="label.AAname"/></b></td>
                   <td><font color="red"><%=cust.getAname()%></font></td>
         </tr><br>
         <tr>
                   <td><b><bean:message key="label.AAemail"/></b></td>
                   <td><font color="red"><%=cust.getAemail()%></font></td>
         </tr><br>
         <tr>
                   <td><b><bean:message key="label.AAphone"/></b></td>
                   <td><font color="red"><%=cust.getAphone()%></font></td>
         </tr><br>
         <td>
                             <font color="brown" face="Courier New"><b>
                        <bean:message key="label.User"/></b>
                        </td><br>
         <tr>
                   <td><b><bean:message key="label.AUname"/></b></td>
                   <td><font color="red"><%=cust.getUname()%></font></td>
         </tr><br>
         <tr>
                   <td><b><bean:message key="label.AUemail"/></b></td>
                   <td><font color="red"><%=cust.getUemail()%></font></td>
         </tr><br>
         <tr align="center">
                        <td><html:submit value="Update"/></td>
              </tr>
              </html:form>
    <%
    %>
    <%
    %>
                   </table>
              </td>
              </tr>
         </table>
    </body>
    </html:html>

    u r using action classes. so after calling the insert method in Action Class to a dao... the next statement should be retrieve statement. so at the time of updating first it will get updated.. the next statement it will execute is retrieve and then set these details in VO or FORM and show it on JSP
    Message was edited by:
    leo_michael

  • How to Find the number of Databases in a server.

    HI,
    Please tell me how to find the number of Databases are in a server . when the DB is not up.
    ps -ef | grep ora_
    This i know whether our DB is up or not. But i want to know how many databases are in a server .If the database is down .
    Cheers,
    Gobi.

    Hi,
    [oracle@oralinux admin]$ lsnrctl status
    LSNRCTL for Linux: Version 9.2.0.4.0 - Production on 01-DEC-2006 16:25:41
    Copyright (c) 1991, 2002, Oracle Corporation. All rights reserved.
    Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC)))
    TNS-01169: The listener has not recognized the password
    [oracle@oralinux admin]$
    Plz give me the solution.
    Cheers ,
    Gobi.

  • How to use the updated value in the same update statement

    Hello,
    I just wonder how to use the updated new value of other column in the same udpate statement. I am using Oracle 11.2, and want to update the two columns with one update statement as following:
    create table tb_test (id number(5), tot number(5), mon_tot number(5));
    update tb_test set (tot = 15, mon_tot = tot *15) where id = 1;
    ...I would like to update both tot and mon_tot column, the value of mon_tot shall be determinted by the new value of tot.
    Thanks,
    Edited by: 939569 on 1-Feb-2013 7:00 AM

    Edit: example added
    SQL> create table tb_test
      2  ( id number(5)
      3  , tot number(5)
      4  , mon_tot number generated always as (tot*15) virtual
      5  );
    Table created.
    SQL> insert into tb_test (id, tot) values (1, 5);
    1 row created.
    SQL> select * from tb_test;
            ID        TOT    MON_TOT
             1          5         75
    1 row selected.
    SQL> update tb_test
      2  set    tot = 15
      3  where  id = 1;
    1 row updated.
    SQL> select * from tb_test;
            ID        TOT    MON_TOT
             1         15        225
    1 row selected.

  • Missing update for a game app after updating ios7 any ideas how to get the update

    Went to update a game app this morning, had already hit update when the i os7 update screen popped went through with the ios update but after ipad restarted the game update is completely missing any ideas how to get the update back no luck so far

    Hello THEVIN7
    The next step if it is not updating, would be to delete the app and then download it again. Check out the general troubleshooting for apps purchased form the App Store.
    iOS: Troubleshooting apps purchased from the App Store
    http://support.apple.com/kb/ts1702
    Regards,
    -Norm G.

  • I have an older mac and it wants me to update to itunes 10 but my mac is too old and I cant figure out how to disable the update

    I have an older mac and it wants me to update to itunes 10 but my mac is too old and I cant figure out how to disable the update so I can use the store.

    If Software Update is offering the update then it would be compatible with your model.  Unfortunately, you haven't provided us with any information on your hardware that would enable us to determine if it really is too old.
    If you really wish to disable the update alert then the next time Software Update opens, select the update in the list then select "Ignore update" from SU's Update menu.

  • How to get the list of database Views modifying the DB tools list tables.vi

    Hi,
    I have a problem, I just started using LabVIEW and in particular the LabVIEW connectivity toolkit and I am lookig fgor suggestion regarding how to get the list of database Views modifying the DB tools list tables.vi...
    Thanks in advance,
    Michela

    Hi Michela,
    since the VI you want to modify is part of a Toolkit, I suggest you to copy the whole block diagram in a new VI and then save it in a new location.
    Place the DB List Tables.vi on a block diagram, double click on it and go to the tab "Window -> Show Block Diagram "
    Select "Edit -> Select All" to select the whole block diagram and select "Edit -> Copy"
    Open a new VI and select "Edit -> Paste"
    Save the new VI
    In this way you can modify everything you want without overwriting the Toolkits VIs.
    Hope this can help.
    Regards, 
    Andrea N.
    Systems Engineer ATE & RF - Mediterranean Region
    National Instruments Italy

  • How to extract the Physical Query(database Query)

    Hi ,
    How to extract the Physical Query(database Query) from obiee which was fired in obiee
    Regards
    Ranga

    Hi Ranganath,
    Have a look the following links.
    Setting Logging level:
    http://gerardnico.com/wiki/dat/obiee/loglevel
    How to see physical query:
    http://gerardnico.com/wiki/dat/obiee/manage_session_log
    If you are new to OBIEE, spend some hours on the following blog to learn from basics to advanced level.
    http://gerardnico.com/wiki/
    http://obiee101.blogspot.com/
    http://www.rittmanmead.com/blog/
    Hope it helps you.
    Regards,
    Kalyan Chukkapalli
    http://123obi.com

  • How to access the ms access database in the JApplet?

    I am New here.
    Please help me.
    I am create one java file to access MS access the database in the JApplet.
    It say "Access denied".
    How to access the ms access database in the JApplet?
    Message was edited by:
    SVPRM

    Hi,
    First of all, were u successfull in creating the connection with the .mdb file.Like settting the DSN and configuring the .mdb file path in control panel.
    If yes then one option might be that the file ur trying to access is in Read-only mode.
    regards

  • How to debug the update FM

    Hi,
    I am facing a problem with the debugging of the update FM. I have enabled the update debugging and the system says that update debuging is on . even though the control did not go into the FM.
    Do i need to check in any other transaction . Please give me the details steps on how to see the what is happening in the update FM.
    Full marks are guaranteed.
    thanks
    sankar

    Hi
    I have got a clue from SAP help on how to debug the update FM see the below information from SAP
    When you debug a program that calls function modules using the IN BACKGROUND TASK addition, they are processed in a background work process (additional internal session). If you set the In background task: Do not process option, the system collects the function calls, but does not start the background work process. The Debugger assigns a transaction ID, which identifies the background work process uniquely. You can now start the Debugger for the background work process using transaction SM58. You can select the function module concerned here, and then execute it via the Edit menu.
    I have done everything that is said above , but could not find any entries in SM58
    any suggestions
    thanks
    sankar

  • How to monitor the performances of VMs & Hyper-v Cluster host node running on SCVMM Cluster.

    hello...,
    How to monitor the performances of VMs & Hyper-v Cluster hosts node running on SCVMM Cluster from SCOM so that we can
    Identify the highest utilized(CPU and Memory ) VM on that from cluster  hyper-v host.
    Identify the lowest utilized (CPU and Memory )Hyper-v Host in the Cluster .
    After identifies VMs and Hyper-v cluster  host on SCVMM , so that we  can  proceed to do migrate the Highest Utilized VM to Lowest Utilized
    Hyper-v cluster host. 
    To identified and implement above ,what are the things I need to do or configured on SCOM.
    Thanks
    RICHA KM

    hello...,
    How to monitor the performances of VMs & Hyper-v Cluster hosts node running on SCVMM Cluster from SCOM
    so that we can
    Identify the highest utilized(CPU and Memory ) VM on that from cluster  hyper-v
    host.
    Identify the lowest utilized (CPU and Memory )Hyper-v Host in the Cluster .
    After identifies VMs and Hyper-v cluster  host on SCVMM , so that we  can  proceed
    to do migrate the Highest Utilized VM to Lowest Utilized Hyper-v cluster host. 
    To identified and implement above ,what are MPs i need to installed on SCOM for implementing
    this.
    Thanks
    RICHA KM

  • How long does the update for ios 7

    How long does the update take on an ipad 2 for the ios 7?

    The update has been going for 3 1/2 hours.  The screen is black, if I hit the on/off button, the screen comes up with Itunes symbol with the usb cord.  I assume it means I need to connect it to itunes through my computer.
    I don't know if I lost my wifi connection during the update or not.
    Does that sound right?

Maybe you are looking for

  • Firefox opens, but my tabs are blank. And when I put in any web address it does nothing, just remains blank.

    My internet is working fine, I am in fact writing this on Internet Explorer. But Firefox is my preferred browser. I was using it last night just fine, and I left my computer on sleep, when I booted it up this morning it wouldn't allow me to navigate

  • RFQ (Quotations)  list...??

    Hi MM Gurus, How to get the list of Used Quotations & Non Used Quotations. i am not talking about Open quotation ,closed quotation.. if once i created PO through quotation it should be used quotation. i not created PO through quotation it s should be

  • Make a particular row editable in ALVgrid oo

    hi all,        i have a hotspot in my alv,when hotspot click haapen the particular row should b changed to editable, i have done till the hotspotclick event and the particular row could be poppulated , how it can be changed to editable on that partic

  • Monthly subscription price is too expensive.

    I just wanted to voice my opinion that I think $9.99 a month is too expensive for what this service offers. Hulu plus is only $7.99 a month and I get access to hundreds of videos for visual entertainment that are also accesible on my computer and my

  • Flash crashing my browsers

    i have a dual 1.8ghz g5 with 3gbs of ram. whenever i go online, my computer freezes on flash sites. sometimes immediately, sometimes when i click over to play a video on a site. it also does it in gmail. so i totally wiped my computer and started ove