Problems Using JDBC

Hi,
I am trying to connect to a database using JDBC. But I get the invalid logon error. The surprising thing is that I can use the exact same username ("sys as sysdba") and the same password to login using SQLPlus. Anybody have any ideas why this might be happening?
Cheers
Suchit

A couple points
1) Your JDBC application should almost certainly not be trying to connect to an Oracle database using the SYS account (unless you're building a replacement for OEM). The SYS account is the most powerful account in the database and should not be used except for a handful of administrative actions. SYS is special-- there are a number of rules that don't apply to it that are likely to cause you frustration over time because things like the recycle bin work differently for SYS than for other users.
2) Your application should never create tables in the SYS schema. That is a no-no, it's unsupported, and generally no good will come of it.
So it is probably a good thing that your application started having problems connecting as SYS-- that should just reinforce the habit of creating new users, assigning those users appropriate privileges, and installing your application tables in that new schema. There are any number of things that you might have changed that would cause problems-- you're probably better off not trying to debug this problem. If you're still curious, can you post the exact Oracle error you are getting and the exact JDBC connection string you are using?
Justin

Similar Messages

  • Any reported problems using jdbc over a WAN?

    If im trying to connect to a Database that's on a WAN will I experience any issues in using jdbc to connect and execute queries to that database?
    I know problems would come up if my wan network is slow, but has jdbc been able to handle long distance database queries? timeout values?

    but why?
    is it because of security? If a company had a database with your personal info hanging out on the Web for anyone to query without any validation or security, how would you feel about it?
    design pattern issues? It's just good layered design.
    just doesnt make sense?Not in my opinion.
    have u experienced/heard of any problems of
    connecting to a database over a WAN and executing
    queries?You don't say anything about who the client is. If the database is behind a firewall, outside clients shouldn't be able to access the port where the listener is running. Only port 80 should be open on that firewall.
    So you either write a servlet that listens on port 80 for HTTP requests from a browser-based client OR you ask your firewall admin to punch a hole in the firewall and open up the port on which your database is listening for queries and use a Swing client.
    If s/he agrees to do it, quit immediately. It means your company doesn't know anything about security.
    %

  • Problem using JDBC to connect to WBEM ODBC driver

    Hello,
    I've got a problem to connect to WBEM ODBC driver using JDBC. The error is:
    exception due a la requetejava.sql.SQLException: [Microsoft][WBEM ODBC Driver]Unable to connect
    When I try to connect to a MS access database, replacing only the ODBC source name, it's working. I can access to the MS access db. But when I put the WMI ODBC source name, WMI, I've got this error.
    Does anybody know what could happened? Is it possible to access to WMI through JDBC? With MS access, accessing WMI ODBC is working !
    Thanks very much for your help.
    Here is the part of the source code :
    import java.sql.*;
    import java.io.*;
    public class Main_1 {
    /** Creates a new instance of Main_1 */
    public Main_1() {
    * @param args the command line arguments
    public static void main(String[] args) {
    try {
    String url = "jdbc:odbc:WMI";
    Class.forName ("sun.jdbc.odbc.JdbcOdbcDriver");
    Connection con = DriverManager.getConnection(url);     
    String query = "Select * from Win32_Processor";
    //String query = "Select * from test;";
    ResultSet results;
    Statement stmt = con.createStatement();
    results = stmt.executeQuery(query);
    //System.out.println (results);
    catch(Exception e){
         System.out.println("exception due a la requete" + e);
    e.printStackTrace();
    }

    you have to first start the network listener before you can run the program
    start TNSLSNR before running the jdbc program

  • Problem using Jdbc-Odbc Bridge

    Hi,
    I am using Java 2 SDK and I am trying to access MS Access database on my machine using Jdbc-Odbc bridge. I have set up the DSN in ODBC. But I get the following error when I run my program -
    'No Suitable Driver'
    Here's my code snippet-
    Class.forName ("sun.jdbc.odbc.JdbcOdbcDriver");
    String dsn = "jdbc:odbc:DriverInfoDB";
    Connection con = DriverManager.getConnection(dsn,"","");
    con.setAutoCommit(false);
    Statement stmt;
    String query = null; // SQL select string
    ResultSet rs; // SQL query results
    stmt = con.createStatement();
    .....etc etc...
    Where is the error in this code??
    Help Needed!!
    Thanks
    Vivek.

    try
    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
    Connection con = DriverManager.getConnection(dsn,"guest","guest");
    OR DriverManager.getConnection(dsn);
    System.out.println("Conection's opened");
    catch(ClassNotFoundException cnfe)
    System.err.println(cnfe);
    catch(SQLException sqle)
    System.err.println(sqle);
    try that code and double check you DSN Name . it's a good practice to greate a system DSN.
    i hope that helps.
    FEEL FREE TO ASK. WON'T BITE U
    ABDUL

  • Problem using JDBC and MS SQL Server

    I got a problem trying to acces a database on my SQL Server. I created the table and my connection seems ok, but when i try to get some data from a table, this happens (see below).
    java.sql.SQLException: [Microsoft][ODBC SQL Server Driver][SQL Server]Invalid object name 'players'.
    at sun.jdbc.odbc.JdbcOdbc.createSQLException(JdbcOdbc.java:6879)
    at sun.jdbc.odbc.JdbcOdbc.standardError(JdbcOdbc.java:7036)
    at sun.jdbc.odbc.JdbcOdbc.SQLExecDirect(JdbcOdbc.java:3065)
    at sun.jdbc.odbc.JdbcOdbcStatement.execute (JdbcOdbcStatement.java:338)
    at sun.jdbc.odbc.JdbcOdbcStatement.executeQuery(JdbcOdbcStatement.java:253)
    at Team.<init>(Team.java:18)
    at Simulator.main(Simulator.java:5)
    here's the code that i used to access the db with:
    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
    Connection conn = DriverManager.getConnection
    ("jdbc:odbc:BRAIN2WINXPPJH","sm","sm");
    Statement stm = conn.createStatement();
    String query = "Select * from players where teamnr = " + nr +
    " order by squadnr";
    ResultSet rs = stm.executeQuery(query);
    any help is more than welcome
    tnx
    Jo

    If all the tables are in the same database, you can use
    Connection.setCatalog("db-name")
    to change the current database. But the suggestion to include the database name in the SQL statement is safer, because you do not need to worry about changing the database at the right point.
    Thomas

  • Problem using JDBC driver with JSP

    Hi, I am trying to connecto to my mysql server via a JSP page, but it seems that there is a problem with the driver call or something in my configuration that unables me to connect. I have the mysql-connector-java-3.0.7-stable driver.
    This is how my classpath looks like:
    CLASSPATH=/home/hooper/Sources/mysql-connector-java-4.0.7-stable/lib:/home/hooper/Sources/mysql-connector-java-3.0.7-stable/com:/home/hooper/Sources/mysql-connector-java-3.0.7-stable/mysql-connector-java-3.0.7-stable-bin.jar:/usr/java/j2sdk1.4.1_02:.:/usr/java/j2sdk1.4.1_02/lib/tools.jar:/usr/java/j2sdk1.4.1_02
    And this is my JSP page code:
    <%@ page language="java" import= "java.sql.*"%>
    <%
    Connection con = null;
         String userName = "hooper";
         String password = ""; //No password
         String url = "jdbc:mysql://localhost/test";
         //Load the Driver class file
         Class.forName("com.mysql.jdbc.Driver");
         //Make a connection to the MySQL database
         con = DriverManager.getConnection (url, userName, password);
         out.println ("Database connection established");
              if (con != null){
                   //Close the connection
                   con.close();
    %>
    And this is the error I get from Tomcat4.1.18:
    HTTP Status 500 -
    type Exception report
    message
    description The server encountered an internal error () that prevented it from fulfilling this request.
    exception
    org.apache.jasper.JasperException: com.mysql.jdbc.Driver
    root cause
    javax.servlet.ServletException: com.mysql.jdbc.Driver
    I hope someone can help me with this.
    Thanks,
    Luis

    Hi..
    Try using this way
    String userName = "hooper";
    String password = ""; //No password
    String url = "jdbc:mysql://localhost:3306/test";
    Class.forName("org.gjt.mm.mysql.Driver");
    try to download the driver for mysql and add it to your classpath
    Hope this works
    Regd
    Vasi

  • Problem using JDBC Connector

    Hi,
    I have problem connecting to MS SQL Server using the JDBC Connector. I have 2 main questions, one is on the DQE and the other is on user mapping.
    I have a created a JDBC System Landscape using the portal component com.sap.portal.systems.jdbc.
    Following are the properties I have set and also I have listed where I am finding propblems.
    - User Management
    User MApping Type : Admin, User
    - Connection Properties
    Connection Timeout: 1000
    Connection URL: jdbc:microsoft:sqlserver://10.7.1.5:1433;DatabaseName=SAPEP
    Driver Class Name: com.sap.portals.jdbc.sqlserver.SQLServerDriver
    (Here I do not know whihc driver to use. Do I have to use the above one or this one com.microsoft.jdbc.sqlserver.SQLServerDriver. Anyway, both of them Did not work)
    - Distributed Query Engine (DQE) (What is this, and what Parameters I need to pass here)
    Also, While doing the user mapping, we need to provide the username and password. What username and password is that? Is it the DB user name and Password?
    Any help will be well appriciated.
    Thanks and regards,
    Babu

    Hi Babu,
    Here's what's needed in the system (examples are from my system):
    CONNECTION PROPERTIES:
       -- Connection URL: jdbc:sap:sqlserver://p031617:1433;DatabaseName=pubs
       -- DRIVER CLASS NAME: com.sap.portals.jdbc.sqlserver.SQLServerDriver
       -- VALIDATE CONNECTION: yes
    USER MANAGEMENT:
       -- USER MAPPING TYPE: admin, user
    DQE: Put in admin user/password (DQE is for distributed queries between multiple, heterogeneous databases, but you still need to use it for simple queries)
    Create an alias
    Go to User Administration and set user mapping for the admin user
    Test connection
    Each user that access the system will need user mapping.
    Hope this helps.
    Daniel

  • Problem using JDBC Thin driver with Oracle 8i Personal Edition

    Hi all, I have an issue I have been unable to figure out. In order to make my code as portable as possible I am using the JDBC thin driver to access my database. I have been able to connect to an instance of Oracle 8i on a Sun box by hardcoding the following string into getConnection() call:
    conn = DriverManager.getConnection("jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(COMMUNITY=tcp.world)(PROTOCOL=TCP)(Host=<myhostname>)(Port=1521))(ADDRESS=(COMMUNITY=tcp.w orld)(PROTOCOL=TCP)(Host = <myhostname>)(Port = 1526)))(CONNECT_DATA = (SID = <mysidname>)))", <myuser>, <mypassword>);
    My problem is that I cannot figure out what string to use to connect to my local instance of Oracle 8i Personal. I used the following string (the sid I got from the looking at the init.ora file):
    conn = DriverManager.getConnection("jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(COMMUNITY=tcp.world)(PROTOCOL=TCP)(Host=localhost)(Port=1521))(ADDRESS=(COMMUNITY=tcp.world)(PRO TOCOL=TCP)(Host = localhost)(Port = 1526)))(CONNECT_DATA = (SID = orcl)))", "scott", "tiger");
    That didn't work, so I took the only entry found in my tnsnames.ora file in as:
    conn = DriverManager.getConnection("jdbc:oracle:thin:@(DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0)))(CONNECT_DATA = (SID = PLSExtProc)(PRESENTATION = RO)))", "scott", "tiger");
    I am not knowing what is wrong, but that didn't work neither. Any suggestions would be highly appreciated.
    Thanks....
    null

    try this:
    conn = DriverManager.getConnection("jdbc:oracle:thin:scott/tiger:@hostname:1521:sid");
    or use system/manager as username/passward
    null

  • Problem using JDBC connection

    I'am using 9iAS R2 and I have a entity bean using a DataSource with out any problem, but I also have a client program using the same datasource. I can lookup the datasource without any problems, I get a connection, but when I try to createStatement() on the connection I get an Exception see below.
    I hope some one can help me!
    Regards
    Morten
    java.lang.NullPointerException
         at com.evermind.sql.OrionPooledDataSource.addUsedConnection(OrionPooledDataSource.java:539)
         at com.evermind.sql.OrionPooledDataSource.getPooledInstance(OrionPooledDataSource.java:290)
         at com.evermind.sql.OrionCMTConnection.setConnection(OrionCMTConnection.java:189)
         at com.evermind.sql.OrionCMTConnection.intercept(OrionCMTConnection.java:127)
         at com.evermind.sql.FilterConnection.getMetaData(FilterConnection.java:75)
         at com.evermind.sql.FilterConnection.getMetaData(FilterConnection.java:76)
         at dk.modulus.regelmaskine.RegelParamDAO.getRegelParametre(RegelParamDAO.java:33)

    Hi Morten,
    Have you tried running OC4J in "debug" mode? This web page has more details:
    http://kb.atlassian.com/content/atlassian/howto/orionproperties.jsp
    You may also like to try "P6Spy"
    http://www.theserverside.com/home/thread.jsp?thread_id=8337
    And here is a web page from Oracle's "Technet" site regarding debugging
    OC4J:
    http://otn.oracle.com/tech/java/oc4j/htdocs/oc4j-logging-debugging-technote.html
    Hope this helps you.
    Good Luck,
    Avi.

  • Problem using JDBC (JNDI) DataSource and data-sources.xml w/ OC4J

    I have a JClient application developed in JDev X. It works fine when using a JDBC URL for the connection (which then writes the connection into the BC4J.xcfg files, one for each application module). However, I would like the app to retrieve the data source from the server's data-sources.xml file. However, when, on the configurations tab of the application module I set the connection type to JDBC DataSource, and give it the JNDI name, it does not work, either with the embedded OC4J or the stand-alone OC4J. Any suggestions???
    In the stand alone OC4J I verified that the data source exists (using java -jar admin.jar ormi://nemethzoltan3 admin welcome -application adatklinika -testDataSource -location jdbc/adatklinikaCoreDS) ... so the data source is defined in the data-sources.xml. Of course the error I get is JBO-30003.
    If I just try to "test" the data source in Jdeveloper (using the context menu of the app module, and setting it to use the adatklinikaCoreDS) I get a JNDI error: unable to lookup data source and at level 3 a "javax.naming.NoInitialContextException: Need to specify class name in environment or system property, or as an applet parameter, or in an application resource file: java.naming.factory.initial". I checked, the data source is defined under tools->embedded OC4J properties->data sources.
    If I try to run the main form, simply nothing happens.
    Please help!!!

    Ok, figured out why running from jdeveloper wasn't working: the embedded OC4J server wasn't started (start it by running an html page from your project or something...and make sure you don't have a stand-alone oc4j running). AND more importantly it didn't have the library "embedded oc4j client" library included (project properties -> profiles -> development -> libraries)...which is needed for whatever reason.
    Now to try and get it working with the stand-alone OC4J...

  • Problem in JDBC , when using LIKE operator. - VERY URGENT

    Problem in JDBC , when using LIKE operator.
    LINE 1 : String temp = "AA";
    LINE 2 : String query = "select * from emp where EMPNAME like '*temp*' ";
    LINE 3 : Staement st = con.createStaement();
    LINE 4 : ResultSet rs = st.executeQuery(query);
    '*' character is not getting evaluated. In MS ACCESS2000 only * is accepted instead of '%'. Moreover in MS ACCESS the like operator has to be used within double quotes as a String. whereas in other databases, it accepts single quotes as a String.
    Ex:
    In MS ACCESS
         select * from emp where ename like "*aa*";
    Other Databases
         select * from emp where ename like '%aa%';
    In my situation iam passing a Variable inside a like operator and '*' is used.
    For the above Scenario, Please help me out.
    If possible Kindly let me know the exact Syntax.
    Please give me the answer as LINE1,LINE2,LINE3,LINE4,
    I have verified in JDBC Spec also, it has been specified to use escape sequence.that too did not work.
    Due to this, My project is in hold for about 4 days. I could not find a suitable solution.
    Please help me out.

    I made a LIKE clause work with M$ Access, using PreparedStatement and the % wildcard:
                escapeStr                   = "%";
                String sql                  = "SELECT USERNAME, PASSWORD FROM USERS WHERE USERNAME LIKE ?";
                PreparedStatement statement = connection.prepareStatement(sql);
                statement.setString(1, ("user" + escapeStr));
                ResultSet resultSet         = statement.executeQuery();
                while (resultSet.next())
                    System.out.println("username: " + resultSet.getObject("USERNAME") + " password: " + resultSet.getObject("PASSWORD"));

  • Problem in using JDBC Execute commands(Update & Delete Only) with af:Table

    HI Everyone,
    I have one issue with Updating and Deleting Row Data using JDBC Execute commands.
    Suppose In My Application i have two pages, in Page 1 I have Two Command Buttons(Delete and Save) and One Input TextBox to write the String to be stored in the Database. and Page 2 where the result Table is shown and table is binded with a ViewObject, Now When User Types some String in InTB and click Save then By Programmatically I'm searching, that string is already present in database or not, if it is already exist then Save button converts in Update button and instead of inserting it allows user to Update the String already exist in database.
    Everything is working fine but the problem comes when i put those all buttons on the same page where result table is present.After putting all things on the same page and When i click save button to insert new String it is Successfully inserting but when any of other action is performed like updating or Deleting the existing one.. then my application just hanged and then nothing I able to do.
    Please Help me to understand this problem and give me the solution for this..
    Thanks
    Fizzz...

    Hi frank,
    Thanks to reply me...
    I'm refreshing table's iterator on each command button's action to reflect the changed result... and i'm sorry i mentioned two pages in my project.. actually these are two forms in the same page..which conditionally changed its renderer properties.. its working fine when only one form is renderred and the otherside when both are rendered then it is not working.
    Hope this change will help you to understand the problem.. if something else you are looking for then please tell me..
    Thanks
    Fizzz...

  • Problem with Progress DB while using to connect using JDBC Adapter

    Hi,
      I am facing Problem with Progress DB while using to connect using JDBC Adapter. I am getting the following error in auditlog file like,
    Error during database connection to the database URL  jdbc:JdbcProgress:T:156.5.31.65:2545:/mfgprodev/devbadb 
    /devsche/i_apoext.db using the  JDBC driver "com.progress.sql.jdbc.JdbcProgressDriver" : com.sap.aii.adapter.jdbc.sql.DriverManagerException: Unable to locate a suitable JDBC driver to establish a connection to URL " jdbc:JdbcProgress:T:156.5.31.65:2545:/mfgprodev/devbadb 
    /devsche/i_apoext.db "
    I tried using the following all URLs,
    1. jdbc:JdbcProgress:T:156.5.31.65:2545:i_apoext.       
    2. jdbc:JdbcProgress:T:156.5.31.65:2545:i_apoext.db     
    3.                                                      
    jdbc:JdbcProgress:T:156.5.31.65:2545:/mfgprodev/devbadb 
    /devsche/i_apoext.                                      
    4.                                                      
    jdbc:JdbcProgress:T:156.5.31.65:2545:/mfgprodev/devbadb 
    /devsche/i_apoext.db.                                  
    Can anyone please help me out in solving this issue.
    May be the cause for this is :
    1) The Wrong URL  format
    2) CLASSPATH is not setted properly..
    Can you look more into this stuff.
    Thanks,
    Soorya.

    Hi,
    To access any database fromm XI, using the JDBC adapter, the corresponding drivers have to be installed on the XI server.
    Just check this note 831162.
    Also, check this PDF to install Drivers in XI,
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/3867a582-0401-0010-6cbf-9644e49f1a10

  • Problem in back to back interface calls using JDBC adpater

    Hi,
    I am facing a problem while using the JDBC adapter from XI to oracle for back to back iterface calls.
    as my scenario is as follows i am doing synchronus call with the first interface which is working fine, immediately after the synchronus call i am doing a asynchronus call which is showing as successfull in XI but it is not at all reaching to oracle side as it is supposed to update a table in oracle using a stored procedure.
    any idea what could be the problem?
    Shravan

    Hi Shravan,
    It would be helpful if you could tell us the error thrown
    by your JDBC adapter in the <b>RWB--> ADAPTER MONITORING</b>.
    Also, if possible can you give us the message being passed to your JDBC adapter.
    meanwhile, just check your JDBC adapter document format against the formats in this link.
    http://help.sap.com/saphelp_nw04/helpdata/en/2e/96fd3f2d14e869e10000000a155106/content.htm
    For execution of a stored procedure using JDBC adapter, make sure that the action attribute is
    <b>EXECUTE</b> and the table name provided is the name of the STORED PROCEDURE.
    Regards,
    Bhavesh

  • Weird Problem calling Stored Procedure using JDBC

    Scenario is..
    I have J2EE application and calling stored procedure using JDBC.
    My application connects to instance "A" of testDB.
    Schema "A" does NOT own any packages/procedure but granted execute on oracle packages/procedures that reside in schema "B" of testDB.
    In java code I call procedure(proc1) in package(pac1) which internally calls procedure(proc2) in package(pac2).
    The problem occurs when procedure pac2.proc2 is modified. After the modification, my java code fails and throws an exception "User-Defined Exception" and I am also getting "ORA-06508: PL/SQL: could not find program unit being called". This clears up only if I bounce the web container. (This doesn't happen if I modify pac1.proc1 and run my application)
    Has any one faced this problem? Please suggest if any thing can be changed in jdbc code to fix this problem.
    Thanks

    Hi,
    I assume these are PL/SQL packages and that the changes are made at the package specification level?
    If so, it looks like you are hitting the PL/SQL dependencies rules. In other words, if the spec of proc2 is changed, then proc1 is invalidated, since proc1 still depends on the old version of proc2's spec. As a result, if you try to run proc1, its spec must either be explicitly rewritten before it could run again or implicitly recompiled first, if the (implicit) recompilation fails, it won’t run.
    Kuassi http://db360.blogspot.com

Maybe you are looking for

  • You Tube videos no longer work after Flash Player upgrade

    I am running Win XP 2002 with SP3 and Firefox 3.6.15.  I just upgraded flash player and now the You Tube videos no longer display.  The You Tube sound works.  IE has not be affected and I can see the You Tube videos.  Firefox does display videos from

  • Have new iMac. My Mac Pro went down in a fire...

    I had a house fire and my Mac Pro went down. I have all 4 hard drives with Snow Leopard on one of them from the computer. I bought an iMac as a temp stepping stone before I get another Mac Pro. In the meantime all I really need from the Snow Leopard

  • Connetion Error... Connection timed out.

    I have just installed itunes latest version on my computer, and while it is connecting, it is very slow and I frequently recieve a timed out error, asking me to check my connection settings. My guess is that something is conflicting with it due to ap

  • XML refresh within a PDF

    I was wondering if it's possible to refresh XML data imbedded in the report once it's been exported to a PDF?

  • 5800 mailboxes suddenly empty after 1 year

    Hello, I´ve had my nokia xpressmusic 5800 for almost a year now and I´ve never had any problems with my email boxes.. In fact it was all working allright yesterday. But when I checked my mailboxes today, I found all the messages in the inboxes gone..