oracle CRUD frontend - oracle

We have an existing system using Oracle DB and several applications working on/off it using JDBC/ODBC etc. For an additional interface for CRUD operations I am looking at a web based front-end. I dont see a whole of ideas in this areas, maybe because the ORacle DB is mostly enterprise and probably means the enterprises building their own custom apps?
Using the Oracle REST API services, build a front end using Angular/JS. This eliminates any need for oracle specific server side logic and almost ORacle independent. Are there any frameworks / opensource tools that fall in this area?
Please let me know any comments / feedback on this approach.

As far as I know there aren't really any options like this specifically for Oracle databases. You might be better off going with a desktop solution, of which there are many.
There is a web UI called "H2 Console" which claims to work with any JDBC connection. I have used this with MySql before with great success but have not tried it with Oracle.
The H2 Console application lets you access a database using a browser. This can be a H2 database, or another database that supports the JDBC API.
If you want something more 'user friendly' then as far as I know there are no existing solutions for this. You will probably have to build your own or educate your users on SQL.

Related

difference between apex and adf

What would be better if need to migrate from Oracle Forms 10g , Either Apex or ADF
If Apex then Why and Why not ADF
If Adf then Why and Why not Apex
Obviously, this will be an opinion-based answer.
They say "Forms is dead" for at least two decades now, but - Forms is still alive. Guys in India still develop applications in 6i, I'm not sure they switched to web yet (how do I know? By reading questions on different Oracle forums).
ADF looked like a great choice for everyone who wanted to abandon Forms. ADF looks pretty. ADF is Java. I don't like Java (but that's irrelevant). ADF is not a simple tool and people who don't speak Java can expect certain problems. You probably know how simple it is to create a master-detail form (for example, based on Scott's EMP and DEPT tables) using Forms? Matter of minutes. I don't know about ADF, but I've watched a Java developer who spent hours (literally) to do the same task (while, at the same time, another person created it in Delphi even faster than in Forms).
APEX is way simpler than ADF (and Forms, to be honest). All you need is a web-browser. No complex IAS or Web logic installation, JInitiator and stuff ... OK - embedded listener does its job if it must, but you'd better switch to ORDS. If you have fair (PL/)SQL background, creating an Apex application is matter of several hours/days, and you'll have a nice-looking application. How robust is it? Quite, as far as I can tell. What about you, as a developer? Lucky you, you came when Apex 19.x is out. In pre-dynamic actions era (3.x), you'd suffer in pain because Forms does everything with triggers - there are none in Apex. But now, now you have dynamic actions which are the closest thing to triggers so far.
If you keep the logic in the database (stored procedures, packages) and let APEX take care about nice presentation to users, you shouldn't expect too many problems. I've heard (just yesterday) that ADF developer I know does the same - keeps everything in the database and uses ADF to create a nice application. Users don't like Forms applications because they look ugly. But hey, what do they know? Forms applications - if well written - are really good, robust, reliable piece of software.
I've heard (on one of OUG conferences) that - on OpenWorld - there were zillion APEX presentations and zero ADF ones. Apex is in nowadays, ADF seems to be out.
Would I want to migrate my Forms applications to anything? No, I wouldn't. I sympathize with you.
Depends on the experience and knowledge of your developers and what language you want to develop in.
ADF is actually 2 products (well, really 4...) ADF Business Components (ADF BC) is the back-end server ORM framework and ADF Faces (JSF) is for front end server generated Web Pages.
ADF is a full JEE Solution using servlets, JSP/JSF, ORM and sophisticated concurrency and data management. It is for those who want a Java solution for their Apps. That being said, most ppl are leaving ADF Faces (Front End) for JET (JS) or APEX (PL/SQL) and are choosing ADF BC for its excellent ability to create RESTFul web services declaratively, which can be extended with custom Java code.
ADF BC can work with many different data sources and databases - basically anything that has a JDBC driver. APEX is Oracle DB ONLY.
The migration from Forms to APEX is much more direct and there are migration tools in APEX to help with this. APEX is all PL/SQL vs ADF which is Java.
If it were me I would use APEX if I want a Web App on top of an Oracle DB or are migrating from Froms. Knowing Java well, I would use ADF BC if I had to create RESTFul Web Services and need to integrate with different servers and sources. While I can create RESTFul web services in APEX/ORDS - it is a SQL/PL/SQL solution only, ADF BC allows for the use of Java across any data source.

Hibernate SAP integration

