Return to Level1Techs.com

[Help] Need to create a program that connects to an Oracle SQL DB

Hello all,

I’ve always been a mediocre programmer at best and thus reaching out for help here since I don’t even know where to start.

A short explanation of what I’m trying to accomplish: I need to create a simple program that connects to an Oracle DB, gets input in the from the user in the form of short numeric values, uses that variable to run simple SQL queries in the background and returns a pretty result, like “%value%
%%%% found / not found”.

The reason behind this is that this is intended for managers and non-tech users. I managed to get authorization for a set of read-only credentials to be used for this project but I guess the whole thing comes from trying to avoid giving out those credentials (for compliance reasons) plus 99% of those users not having a clue how to use them anyway.

This can either be a GUI or a command line program and should, ideally, be contained within a single executable and be as uncomplicated and easy as possible to use for those non-tech users.

Connection to the DB is only possible within our network, so security aside from not having to release the credentials is not an issue.

Any ideas, advise, comments or suggestions as to where to start or look out to?

Thanks in advance,

g.a.

What programming language are you planning to use? What are you familiar with?

Normally, you dont want to directly access (most) dbs from a clients machine. Because, in part the way you secure databases is to only give a small set of ips access to the database directly. So preferably you would be doing the database queries on a rest backend or something along those lines. In this case it may be fine though? :man_shrugging:

About the Console, Desktop app (maybe webapp?) part you should probably ask the people who are going to use it… Are those non tech people fine with a black box ux? :sweat_smile:

2 Likes

I’m only familiar with shell scripting, HTML and SQL, but like I said I suck at coding.

The access part isn’t that difficult since we’re a big organization and access control to our network is tight but what I’m trying to avoid at all costs is giving away those service credentials and let the users see any source code whatsoever (I forgot to mention that in my initial post) and that’s why probably a web app, while the easiest solution I can think of, would probably not work.

About the UX: it doesn’t have to be anything special or in particular as I plan to build more functions over time and users don’t really care what they use as long as is easy for them to access (double click to open an executable or going to a certain URL) and shows the information they want.

A little bit more information: the platform that I work stores everything within a huge database and, say for example, a manager wants to confirm if one of his employees is correctly setup for access, he could just type the employee ID of that person and this program will run a few queries against the database a return a human readable result, like “John is ready for access” or “John cannot access [platform name] because his Business Unit is out of scope”.

The reasons you believe it´s not a good option for are non issues. If you have server side code in a language like c#, php, nodejs, python, ruby whatever your heart desires. None of that server side stuff will ever be executed on the client. Unless you compile it to webassembly, but that is an entierly different story.

It makes it so much easier to hide stuff when the stuff you want to hide some of it is never even happening on the clients machine.


I think given that you listed only shell scripting and html. It might be easiest for you to jump into php. For small projects it can deffinitely be used more script/hacky like and it´s easy to get SOMETHING done. Same applies here browsers don´t understand php. If you serve the php code to your client, you majorly f*cked up your deployment and your site is gonna break.

If you expect it to get any bigger, then take the time to learn a php framework (Laravel for instance is pretty good).


Otherwise, you could use .net core with blazor. It´s kinda like asp.net (if you have ever seen it). But basically, asp.net is fading away slowely (but surely) and is replaced by .net core and blazor. It´s leaps and bounds better than asp.net (razor). For new projects you should not be using asp.net anymore. The client side approach is still in preview (witch uses webassembly), but you probably would want to use the other option anyways. As it gives you said piece of mind that whatever is written in C# is never sent to the browser in any way shape or form. Not like it would be a real problem with the other option. It might be if you have no idea what you are doing (yet).

1 Like