Problem with SQL statement in Microsoft Access

Please support our MS SQL advertiser: Intel Parallel Studio Home
Thread Solved

Join Date: Dec 2007
Posts: 74
Reputation: HB25 is an unknown quantity at this point 
Solved Threads: 0
HB25 HB25 is offline Offline
Junior Poster in Training

Problem with SQL statement in Microsoft Access

 
0
  #1
Jun 4th, 2008
Dear Friend
I am trying to perform the flowing tasks using the following SQL statement in Microsoft Access but they don’t work. I wonder if someone could help and tell me what is wrong with my Statements. Whenever I run these statements it will not create the query.

Task 1: Formulate a query and prepare a report to find order details for a selected warehouse on a specific date, this will help the warehouse gather and pack all goods ready for the courier.

SQL statement I am using is:
SELECT * FROM Order WHERE WarehouseID='Manchester' AND Date='02/06/2008';

Task2: Formulate a query and prepare a report so that a specific warehouse can check their stock if any quantities of stock fall below 5, stock description should also be listed.

SQL statement I am using is:
SELECT* Description, ProductsID FROM Products WHERE Qty < 5;

Kind Regards
HB25
Reply With Quote Quick reply to this message  
Join Date: Apr 2008
Posts: 296
Reputation: tesuji is on a distinguished road 
Solved Threads: 42
tesuji tesuji is offline Offline
Posting Whiz in Training

Re: Problem with SQL statement in Microsoft Access

 
0
  #2
Jun 4th, 2008
Dear friend
Originally Posted by HB25 View Post
. . .
Task 1: Formulate a query and prepare a report to find order details for a selected warehouse on a specific date, this will help the warehouse gather and pack all goods ready for the courier.

Task2: Formulate a query and prepare a report so that a specific warehouse can check their stock if any quantities of stock fall below 5, stock description should also be listed.
. . .
HB25
One can help you only if you show the corresponding data model your tasks are based on!

krs,
tesu

p.s. your selects seem to be rather imperfect.
Last edited by tesuji; Jun 4th, 2008 at 5:20 pm.
Reply With Quote Quick reply to this message  
Join Date: Dec 2007
Posts: 74
Reputation: HB25 is an unknown quantity at this point 
Solved Threads: 0
HB25 HB25 is offline Offline
Junior Poster in Training

Re: Problem with SQL statement in Microsoft Access

 
0
  #3
Jun 4th, 2008
Thank you tesuji for your quick reply please find attached my database as requested.
Thanks for all your help
HB25
Attached Files
File Type: zip db2.zip (75.8 KB, 8 views)
Reply With Quote Quick reply to this message  
Join Date: Apr 2008
Posts: 296
Reputation: tesuji is on a distinguished road 
Solved Threads: 42
tesuji tesuji is offline Offline
Posting Whiz in Training

Re: Problem with SQL statement in Microsoft Access

 
1
  #4
Jun 4th, 2008
Hi HB25,

Your first select should look like:
  1. SELECT c.CustomerID, c.Surname, c.Address, c.Town, c.Postcode,
  2. o.OrderID, o.DATE,
  3. i.ProductID, i.Qty, p.Description FROM Customer c
  4. JOIN ORDER o on c.CustomerID = o.CustomerID
  5. JOIN Item i on o.OrderID = i.OrderID
  6. JOIN Product p on i.ProductID = p.ProductID
  7. WHERE WarehouseID='Manchester' AND DATE='02/06/2008'
I didn't test it. It should work on all databases which supply standard SQL 1999. As far as I know, Access also supports inner joins. If not, let me know. In this case the joins must be replaced.

Btw, there should be done some improvement of your data model:
There must be an 1:m relationship between Stock and Product: Stock ->------- Product
Primary key of Item must be ProductID and OrderID (the thing with composite and foreign keys)
What is CustID of Item?
Table name Order should be replaced by another name because ORDER is SQL word ( ORDER BY ...)

krs,
tesu
Reply With Quote Quick reply to this message  
Join Date: Dec 2007
Posts: 74
Reputation: HB25 is an unknown quantity at this point 
Solved Threads: 0
HB25 HB25 is offline Offline
Junior Poster in Training

Re: Problem with SQL statement in Microsoft Access

 
0
  #5
Jun 5th, 2008
Hi Tesuji
I have tried your code but it does have a problem with the word (join). Any more suggestions.
Regards
HB25
Reply With Quote Quick reply to this message  
Join Date: Apr 2008
Posts: 296
Reputation: tesuji is on a distinguished road 
Solved Threads: 42
tesuji tesuji is offline Offline
Posting Whiz in Training

Re: Problem with SQL statement in Microsoft Access

 
0
  #6
Jun 5th, 2008
Originally Posted by HB25 View Post
... I have tried your code but it does have a problem with the word (join)...
HB25
Sorry, I thought Access would have been able to handle joins. The inner joins you need can be replaced by cross products and join conditions in where clause, try this:
  1. SELECT c.CustomerID, c.Surname, c.Address, c.Town, c.Postcode,
  2. o.OrderID, o.DATE, i.ProductID, i.Qty, p.Description
  3. FROM Customer c, ORDER o, Item i, Product p
  4. WHERE c.CustomerID = o.CustomerID
  5. AND o.OrderID = i.OrderID
  6. AND i.ProductID = p.ProductID
  7. AND WarehouseID='Manchester' AND DATE='02/06/2008'
krs,
tesu
Reply With Quote Quick reply to this message  
Join Date: Mar 2008
Posts: 3
Reputation: TCBW is an unknown quantity at this point 
Solved Threads: 1
TCBW TCBW is offline Offline
Newbie Poster

