SQL VBA opplæring

Structured Query Language (SQL) er dataspråket som brukes til å administrere relasjonsdatabaser. Visual Basic for Applications (VBA) er programmeringsspråket som er utviklet av Microsoft for å bruke sammen med Microsoft Office-applikasjoner for å skape dynamisk innhold. Microsoft Access er databaseprogrammet inne i Microsoft Office-pakken som bruker både SQL og VBA til å administrere data og gi automatisering til systematiske databasefunksjoner. Ved hjelp av programmeringsskallet bak Microsoft Access kan du koble til hoveddatabasen, søke etter data, legge til nye data og slette data ved å kombinere SQL- og VBA-programmeringskode.

Trinn 1

Åpne databasen du vil jobbe med i Microsoft Access. Åpne Visual Basic Editor ved å klikke på "Databaseverktøy" -fanen og deretter "Visual Basic."

Steg 2

Klikk på "Sett inn" og deretter "Modul" i Visual Basic Editor.

Trinn 3

Skriv inn koden for å koble til databasen. Du må opprette en forbindelse for å kunne bruke SQL-setninger til databasen.

Sub SQLTutorial ()

 'Sett opp variablene dine for å holde informasjonen Dim Conn som ADODB.Connection' Dette er den faktiske tilkoblingen Dim rsVelg som ADODB.Recordset 'Dette er hvor du vil lagre dataene Dim rsDelete som ADODB.Recordset Dim rsInsert as ADODB.Recordset Dim rsUpdate som ADODB.Recordset Dim strSelectQuery som String 'Dette er den faktiske SQL SELECT-kommandoen Dim strDeleteQuery som String' Dette vil holde SQL DELETE-setningen Dim strInsertQuery som String 'Dette er SQL INSERT-setningen Dim strUpdateQuery som String' Dette vil holde UPDATE-setningen 'Skriv inn detaljene for å koble til databasen du vil Angi Conn = New ADODB.Connection With Conn .ConnectionString = "Provider = Microsoft.Jet.OLEDB.4.0;" & _ "Datakilde = C: \ Documents \ SampleDatabase.mdb". Åpne slutt med 

Nå er forbindelsen din til databasen opprettet. Deretter tildeler du SQL-setninger til variablene du allerede har erklært ovenfor.

Trinn 4

Skriv inn en "SELECT" SQL-setning for å velge data fra databasen. Et SELECT-spørsmål er vanligvis laget slik: "VELG kolonner FRA tabell". Du kan legge til kriterier i SELECT-setningen ved å legge til i "WHERE" -klausulen. For eksempel har du en tabell som heter "Kunder" som du vil søke etter alle kundene med etternavnet "Smith". VBA- og SQL-koden vil se slik ut:

strSelectQuery = "VELG * FRA tblCustomers WHERE LastName = 'Smith'

Stjernen (*) er et jokertegn, som betyr at du vil trekke all informasjonen eller kolonnene på alle som har etternavnet "Smith". For å velge bestemte kolonner, vil du bruke:

strSelectQuery = "VELG Fornavn, Etternavn FRA tblCustomers WHERE LastName = 'Smith'"

Trinn 5

Skriv inn "SLET" -erklæringen hvis du vil slette datarader fra en tabell. Koden for det er:

strDeleteQuery = "SLETT FRA tblCustomers WHERE LastName = 'Smith'"

Denne erklæringen vil slette alle radene der kunden har etternavnet "Smith" fra "Kunder" -tabellen. Den grunnleggende syntaksen for en DELETE-setning er "DELETE FROM table WHERE column = 'value'."

Trinn 6

Skriv inn syntaksen for å sette inn en ny rad i en tabell. Bruk "INSERT" -erklæringen.

strInsertQuery = "INSERT IN tblCustomers VALUES (John, Smith, 123 Main Street, Cleveland, Ohio)"

Hvis du hadde en kundetabell som har fornavn, etternavn, adresse, by og statskolonner, vil denne setningen sette inn dataene i høyre kolonne. Kommaet forteller koden å hoppe til neste kolonne før du skriver inn verdiene. Forsikre deg om at du skriver inn verdiene i riktig rekkefølge av kolonnene i tabellen, slik at dataene dine er konsistente.

Trinn 7

Skriv inn SQL-setningen for å endre en datarad. Dette er uttalelsen "UPDATE".

strUpdateQuery = "OPPDATER tblCustomers SET LastName = 'Jones', First WHERE LastName = 'Smith'"

Denne uttalelsen endrer alle som har etternavnet "Smith" til "Jones" og deres fornavn til "Jim". Du kan endre flere kolonner med data samtidig i en UPDATE-setning ved å skille kolonnene med komma. Den grunnleggende syntaksen for en UPDATE er "UPDATE-tabell SET kolonne1 = verdi1, kolonne2 = verdi2, kolonne3 = verdi3, ... HVOR kolonne = verdi."

Skriv inn VBA-koden som vil kjøre spørringen, og lagre resultatene i poster. Lukk VBA-koden.

Sett rsSelect = Ny ADODB.Recordset

Med rsVelg

       Sett .ActiveConnection = Conn .CursorType = adOpenStatic .Source = strSelectQuery .Open 

Avslutt med

Sett rsDelete = Ny ADODB.Recordset

Med rsDelete

       Sett .ActiveConnection = Conn .CursorType = adOpenStatic .Source = strDeleteQuery .Open 

Avslutt med

Sett rsInsert = Ny ADODB.Recordset

Med rsInsert

       Sett .ActiveConnection = Conn .CursorType = adOpenStatic. Source = strInsertQuery. Open 

Avslutt med

Sett rsUpdate = Ny ADODB.Recordset

Med rsDelect

       Angi .ActiveConnection = Conn .CursorType = adOpenStatic .Source = strUpdateQuery .Open 

Avslutt med

'Skriv inn VBA-koden for å jobbe med dataene du har samlet gjennom SQL-setningene.

'Du kan bruke dataene til å legge ut i skjemaer, i andre tabeller eller i rapporter.

'Lukk platesettene og forbindelsen med deg er ferdig

rsVelg.Lukk

rsDelete.Lukk

rsInsert. Lukk

rsUpdate.Lukk

Slutt Sub