Convert MS Access Queries to AIX SQL


 
Thread Tools Search this Thread
Operating Systems AIX Convert MS Access Queries to AIX SQL
# 1  
Old 11-16-2014
Convert MS Access Queries to AIX SQL

Unix Team,

I'm a recent college graduate entering in the " real world" and boy let me tell you it can quite challenging. I just got a job with a large fortune 50 company lets just say that my expectations and tasks have expanded since I first got hired. Last week I got assigned a pretty big task and I could use some help.

I have a fairly large access database and I need to convert the SQL queries to AIX SQL. All information is pulling from AIX but ms access makes the information look nice and pretty and has an easy interface. The problem is latency. Because the database is so large, the queries take a while to run.

I guess this is my fault because in school I learned that MS access has and gives a SQL view and I had an intro to linux/unix and I simply just made a suggestion to convert the queries to AIX. 3 weeks later I get this seemingly overwhelming task to convert this database to AIX. I have about 326 queries that I need to convert.

Is there a tool or an easy way to do this or do I need to do each on by hand?
Do you have any information or links that I could benefit from on how to convert MS access SQl to AIX SQL?
Some queries are simple and only involve 2 or 3 tables while others are very complex.

Please let me know where I can start?
I really really appreciate everyone's help.

Techstudent01
# 2  
Old 11-16-2014
Am I missing something here?
MS ACCESS to me run on Windows servers ... Im surprise it is not SQLServer you have, and I have not heard of AIXSQL, I know DB2 Oracle I used to use Sybase and Informix, and you can have MySQL...
Where do the SQL requests get executed? I always though it was where the RDBMS resides which would be on the Windows server so why convert?
Are you sure you were not asked to migrate the MS ACCESS database to a RDBMS supported on AIX?
# 3  
Old 11-16-2014
vbe,
I'm sorry to confuse you. Maybe if I give you a visual, it might explain a little more clearly what I need to do. Below is my MS access SQL query statement:
Code:
qryctnsReceived
SELECT Sum((dbo_e538a_rcv_dtl!rcv_qty_amt)/(dbo_item!case_qty)) AS Ctns
FROM dbo_e537a_rcv_hdr INNER JOIN (dbo_e538a_rcv_dtl INNER JOIN dbo_item ON dbo_e538a_rcv_dtl.t024_itm_nbr = dbo_item.itm_num) ON (dbo_e537a_rcv_hdr.e058_po_nbr = dbo_e538a_rcv_dtl.e058_po_nbr) AND (dbo_e537a_rcv_hdr.e537_rr_nbr = dbo_e538a_rcv_dtl.e537_rr_nbr) AND (dbo_e537a_rcv_hdr.t063_lct_nbr = dbo_e538a_rcv_dtl.t063_lct_nbr)
WHERE (((dbo_e538a_rcv_dtl.upd_dm) Between GetStartTime() And GetEndTime()) AND ((dbo_e538a_rcv_dtl.rcv_qty_amt)<>0) AND ((dbo_item.case_qty)<>0) AND ((dbo_e537a_rcv_hdr.ord_typ_cd)<>4) AND ((dbo_item.itm_class)<>758));

I've already started working on this project just to get a head start. I've massaged the code so it will work with in AIX and the following code is below. To clarify, I have DB2 on AiX and I need to convert MS access SQL queries to DB2 queries within Aix. I converted the above code below to this:
Code:
NAME[1]="Receiving Reg Ctns"
QUERY="SELECT Sum((e538a_rcv_dtl.rcv_qty_amt)/(item.case_qty)) AS Ctns"
QUERY=$QUERY" FROM e537a_rcv_hdr INNER JOIN (e538a_rcv_dtl INNER JOIN item ON e5
38a_rcv_dtl.t024_itm_nbr = item.itm_num) ON (e537a_rcv_hdr.e058_po_nbr = e538a_r
cv_dtl.e058_po_nbr) AND (e537a_rcv_hdr.e537_rr_nbr = e538a_rcv_dtl.e537_rr_nbr)
AND (e537a_rcv_hdr.t063_lct_nbr = e538a_rcv_dtl.t063_lct_nbr)"
QUERY=$QUERY" WHERE (((e538a_rcv_dtl.upd_dm) Between ('"$STARTTIME"') And ('"$EN
DTIME"')) AND ((e538a_rcv_dtl.rcv_qty_amt)<>0) AND ((item.case_qty)<>0) AND ((e5
37a_rcv_hdr.ord_typ_cd)<>4) AND ((item.itm_class)<>758))"
QUERY[1]=$QUERY

