Vraag : Probleem die SQL de Vraag van de Server omzetten in MS-Access

Ik heb kwesties die een SQL vraag van de Server omzetten in MS-Access in mijn vraag van de Server van VB.NET te gebruiken program.

My originele SQL:

1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
cmd = Nieuwe OdbcCommand („UITGEZOCHTE CD_WELL.well_common_name,“ & _
        „CD_WELLBORE_FORMATION.formation_name,“ & _
        „CD_WELLBORE_FORMATION.prognosed_md + {F-N IFNULL (CD_DATUM.datum_elevation, 0)},“ & _
        „CD_WELLBORE_FORMATION.update_date“ & _
        „VAN CD_WELL“ & _
        „BINNEN SLUIT me aan bij CD_WELLBORE_FORMATION OP CD_WELL.well_id = CD_WELLBORE_FORMATION.well_id“ & _
        „BINNEN TREED TOE (“ & _
        „SELECTEER well_id,“ & _
        „MAXIMUM (update_date) Latestupdate_date“ & _
        „VAN CD_WELLBORE_FORMATION“ & _
        „GROEP DOOR“ & _
        „well_id) CD_WELLBORE_FORMATION2 OP CD_WELLBORE_FORMATION.well_id = CD_WELLBORE_FORMATION2.well_id“ & _
        „EN CD_WELLBORE_FORMATION.update_date = CD_WELLBORE_FORMATION2.Latestupdate_date“ & _
        „BINNEN SLUIT me aan bij CD_SITE OP CD_WELL.site_id = CD_SITE.site_id“ & _
        „BINNEN SLUIT me aan bij CD_DATUM OP CD_WELL.well_id = CD_DATUM.well_id“ & _
        „WAAR BOVENLEER (CD_SITE.site_name) ZOALS BOVENLEER („%“ & TextPadName.Text & „%“)“ & _
        „EN ((({F-N UCASE (CD_DATUM.is_default)} = „Y“)“ & _
        „OF CD_DATUM.datum_id IS ONGELDIG“ & _
        „OF ({F-N CONCAT (CD_DATUM.well_id, CD_DATUM.datum_id)} BINNEN („03q2DecAl4nlEgX“, „86zNT2KSuII6yfH“, „8drumnJseey3L5f“, „966uBIK5Xhtos05“,“ & _
        „„aaIx5gNxghWGqO0“, „AXm50zSOPrgZsZ8“, „dOBDPIleVGuPdj9“, „e2qQjvwmitACVhA“,“ & _
        „„e7aRS7VfTwfciQ1“, „FUtaJlUXErY5Qiy“, „iOVCMPIgTeX7Dub“, „JC1Rm8EZ9HmGttJ“,“ & _
        „„lsZtTPuanusLIL9“, „ntfL8vG8VsoG82r“, „rvPgl6F83dhPqcZ“, „RwGi6bVLL6W2d2i“,“ & _
        „„SJog0u94MuVqjWN“, „sSKqoFU4uaSbrde“, „uttJBp2CsFxWI9W“, „uWUtReyLy1h2WFd“,“ & _
        „„wJbDqiXc1wcEPQw“, „ww39g31VygDulen“, „YWwMjlUFn0WNMVP“, „ZILDpIPYMHfWqVj“)))) “ & _
        „ORDE DOOR 4 DESC; “, conn2)


What ik aan voor MS-Access werk:

