Concurrency in Database operations with JDBC
Sorry for the somewhat ignorant question
Here it is Are interactions with a database by multiple
entities on the same db tables managed by the database
or are they supposed to be managed by the application?
In specific, additions, commits, and any other write operations...
To be managed by the application.
Similar Messages
-
Database operation with web dynpro java
Hi,
Our portal installed on MaxDB database.We need to develop web dynpro java application has some database opeartions (insert,update, delete, select) on MaxDB database.
1- Is there a blog or sample how can it be done over MaxDB?
2- Is there exploring tool for MaxDB to create tables?
Thanks.hi,
point 1, it is just pure java programing
you can go with this:
ResultSet result = null;
try
InitialContext initialcontext = new InitialContext();
DataSource datasource = (DataSource)initialcontext.lookup("jdbc/<DataSourceName>");
Connection connection = datasource.getConnection();
Statement statement = connection.createStatement();
result = statement.executeQuery( <Query>);
connection.close();
} catch (NamingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
2. maxdb has standard client you can use to manage the database
Best regards,
john -
How to connect mySQL database with jdbc
Who can tell me how to connect mySQL database with jdbc? Thanks
http://onesearch.sun.com/search/developers/index.jsp?and=connect+mysql&nh=10&phr=&qt=¬=&field=title&since=&col=devforums&rf=0&Search.x=24&Search.y=16
-
What type of database operations effectd with Unicode and non unic
Hi Friends,
I want to know what type of database operations effects with Unicode and non Unicode Programing .
Thanks,
Ravi Kumar MukkeraHi ,
Check these links .
http://help.sap.com/saphelp_nw04/helpdata/en/62/3f2cadb35311d5993800508b6b8b11/frameset.htm
https://www.sdn.sap.com/irj/sdn/go/portal/prtoot/docs/library/uuid/ff99cb90-0201-0010-e389 -
How to get the field's type in the database with jdbc?
How to get the one filed's type(varchar,int,long...etc) with jdbc??
Can u help me??
It's best that giving a sample code..Thx for your reply,BheegaChicken! But i use it with
oracle9i jdbc..It doesn't return to my the fields
type correctly..
This is problem is caused by oracle jdbc??
Can u tell me??It depends on the driver classes you are using... some of them don't have an implementation for those methods and you won''t get anything useful. Check the driver documentation.
***Annie*** -
Ifs-21030 Database operation timed out
Hi,
We have installed cmsdk 9.0.4.2.2 with oas10g 10.1.2.0.2. The application runs fine, but sometimes we got the following error:
[AJPRequestHandler-ApplicationServerThread-6] ERROR cmsdk.CmsdkUtil - Error with gettting document
oracle.ifs.common.IfsException: IFS-21030: Database operation timed out
java.sql.SQLException: ORA-01013: user requested cancel of current operation.
I have set the IFS.SERVICE.SESSION.DefaultSearchTimeoutPeriod, but it doesn't help. Normally the documents are displayed immediately, but when the error occurs, it can take 30 min or more. Mostly, but not always, the error occurs on monday morning, while getting the first or second document after the weekend in which the application is not used. Sometimes the first documents comes up immediately, and the second gives the error.
Are the parameters, agents, sessions, .. to configure to avoid this problem?
Can anyone help me with this?
Regards,
ElsI forgot to mention that we use a webservice. This is the complete error from the OC4J instance, found in the <oracle home>\opmn\logs dir
oracle.ifs.common.IfsException: IFS-21030: Database operation timed out
java.sql.SQLException: ORA-01013: user requested cancel of current operation
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:137)
at oracle.jdbc.driver.T2CConnection.checkError(T2CConnection.java:698)
at oracle.jdbc.driver.T2CConnection.checkError(T2CConnection.java:630)
at oracle.jdbc.driver.T2CPreparedStatement.doDefineExecuteFetch(T2CPreparedStatement.java:1142)
at oracle.jdbc.driver.T2CPreparedStatement.execute_for_rows(T2CPreparedStatement.java:1010)
at oracle.jdbc.driver.OracleStatement.execute_maybe_describe(OracleStatement.java:1022)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1109)
at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:2932)
at oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:2973)
at oracle.ifs.server.S_LibrarySession.executeQuery(S_LibrarySession.java:16561)
at oracle.ifs.server.S_LibraryObjectSelector.findObjectById(S_LibraryObjectSelector.java:556)
at oracle.ifs.server.S_LibraryObjectSelector.selectObjectById(S_LibraryObjectSelector.java:494)
at oracle.ifs.server.S_LibrarySession.constructLibraryObjectData(S_LibrarySession.java:8024)
at oracle.ifs.server.S_LibrarySession.getLibraryObjectData(S_LibrarySession.java:7811)
at oracle.ifs.server.S_LibrarySession.getLibraryObject(S_LibrarySession.java:8283)
at oracle.ifs.server.S_LibrarySession.getPublicObject(S_LibrarySession.java:8407)
at oracle.ifs.server.S_LibrarySession.DMgetPublicObjectData(S_LibrarySession.java:8051)
at oracle.ifs.beans.LibrarySession.DMgetPublicObjectData(LibrarySession.java:13209)
at oracle.ifs.beans.LibrarySession.getPublicObject(LibrarySession.java:4944)
at be.kindengezin.cmsdk.CmsdkUtil.getDocument(CmsdkUtil.java:74)
at be.kindengezin.cmsdk.CmsdkUtil.getDocumentMimeType(CmsdkUtil.java:91)
at be.kindengezin.cmsdk.content.CmsdkContentServlet.doGet(CmsdkContentServlet.java:41)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:824)
at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:330)
at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:830)
at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:224)
at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:133)
at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:192)
at java.lang.Thread.run(Thread.java:534)
kind regards,
Els -
Hello,
this is the first time that I work with RMI.
In fact it isn't so hard.
But I've made an interface that do the operations on my database.
Do I also have to program a locking mechanism?
Does anybody made such a system, or what do you recommand.
I want to make a simpel program that uses a database on another pc.
tnxHi Twims
Im asking if you could make me a favor... As I can see you know RMI with JDBC... And at this moment I need a client and server programs to connect to a database, execute SQL commands and retrieve information to client.
If you could send me those programs please do it to [email protected] or [email protected]
Thanks in advance
ANDRES GONZALEZ -
Help creating a login applet with JDBC
Hi, I'm trying to create a login applet using a table from a database (created with Microsoft Access). The bottom line is that I have very little knowledge of ActionListeners. I do know some things about JDBC, but most of it is through notes and lots of reading. I was wondering how to go about looking through a table (with two columns, user and password), to see if it matches what is typed into a JTextField and a JPasswordField. Just a sample piece of code would be helpful. Thank you very much in advanced. Also, I have the GUI done for what I need, just no ActionListeners or JDBC functionality implemented. Here it is:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.sql.*;
public class login extends JFrame /*implements ActionListener*/ {
private Container container;
private GridBagLayout layout;
private GridBagConstraints gbc;
public login()
super("Login");
setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
setSize(300,130);
setLocationRelativeTo(null);
container = getContentPane();
layout = new GridBagLayout();
container.setLayout(layout);
gbc = new GridBagConstraints();
labelUser = new JLabel("Username:");
gbc.insets = new Insets(2,2,2,2);
container.add(labelUser, gbc);
textUser = new JTextField(15);
gbc.gridx = 1;
gbc.gridwidth = 3;
container.add(textUser, gbc);
labelPassword = new JLabel("Password:");
gbc.gridy = 1;
gbc.gridx = 0;
gbc.gridwidth = 1;
container.add(labelPassword, gbc);
textPassword = new JPasswordField(15);
gbc.gridx = 1;
gbc.gridwidth = 3;
container.add(textPassword, gbc);
button1 = new JButton("Login");
gbc.gridy = 2;
gbc.gridx = 1;
gbc.gridwidth = 1;
container.add(button1, gbc);
button2 = new JButton("Cancel");
gbc.gridx = 2;
container.add(button2, gbc);
public static void main(String args[]) {
new login().setVisible(true);
private JButton button1, button2;
private JLabel labelUser, labelPassword;
private JTextField textUser;
private JPasswordField textPassword;
}Thank you again in advanced.Sir,
Much of your question makes middling sense to me. You say applet but you have JFrame for example. I would caution you right now an applet with access for a DB is asking for trouble. Never minding the various security issues Access is not really intended for this sort of operation.
Now none of that actually seems to be your question but I just thought I'd address that before you go too far down a road fraught with peril.
As far as what I think you are asking assuming our table looks like this.
tblUser
username VARCHAR (access text field) primary key
password VARCHAR (again known in access as text)then the code would look something like this...
Connection c; //create your connection
PreparedStatement ps = c.prepareStatement("SELECT username FROM tblUser WHERE username=? AND password=?");
ps.setString(1,usernameVariable);
ps.setString(2,passwordVariable);
ResultSet rs = ps.executeQuery();
if(rs.next()){
// login successful
}else{
// login failed!
rs.close();
ps.close();
c.close();Also duffymo will be unhappy if I don't mention that you will really want to give second thought to mixing your database code with your GUI code. Please take a gander through http://java.sun.com/blueprints/patterns/MVC.html
Sincerely,
Slappy -
With JDBC, calling a stored procedure with ARRAY as out parameter
Hi,
I want to use the data type ARRAY as an out parameter in an Oracle stored procedure. I want to call the stored procedure from
my java program using JDBC.
The problem it's i use a 8.1.7 client to acces with oci to a 7.1.3 Database.
With this configuration I can get back a Cursor but not an Array.
Does it's possible ?
Thanks for your help !
MichaklOriginally posted by JDBC Development Team:
It's very similar to other datatype except that it uses OracleTypes.ARRAY typecode and the value is mapped to a oracle.sql.ARRAY instance. The code looks as follows --
cstmt.registerOutParameter (idx, OracleTypes.ARRAY, "VARRAY_TYPE_NAME_HERE");
cstmt.execute ();
ARRAY array = (ARRAY) cstmt.getObject (idx);
Thanks for your reply.
I have to use:-
OracleCallableStatement cs1 = (OracleCallableStatement )conn.prepareCall
( "{call proj_array(?)}" ) ;
for retrieving a collection as an OUT parameter.
This gives me the errors:-
C:\jdbc\VarraySQL.java:0: The method oracle.jdbc2.Blob getBlob(int) declared in class oracle.jdbc.driver.OracleCallableStatement cannot override the method of the same signature declared in interface java.sql.CallableStatement. They must have the same return type.
import java.sql.*;
^
C:\jdbc\VarraySQL.java:0: The method oracle.jdbc2.Array getArray(int) declared in class oracle.jdbc.driver.OracleCallableStatement cannot override the method of the same signature declared in interface java.sql.CallableStatement. They must have the same return type.
import java.sql.*;
^
C:\jdbc\VarraySQL.java:0: The method oracle.jdbc2.Clob getClob(int) declared in class oracle.jdbc.driver.OracleCallableStatement cannot override the method of the same signature declared in interface java.sql.CallableStatement. They must have the same return type.
import java.sql.*;
^
C:\jdbc\VarraySQL.java:0: The method oracle.jdbc2.Ref getRef(int) declared in class oracle.jdbc.driver.OracleCallableStatement cannot override the method of the same signature declared in interface java.sql.CallableStatement. They must have the same return type.
import java.sql.*;
^
How do I get rid of these errors?
null -
I have a problem with JDBC Realm in Tomcat/Oracle/Win XP
I have a problem with JDBC Realm in Tomcat.
I have attached my server.xml file located in the
C:\Program Files\Apache Software Foundation\Tomcat 5.5\conf\server.xml
The Problem is that when I login I get the user name and password prompt but it does not resolve.
When I enter in the tomcat-users.xml password with memory realm uncommented it works fine.
C:\Program Files\Apache Software Foundation\Tomcat 5.5\conf\tomcat-users.xml
Is there a cache or something I need to reset for the JDBC Realm to work?
I have attached my tables and contents as well...
Did I miss something????
Thanks
Phil
server.xml
<Server port="8005" shutdown="SHUTDOWN">
<Listener className="org.apache.catalina.mbeans.ServerLifecycleListener" />
<Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" />
<Listener className="org.apache.catalina.storeconfig.StoreConfigLifecycleListener"/>
<!-- Global JNDI resources -->
<GlobalNamingResources>
<!-- Test entry for demonstration purposes -->
<Environment name="simpleValue" type="java.lang.Integer" value="30"/>
</GlobalNamingResources>
<!-- Define the Tomcat Stand-Alone Service -->
<Service name="Catalina">
<!-- Define a non-SSL HTTP/1.1 Connector on port 8080 -->
<Connector
port="8080" maxHttpHeaderSize="8192"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" redirectPort="8443" acceptCount="100"
connectionTimeout="20000" disableUploadTimeout="true" />
<!-- Define an AJP 1.3 Connector on port 8009 -->
<Connector port="8009"
enableLookups="false" redirectPort="8443" protocol="AJP/1.3" />
<!-- Define the top level container in our container hierarchy -->
<Engine name="Catalina" defaultHost="localhost">
<!--
<Realm className="org.apache.catalina.realm.MemoryRealm" />
-->
<Realm className="org.apache.catalina.realm.JDBCRealm"
driverName="oracle.jdbc.driver.OracleDriver"
connectionURL="jdbc:oracle:thin:@localhost:1521:orcl"
connectionName="testName" connectionPassword="testPass"
userTable="users"
userNameCol="user_name"
userCredCol="user_pass"
userRoleTable="user_roles"
roleNameCol="role_name" />
<!-- Define the default virtual host
Note: XML Schema validation will not work with Xerces 2.2.
-->
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
</Host>
</Engine>
</Service>
</Server>
Tables
create table users
user_name varchar(15) not null primary key,
user_pass varchar(15) not null
create table roles
role_name varchar(15) not null primary key
create table user_roles
user_name varchar(15) not null,
role_name varchar(15) not null,
primary key( user_name, role_name )
select * from users;
----------------------+
| user_name | user_pass |
----------------------+
| tomcat | tomcat |
| user1 | tomcat |
| user2 | tomcat |
| user3 | tomcat |
----------------------+
select * from roles;
| role_name |
| tomcat |
| role1 |
select * from user_roles;
-----------------------+
| role_name | user_name |
-----------------------+
| tomcat | user1 |
| role1 | user2 |
| tomcat | tomcat |
| role1 | tomcat |
-----------------------+Jan 2, 2008 11:49:35 AM org.apache.coyote.http11.Http11Protocol init
INFO: Initializing Coyote HTTP/1.1 on http-8080
Jan 2, 2008 11:49:35 AM org.apache.catalina.startup.Catalina load
INFO: Initialization processed in 734 ms
Jan 2, 2008 11:49:35 AM org.apache.catalina.core.StandardService start
INFO: Starting service Catalina
Jan 2, 2008 11:49:35 AM org.apache.catalina.core.StandardEngine start
INFO: Starting Servlet Engine: Apache Tomcat/5.5.9
Jan 2, 2008 11:49:35 AM org.apache.catalina.realm.JDBCRealm start
SEVERE: Exception opening database connection
java.sql.SQLException: oracle.jdbc.driver.OracleDriver
at org.apache.catalina.realm.JDBCRealm.open(JDBCRealm.java:684)
at org.apache.catalina.realm.JDBCRealm.start(JDBCRealm.java:758)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1004)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:442)
at org.apache.catalina.core.StandardService.start(StandardService.java:450)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:683)
at org.apache.catalina.startup.Catalina.start(Catalina.java:537)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:271)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:409)
Jan 2, 2008 11:49:35 AM org.apache.catalina.core.StandardHost start
INFO: XML validation disabled
Jan 2, 2008 11:49:36 AM org.apache.catalina.core.StandardContext resourcesStart -
Database selection with invalid cursor !
hi experts,
When execute SAP BW processchar, it occur some system error: (sm21)
Database selection with invalid cursor
The database interface was called by a cursor (in a FETCH or CLOSE
cursor operation) that is not flagged as opened. This can occur if a
COMMIT or ROLLBACK was executed within a SELECT loop (which closes all
opened cursors), followed by another attempt to access the cursor (for
example, the next time the loop is executed).
this error occur when apply bw support package 19.
sap notes 1118584 Solution is: Import Support Package 17 . but my support package is 19.
how can i solve this error?
thanks,
xwu.I am only assuming things, but it might be worth to look closely if you were experiencing an ORA- error during the execution. This could have caused a rollback and thus closed the cursor. Please check the job log, the workprocess trace (dev_wX file) and the system log SM21 and ST22 as well.
Besides that check the oracle alertlog and the usertrace destination.
Best regards, Michael -
Database selection with invalid cursor with MaxDB database
Hi Experts,
I encountered the this error:
"Database selection with invalid cursor
The database interface was called by a cursor (in a FETCH or CLOSE
cursor operation) that is not flagged as opened. This can occur if a
COMMIT or ROLLBACK was executed within a SELECT loop (which closes all
opened cursors), followed by another attempt to access the cursor (for
example, the next time the loop is executed)."
We are using bw support package 19 early this month. Previously is working fine but this problem occured from the last 2 days.
We are using MaxDB database.
Really appreciate any speedy responds.Hi,
We finally resolved the issue.
The solution:
We check the RFC connection test in SM59. There are connection error.
There is an error that related J2EE_ADMIN user.
SO we reset the J2EE_ADMIN id in SU01.
The problem goes away.
Many thanks -
Load data error: Database selection with invalid cursor (sm21)
hi experts,
when I execute processchar, it occur some system error:
"Database selection with invalid cursor ",
"Documentation for system log message BY 7 :
The database interface was called by a cursor (in a FETCH or CLOSE
cursor operation) that is not flagged as opened. This can occur if a
COMMIT or ROLLBACK was executed within a SELECT loop (which closes all
opened cursors), followed by another attempt to access the cursor (for
example, the next time the loop is executed). "
the error msg occur when apply bw support package19.
data from DSO to CUBE, Transferred Recodes is not zero, but Added Recodes is zero.
Request status always yellow, process is running.
current sys info: BI7 and BW19, BASIS17,PI_BASIS17, the database is oracle10g R2.
thanks for your help.I have solved this issue, The Oracle checkpoint not complete.
thanks,
xwu. -
Processchar occur error: Database selection with invalid cursor (sm21)
hi,
when I execute processchar, it occur some system error:
"Database selection with invalid cursor ",
"Documentation for system log message BY 7 :
The database interface was called by a cursor (in a FETCH or CLOSE
cursor operation) that is not flagged as opened. This can occur if a
COMMIT or ROLLBACK was executed within a SELECT loop (which closes all
opened cursors), followed by another attempt to access the cursor (for
example, the next time the loop is executed). "
the error msg occur when apply bw support package19.
data from DSO to CUBE, Transferred Recodes is not zero, but Added Recodes is zero.
Request status always yellow, process is running.
current sys info: BI7 and BW19, BASIS17,PI_BASIS17, the database is oracle10g R2.
thanks for your help.I have solved this issue , The Oracle checkpoint is not complete.
thanks,
xwu. -
How to select value from database view with * in wher clause
Hi ,
I ahve a database view with some fields.
Now my requirement is to serach a single row on the basis of process type.
Process type can have values like ZBA,ZBC,ZBD,ZBE or similarly anything starting with ZB.
Now i know that starting two letters will be ZB , but dont knwo the last letter.
So how should i use select query for the same?
Should i use like operator for the same?
regards
PGhi,
u can use character '%'.sample code like this
SELECT reltype
instid_a
catid_a
instid_b
FROM /dbm/ord_docflow
INTO TABLE it_link
FOR ALL ENTRIES IN it_pnwtyh
WHERE instid_a = it_pnwtyh-instid_a AND
instid_b LIKE 'QMSM%' AND
typeid_a = 'BUS2400' AND
typeid_b = 'BUS2400' AND
catid_a = 'BO' AND
catid_b = 'BO' AND
reltype = 'VONA'.
this is similar to using* while we fetch values from table.in the above code only i no QMSM rest values not sure,so used QMSM%
Maybe you are looking for
-
CSS height property use in Fluid grid layout
Hi, I'm totally new to fluid grid layout and just got started in it. I have a div tag that has 5px height and I sucessfully applied that and seem fine only on Tablet landscape (1024x768) and Small tablet landscape (800x600), nevertheless it isn't eve
-
when i try to open firefox 4,it wont open but a window opens up saying it couldnt initiate security file....then opens to a blank page and doesnt work...would also freeze up when it worked the very few times
-
Hi all, I am struggling to install Forms 10G on Windows server 2008 machine. Can you please help me finding the solution. Its very urgent and nobody in our team or onsite team knows about it. Please, its very urgent and really helpful to me. Thank yo
-
Compatibility issue with Nikon's D700 and Aperture downloading RAW files.
Need a little help with this one - purchased a NIKON D700 (today) and tried to download RAW files into Aperture - got a bad message - unsupported image format - (shows on a reddish background) I worked on the problem for about 4 hours, both with the
-
Adding UI elements to Abstract Portal Component??
Hi, I want to create an abstract portal component in PDK with a textarea and a submit button..On clicking the submit button I want to store the textarea content in a file..So can anyone provide me the solution to this soon?? Regards, Udit