Hej Prova istället att använda Query Analyzer mot SQL-Server så kanske du får ett bättre felmeddelande. Spontant ser det väl ok ut förutom SUM som är reserverat fält men eftersom du inneslutit de med [] så borde det ta. Du får helt enkelt bryta isär din sql-sats och ta bort en join, tills det fungerar. Hm Finns det inget Trace-verktyg motsvarande SQL Profiler till Oracle? Det är ett utmärkt sätt att få reda på vad som egentligen skickas till servern. Det är användningen av [sum] som inte är standard. MS Query vägrar acceptera frågan
Ställde denna fråga till en SQL 2000 databas via MS query (I Excel)
select ledtrans.accountnumber,credtable.name, ledtrans.date_, sum(ledtrans.amountmst) as [sum]
from ledtrans, credtrans ,credtable
where ledtrans.dataset = 'DAT'
and credtrans.dataset = 'DAT'
and credtable.dataset = 'DAT'
and ledtrans.accountnumber between ' 1000' and ' 8050'
and ledtrans.voucher = credtrans.voucher
and credtrans.accountnumber = credtable.accountnumber
and ledtrans.date_ between '020101' and '031001'
group by ledtrans.accountnumber,credtable.name,ledtrans.date_
order by credtable.name
Ändrade databas till en Oracle (samma fråga)
Då får jag felmeddelandet att den inte kan lägga till tabellen ledtrans
Och om jag byter plats på credtrans ledtrans så blir det fel på den tabellen som
kommer först efter from satsen
Vad gör jag för fel?
/MarkusSv: MS Query vägrar acceptera frågan
I detta fall kan kanske Jet motorn i Excel att ställa till det, så gå från källan och bakåt för att försäkra dig att du inte har såna problem.Sv: MS Query vägrar acceptera frågan
Yrar du inte till det nu?
Det är en Oracle databas jag ställer frågan till via en ODBC koppling
Ställer jag frågan direkt mot en SQL databas med samma innehål så
funkar frågan
Ställer jag samma fråga i SQL + (oracles sql verktyg) så funkar den också förutsatt att jag byter datum format.
Med andra ord
SQL satsen fungerar finfint gentemot en ODBC koppling till en SQL 2000 databas
SQL satsen fungerar inte gentemot en ODBC koppling till en ORACLE databas
Varför?
Går det att lösa?
Frågan ställs i Microsoft Query
Anledningen till att jag vill ställa frågan där är att en användare då kan uppdatera sina data själv utan krångel. (En sorts avancerat! rapportverktyg)
Utav olika anledningar har vi två versioner av samma ekonomisystem men systemen är kopplade till två olika databaser en Oracle och en MS SQL 2000
Självklart kan jag redan idag få fram informationen spara den i en komma separerad fil och importera den i Excel men dåmister jag ju hela grejen.
/MarkusSv: MS Query vägrar acceptera frågan
Sv: MS Query vägrar acceptera frågan
Om du vill ha ett reserverat ord som korrelationsnamn så kan du använda "ord". Det fungerar också i SQL server 2000 om du har satt quoted_identifier on
I och för sig så är inte sum ett reserverat ord i SQL 99 så du borde inte behöva något alls.