1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
cmd = Nieuwe OdbcCommand („UITGEZOCHTE dbo_CD_WELL.well_common_name,“ & _
        „dbo_CD_WELLBORE_FORMATION.formation_name,“ & _
        „dbo_CD_WELLBORE_FORMATION.prognosed_md + NZ (dbo_CD_DATUM.datum_elevation, 0),“ & _
        „dbo_CD_WELLBORE_FORMATION.update_date“ & _
        „VAN dbo_CD_WELL“ & _
        „BINNEN TREED dbo_CD_WELLBORE_FORMATION toe OP dbo_CD_WELL.well_id = dbo_CD_WELLBORE_FORMATION.well_id“ & _
        „BINNEN TREED TOE (“ & _
        „SELECTEER well_id,“ & _
        „MAXIMUM (update_date) ALS Latestupdate_date“ & _
        „VAN dbo_CD_WELLBORE_FORMATION“ & _
        „GROEP DOOR“ & _
        „well_id) ALS CD_WELLBORE_FORMATION2 OP dbo_CD_WELLBORE_FORMATION.well_id = CD_WELLBORE_FORMATION2.well_id“ & _
        „EN dbo_CD_WELLBORE_FORMATION.update_date = CD_WELLBORE_FORMATION2.Latestupdate_date“ & _
        „BINNEN TREED dbo_CD_SITE toe OP dbo_CD_WELL.site_id = dbo_CD_SITE.site_id“ & _
        „BINNEN TREED dbo_CD_DATUM toe OP dbo_CD_WELL.well_id = dbo_CD_DATUM.well_id“ & _
        „WAAR UCASE (dbo_CD_SITE.site_name) ZOALS UCASE („%“ & TextPadName.Text & „%“)“ & _
        „EN (((UCASE (dbo_CD_DATUM.is_default) = „Y“)“ & _
        „OF ISNULL (dbo_CD_DATUM.datum_id)“ & _
        „OF dbo_CD_DATUM.well_id + dbo_CD_DATUM.datum_id BINNEN („03q2DecAl4nlEgX“, „86zNT2KSuII6yfH“, „8drumnJseey3L5f“, „966uBIK5Xhtos05“,“ & _
        „„aaIx5gNxghWGqO0“, „AXm50zSOPrgZsZ8“, „dOBDPIleVGuPdj9“, „e2qQjvwmitACVhA“,“ & _
        „„e7aRS7VfTwfciQ1“, „FUtaJlUXErY5Qiy“, „iOVCMPIgTeX7Dub“, „JC1Rm8EZ9HmGttJ“,“ & _
        „„lsZtTPuanusLIL9“, „ntfL8vG8VsoG82r“, „rvPgl6F83dhPqcZ“, „RwGi6bVLL6W2d2i“,“ & _
        „„SJog0u94MuVqjWN“, „sSKqoFU4uaSbrde“, „uttJBp2CsFxWI9W“, „uWUtReyLy1h2WFd“,“ & _
        „„wJbDqiXc1wcEPQw“, „ww39g31VygDulen“, „YWwMjlUFn0WNMVP“, „ZILDpIPYMHfWqVj“)))) “ & _
        „ORDE DOOR 4 DESC; “, conn2)
/>My versie van MS-Access 


ben

Antwoord : Probleem die SQL de Vraag van de Server omzetten in MS-Access

Uw SQL gewoonten konden wat verbetering gebruiken.  ; -)

U moet waarschijnlijk ophouden proberend om het kolomaantal in uw ORDE DOOR clausule en te gebruiken, in plaats van het gebruiken van 4 gebruik CD_WELLBORE_FORMATION.update_date (of tot welke kolomnaam wilt langs eigenlijk opdracht geven u).

Ook, bekijk het volgende:

dbo_CD_DATUM.well_id + dbo_CD_DATUM.datum_id

Als die karakterkoorden zijn, dan moet u een ampersand (&) gebruiken om hen plus u aaneen te schakelen waarschijnlijk wilt dat in haakje verpakken:

OF (dbo_CD_DATUM.well_id + dbo_CD_DATUM.datum_id) BINNEN („03q2DecAl4nlEgX“,
                                                          „86zNT2KSuII6yfH“,…, „ZILDpIPYMHfWqVj“)

U zou een alias op de volgende lijn kunnen willen zetten:

dbo_CD_WELLBORE_FORMATION.prognosed_md + NZ (dbo_CD_DATUM.datum_elevation, 0),

Andere oplossingen  
 
programming4us programming4us