Re: Problem with SQL statement in Microsoft Access

 
1
  #7
Jun 5th, 2008
Originally Posted by HB25 View Post
Dear Friend
Task 1: Formulate a query and prepare a report to find order details for a selected warehouse on a specific date, this will help the warehouse gather and pack all goods ready for the courier.

SQL statement I am using is:
SELECT * FROM Order WHERE WarehouseID='Manchester' AND Date='02/06/2008';

Task2: Formulate a query and prepare a report so that a specific warehouse can check their stock if any quantities of stock fall below 5, stock description should also be listed.

SQL statement I am using is:
SELECT* Description, ProductsID FROM Products WHERE Qty < 5;
Task 1
  1. SELECT Customer.CustomerID, Customer.Surname, Customer.Address,
  2. Customer.Town, Customer.[Post code],
  3. ORDER.OrderID, ORDER.DATE, Item.[Products ID],
  4. Item.Qty, Products.Description,
  5. Products.[Unit Price], ORDER.WarehouseID
  6. FROM Products
  7. INNER JOIN ((Customer
  8. INNER JOIN [ORDER] ON Customer.CustomerID = ORDER.CustomerID)
  9. INNER JOIN Item ON ORDER.OrderID = Item.[ORDER ID]) ON Products.ProductsID = Item.[Products ID]
  10. WHERE (((ORDER.DATE)=#2/6/2008#) AND ((Order.WarehouseID)="Manchester"));
You need to tell Access the format of the date. The # in the date tells the system it will be in the format MM/DD/YYYY. Also as you have used spaces in field names and reserved words (ORDER as mentioned by some one else) you need to surround these with square brackets [ & ].

Task 2

  1. SELECT Description, ProductsID FROM Products WHERE Qty < '5';

Your table has the quantity field set as type text, so the statment where Qty <5 will not work. You can either change the type of field and use the original where clause or use the one above. Please note that the original Select had a syntax error you should drop the *.

Regards
TCBW
Last edited by TCBW; Jun 5th, 2008 at 1:57 pm. Reason: Formating
Reply With Quote Quick reply to this message  
Join Date: Dec 2007
Posts: 74
Reputation: HB25 is an unknown quantity at this point 
Solved Threads: 0
HB25 HB25 is offline Offline
Junior Poster in Training

Re: Problem with SQL statement in Microsoft Access

 
0
  #8
Jun 5th, 2008
Hi TCBW
Thank you for replying to me post, I have fallowed your suggestion the query will run but it will not display any information under the CustmoerID, Surname ......... ext any Idea why? Have we forgotten anything?
Regards
HB25
Reply With Quote Quick reply to this message  
Join Date: Dec 2007
Posts: 252
Reputation: ProfessorPC is an unknown quantity at this point 
Solved Threads: 27
ProfessorPC ProfessorPC is offline Offline
Posting Whiz in Training

Re: Problem with SQL statement in Microsoft Access

 
1
  #9
Jun 6th, 2008
looking in your db i noticed that you do not have any orders in February. This will be one reason why you cant pull anything from the first query. change the date to 6/2/2008 and BAM its full of data
  1. SELECT Customer.*, ORDER.*
  2. FROM Customer INNER JOIN [ORDER] ON Customer.CustomerID = ORDER.CustomerID
  3. WHERE (((ORDER.DATE)=#6/2/2008#) AND ((Order.WarehouseID)="manchester"));

the second query works good with this
  1. SELECT *
  2. FROM Products
  3. WHERE (((Qty)<"5"));
Last edited by ProfessorPC; Jun 6th, 2008 at 1:40 am.
Reply With Quote Quick reply to this message  
Join Date: Dec 2007
Posts: 74
Reputation: HB25 is an unknown quantity at this point 
Solved Threads: 0
HB25 HB25 is offline Offline
Junior Poster in Training

Re: Problem with SQL statement in Microsoft Access

 
0
  #10
Jun 6th, 2008
Dear friend (ProfessorPC , TCBW, tesuji)

Thank you very much for all your comment and suggestion, I have managed to perform both of my tasks using the fallowing SQL command fallowing your suggestions. You guys did a fantastic job

Task 1 solution:

  1. SELECT Customer.CustomerID, Customer.Surname, Customer.Address, Customer.Town, Customer.[Post code], ORDER.OrderID, ORDER.DATE, ORDER.WarehouseID
  2. FROM Customer INNER JOIN [ORDER] ON Customer.CustomerID = ORDER.CustomerID
  3. WHERE (((ORDER.DATE)=#6/2/2008#) AND ((Order.WarehouseID)="manchester"));

Task2 solutions:

  1. SELECT [Stock].[WareHouseID], [Stock].[ProductsID], [Stock].[Qty], [Products].[Description]
  2. FROM Stock INNER JOIN Products ON [Stock].[ProductsID]=[Products].[ProductsID]
  3. WHERE ((([Stock].[Qty])<5) AND (([Stock].[WarehouseID])="London"));

I have opened a new thread (http://www.daniweb.com/forums/post62...2145)regarding Report in Microsoft access I wonder if you guys could help on that as well, this will be the last requirement I have to do. Any suggestion, comment and advice will be really appreciated.

Kind Regards
HB25
Last edited by peter_budo; Jun 15th, 2008 at 12:25 pm. Reason: Keep It Organized - please use [code] tags
Reply With Quote Quick reply to this message  
Reply

This thread has been marked solved.
Perhaps start a new thread instead?
Message:




Views: 2352 | Replies: 9
Thread Tools Search this Thread



Tag cloud for MS SQL
About Us | Contact Us | Advertise | DaniWeb | Acceptable Use Policy | RSS Feed

©2003 - 2009 DaniWeb® LLC