Can we integrate Hibernate and SAP? I do have integrated a few databases with Hibernate. Since am not aware of SAP, I want to know if there is any support provided by Hibernate to integrate it with the SAP.
As far as I know I don't think that exists. SAP has its own data mapping strategy known as Open SQL and also provides special functions to insert, update and delete data that also ensure data consistency, those functions are called BAPI and unless you have an SAP connector to call these BAPIs then there's not much you can do. For more reference check this .Net connector example.
Sure you can make a connection directly (if the system administrator and/or DBA let you) to the database however is not advisable and is very dangerous because you could create inconsistencies in the system. Please do not try this approach.
However you can make use of software like the connectors I mentioned before or you could use the SAP interface system. You can find more information on this issue checking out the terms ALE and IDocs.
Another strategy is using an intermediate table on a database where you and SAP take and write data and with some controls communicate each other but on this issue you would use a BAPI in case of using a standard table or making a custom table (Z table) where you have more freedom to make your own changes.
Hope it helps
No, because SAP is not a database.
SAP is a software which is backed by a database. It does support several different RDBMS systems. Theoretically you could use Hibernate to access the database which backs your SAP system, but this is likely not a very good idea. Both hibernate and SAP are built on the assumption that they have exclusive access to the database. Having another application make changes to the DB without them knowing can lead to all kinds of obscure problems.
There are, however, several other methods to integrate SAP into your business processes, like calling BAPI function models using SAPs proprietary RFC protocol, communicating via IDocs, Batch-Input, SOAP webservices and many more.
If you think of the SAP system as a database as in RDBMS: No, you can't, because it isn't - as others have pointed out.
If you want to use something Hibernate-like stuff to access a backend system, you might want to take a look at Hibersap.
You can say SAP has built its own "Hibernate framework" in the Application Layer called OpenSQL( I guess this was built ages before Hibernate ). So SAP applications(ERP/CRM/SRM etc.) can communicate with any database type. So think of it like, SAP has a dialect for different databases.
But when you configure SAP application to use a Database, that database is locked down by SAP and you should not even try to hack it to directly update the database using direct SQL or any other framework like Hibernate. SAP does 100s of validations and checks before it saves the data into the database, you would be bypassing these checks if you are updating the database directly.
I think no organisation would allow you to do it in a production environment and if they allow you to, they don't need SAP.
SAP owns some database products like maxDB, sybase, HANA etc..Hibernate has the dialects for these products. Hibernate with HANA could be interesting.

How does Node.JS and/or Meteor get a callback from the database when a 3rd party software update the database

I would like to use Meteor (Node.JS) to develop an application that will be used by 3,000+ concurrent users on a large size database.
I have looked at the nice examples and the idea to push changed data to the clients is very nice and very useful, but before I start the development I want to be sure how it works behind the scenes to be sure that when I have the application running with all these users it work fast with standard hardware.
I also require this to use Oracle as a database, but not sure that it is supported and if not, what are the requirements from an Oracle package to enable this facility.
I think that the server is having an active on going non-blocking query on the OPLOG table in mongodb and that is how we get the callback for all the changes in the database. Is that correct ? if so, is there a similar way to do it in Oracle ?
Thanks Roni.
I also require this to use Oracle as a database, but not sure that it is supported and if not, what are the requirements from an Oracle package to enable this facility.
Nope, meteor is currently mongo-only as they have implemented an in-browser library called minimongo. My guess is this project will never support oracle, but who knows. There is no mention of oracle support on the meteor project roadmap
Just happened to come across this question while searching at google.
However, if there are no native solutions. We can always figure out a way for a medium language to issue publishing.
Example Case:
Python will be used for synchronising data between Mongodb and Oracle (24/7 operation using cx_Oracle and MongoDB drivers from python)
Meteor Server will keep watch on what to publish
Meteor clients/browsers that subscribed to the channel that will be updated with oracle data.

Object persistence without ORM or DB Engine

I learned to love how LINQ enables set operations on collections. I'm not saying that I plan to shun traditional RDMBS, because I do need it for reporting. There are NoSQL alternatives out there, but they seem to all need to fire up a separate service.
What I looking for is something local where a DLL can create a database and perform CRUD on it. As mentioned, I'm not going to report out of this, just internal data store. The main application that will be using it is in C#.
I'm hoping that someone can give me a lead. If not, if there is anyone willing, we can start a open-source project for it. I'm not interested in commercial products.
Thanks,
You can run RavenDB in embedded mode inside your .NET application - no need for external services or anything.
And RavenDB supports Linq....

DataBase for Metro style apps in windows 8 Development?

Hi i am developing a metro style application where i will be connecting to web services and get the data from the web service and i will be binding it to the UI.
But my requirement is in my application i need to create tables and also provide relation between the tables and dump the data in to that local database and use that data in calling the other methods present in my service application (calling one more method in services by passing something as an input to that).
Can you please explain me the following :-
What is Database which is supported for metro style apps?
How can i create a database and create tables and dump the the data which i got as the response from my service application?
I am new to Metro style application development please help me out .
Thanks in Advance.
First of all WinRT has very poor db support. Most of this kind of things are done by web services, OData etc
BUT I`m almost 100% sure that you can use SQLite. On codeplex there are connectors from Win8 Metro app to SQLite DB so check this topic. I also saw somewhere on MS page that SQLite is support in some way. Check it
What Fixus said is correct. Personally , since my app doesnt have a large amount of data to store locally (it goes against the Metro guidelines to store large amounts of data) I serialize the objects instead to local storage. When needed, and if internet is available, the services will be called and the local data updated.
If you choose to use SQLlite make sure you use the real deal and not a third party db, as the DB library must be approved by Microsoft if you want to get the app accepted to the windows store. I'm not even sure that SQLite is yet approved, but by the looks of it they will be.
Tim Heuer always writes great articles on the subject, this one might help you
Let me know if you need help with serializing in WinRT, if you need it.
Best of luck!
We recommend using SQLite database with LinqConnect - Devart's LINQ to SQL compatible solution which supports SQLite engine (provided by http://code.google.com/p/csharp-sqlite/). You can employ LINQ and ADO.NET interfaces with our product. Starting from the 4.0 version, LinqConnect supports Windows Metro applications: http://blogs.devart.com/dotconnect/linqconnect-for-metro-quick-start-guide.html.
If you're building some application that has to keep working without any network connection, and needs to synchronize at some point in time, it is necessary to keep a local database.
You can read the following article, which has some basic guidelines and samples.
http://blogs.msdn.com/b/win8devsupport/archive/2013/01/10/using-database-in-windows-store-apps-i.aspx

Resources