After much trial and error, I finally got it to work. I've been working on it all day, trying to figure out what I need to do. When looking at the above code, I believe this is a DB2 SQL statement. I just have 325 more to convert and I thought that maybe there was an easier way than each individual query manually. So to highlight my changes from the above code to this new code--> I removed the "dbo_" prefix on all my tables-->I replaced all my "!" exclamation marks with a period "."-->and date functions had to be converted to text. . .

I hope this helps. . .
Please let me know
# 4  
Old 11-17-2014
You find me as dumbfounded as vbe: "SQL" (structured query language) is a quasi-standard for manipulating data in a relational database and most relational databases - Oracle, DB2, Informix, MySQL, ... support it.

AIX is an operating system. You can install a relational database software onto it (this has been done perhaps millions of times) and - if that database software supports SQL - you can run SQL-statements against it. But AIX is NOT a relational database itself and it won't understand SQL queries to the same amount as native Windows: not at all. You cannot "convert SQL queries to AIX", because there is nothing in AIX which will understand them.

When - if - you mean to isntall some SQL-capable DB software onto AIX and convert the Access-SQL to this: this might work, by and large, but Mickeysoft built in some nasty surprises for you into its so-called SQL. In fact there are some severe differences between the SQL standard everybody adheres to and what makes MS makes you believe is SQL but in fact isn't. Here are some links:

Differences Between MS-Access and Standard SQL
How does Access differ from SQL 92 standards?

And the final proof that they are not even consistent with their own tinkering on the standards:
What are the main differences between Access and SQL Server?

I hope this helps.

bakunin

/PS: sorry if i sound somewhat bitter, but half of my life i have to explain to some clueless victim of M$$'s marketing machinery that what Mickeysoft calls "X" is not anywhere near "X" but in fact some downgraded, lobotomized version of "X" with some useless and clueless extensions of their own which is doing what is supposed to be left over from a vandalized standard in a different and incompatible way. For "X" put, in no particular order: TCP/IP, HTML, SQL, SCSI, Java, .....

I might be disgruntled but i think i have earned my entitlement to it.
# 5  
Old 11-19-2014
vbe/bakunin,

Thank you so much for your replies. Your comments have directed me to ask more specfic questions to my leadership team. This has been helpful to me and has provided some clarity to the scope of my project.

Please forgive my ignorance. After further inquiry, there is sybase software that is ruuning within the AIX OS. I hope this helps provide the clarity you need.

My original question is, How can I convert MS Access SQL queries to Sybase SQL queries efficiently?

Are there any programs out there that can assist with this conversation?

Thank you again for your replies.
Techstudent01
# 6  
Old 11-19-2014
Quote:
Originally Posted by techstudent01
After further inquiry, there is sybase software that is ruuning within the AIX OS. I hope this helps provide the clarity you need.
OK, Sybase it is. Be aware that this forum deals with AIX and its workings itself. If your question would be "how can i install Sybase version X in AIX" we might have some answer for you, but to understand how exactly Sybase does what it does is usually not within the scope of our job. In most cases i get some specs, install a machine, maybe install the database software (in my case mostly DB/2 or Oracle) onto it and then give the system to the DBAs (database admins) to do whatever they do. The next time i do work on the machine it is either some administrative thing: new users, enlarge filesystems, such things - or for performance tuning. For all this i have to have a cursory knowledge of what the database software does and how it does it, but not more.

What i want to say with this rather lengthy preamble is: in things database most (perhaps all) of us are not experts but "interested laymen". You should take that into account and double-check with other sources.

Quote:
Originally Posted by techstudent01
My original question is, How can I convert MS Access SQL queries to Sybase SQL queries efficiently?

Are there any programs out there that can assist with this conversation?
I don't know of any program which does that but - see above - if such a program would exist i probably wouldn't know it anyway. On the other hand i do not think you will need a program at all. Get some DB-programmer and let him read over the code. He should be able to find all the non-standard pieces in it. Then he can change these pieces to standard-conformant syntax/grammar. He doesn't even have to have in-depth knowledge of MS-Access, because he can check any unknown construct in the documentation of Access. he should have a good knowledge of the target platform, though.

I hope this helps.

bakunin
# 7  
Old 11-20-2014
Quote:
Originally Posted by techstudent01
My original question is, How can I convert MS Access SQL queries to Sybase SQL queries efficiently?
All that you need to know if that you want to migrate data from Access to a SQL compliant database. The easiest way to do that would be to put a Sybase ODBC connector on your windows machine. Then you should create a schema in Sybase for your data, give that schema the ability to create tables and indexes, which you probably have a Sybase database administrator that will do that for you. You need a Sybase client to log into Sybase and create tables that are identical to the tables in Access. So you will need to map the data types between the Sybase database and Access. There should be an online resource to do that. Rename each of the local Access tables to <table>_save, then use ODBC to link each of the new Sybases tables to the Access database. Insert all of the data from each saved table to the corresponding table in Sybase. Now when someone opens a form they are getting the data from Sybase.

You will need to either give everyone the same username and password, or create individual users with synonyms that point to the tables they need and that puts your data in Sybase where hopefully it will get backed up. You will likely need to create indexes, make sure that every table has a primary key and probably create foreign keys between parent and child tables. Now you are a DBA... Smilie
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Storing multiple sql queries output into variable by running sql command only once

Hi All, I want to run multiple sql queries and store the data in variable but i want to use sql command only once. Is there a way without running sql command twice and storing.Please advise. Eg : Select 'Query 1 output' from dual; Select 'Query 2 output' from dual; I want to... (3 Replies)
Discussion started by: Rokkesh
3 Replies

2. Programming

Join 2 SQL queries into one

Dear community, could someone help me to join 2 queries into one? Basically it's the same query with different clauses (please notice the FIELD3 filters and related counters into the subquery): SELECT A.FIELD1,A.FIELD2,A.FIELD3 FROM TABLE A INNER JOIN ( SELECT FIELD1,... (3 Replies)
Discussion started by: Lord Spectre
3 Replies

3. Shell Programming and Scripting

Help with storing the output of multiple sql queries to a file

Hi All, I have a file queries.txt as follows : SELECT COLUMN1 FROM SCHEMA2.TABLE1 MINUS SELECT COLUMN1 FROM SCDEMA2.TABLE2; SELECT COLUMN2 FROM SCHEMA2.TABLE1 MINUS SELECT COLUMN2 FROM SCDEMA2.TABLE2; SELECT COLUMN3 FROM SCHEMA2.TABLE1 MINUS SELECT COLUMN3 FROM SCDEMA2.TABLE2; SELECT... (2 Replies)
Discussion started by: SriRamKrish
2 Replies

4. Shell Programming and Scripting

Code needed to get sql queries

Hi i need code to get sql queries through a shell script for a text file input which contain the service ids iputfile I-H-2048-10GB-M I-H-4096-12GB-M I-H-2048-p1000-M the code should contain below queries among which service_id is replacable with value from input file. ... (4 Replies)
Discussion started by: surender reddy
4 Replies

5. Shell Programming and Scripting

Script (with sql queries) not working using cron

Hi all, I have script, which performing sql queries and put output into file. When I run this script manually, its working fine, but when I want to schedule it with cron I am getting errors... I defined LD_LYBRARY_PATH and ,but no result. After I defined it, I am getting error: # more... (4 Replies)
Discussion started by: nypreH
4 Replies

6. Emergency UNIX and Linux Support

Insert data into sql queries from a file

Hello friends, I need to insert data from a file to another. I need this to form an sql query file which will consist of 50.000 INSERT INTO sentences. my sql query file will consist of 50.000 times the below line consecutively: insert into subscriber... (6 Replies)
Discussion started by: EAGL€
6 Replies

7. Shell Programming and Scripting

Nested SQL queries within Shell script

Hi, Would someone know if I can fire nested sql queries in a shell script? Basically what I am trying to do is as follows: my_sql=$(sqlplus -s /nolog<<EOF|sed -e "s/Connected. *//g" connect... (2 Replies)
Discussion started by: shrutihardas
2 Replies

8. Shell Programming and Scripting

Select SQL Queries Option

count.sh#!/bin/ksh SQL1=`sqlplus -s usr/pwd @count.sql $1 $2 $3` SQL2=`sqlplus -s usr/pwd @selectall.sql $1 $2 $3` LIST="Count Select_All" select i in $LIST do if then echo $SQL1 elif then echo $SQL2 fi done (2 Replies)
Discussion started by: killboy
2 Replies

9. UNIX for Dummies Questions & Answers

shell script for sql queries

Hi All, I have written 4 sql queries . Now I want to write one SHELL SCRIPTING program for all these queries... i.e 1.select * from head; 2. select * from detail; 3. delete from head; 4. delete from detail; Please let me know how to write a shell script... Thank you (1 Reply)
Discussion started by: user71408
1 Replies

10. UNIX for Dummies Questions & Answers

SQL queries in background?

I have to query a DB2 database, and sometimes they take a long time to produce results. Can I run these queries in the background, and if so, where will the results appear? (1 Reply)
Discussion started by: jpprial
1 Replies
Login or Register to Ask a Question