Guest User

Untitled

a guest
May 28th, 2017
33
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
VB.NET 5.94 KB | None | 0 0
  1. Imports MySql.Data.MySqlClient
  2. Imports System.Data
  3.  
  4. Public Class Form1
  5.  
  6.     'Kan være lurt å lagre server, database, brukernavn og passord som globale variabler
  7.     'Dette gjør at vi kan gjenbruke denne informasjonen så lenge programmet kjører
  8.     Private server As String
  9.     Private database As String
  10.     Private username As String
  11.     Private password As String
  12.     Private connstring As String
  13.  
  14.     'Forbindelsen settes til OK først dersom server, database, brukernavn og passord er riktig
  15.     Private connectionOK As Boolean = False
  16.     Private conn As New MySqlConnection
  17.  
  18.     'Dette kjøres når login vinduet kommer opp
  19.     Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
  20.         TextBox3.PasswordChar = "*"
  21.     End Sub
  22.  
  23.  
  24.     'Login knapp lagrer server, database, brukernavn og passord til globale variabler
  25.     Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
  26.  
  27.         server = TextBox1.Text
  28.         database = TextBox2.Text
  29.         username = TextBox2.Text
  30.         password = TextBox3.Text
  31.  
  32.         connstring = "Server=" & TextBox1.Text & ";" _
  33.             & "Database=" & TextBox2.Text & ";" _
  34.             & "Uid=" & TextBox2.Text & ";" _
  35.             & "Pwd=" & TextBox3.Text & ";"
  36.  
  37.         'Database er her samme som brukernavn
  38.  
  39.         conn.ConnectionString = connstring
  40.  
  41.         'Tester oppkoblingen
  42.         Try
  43.             conn.Open()
  44.             MessageBox.Show("Connection opened successfully")
  45.             connectionOK = True 'Forbindelsen godkjennes
  46.             conn.Close()
  47.         Catch myerror As MySqlException
  48.             MessageBox.Show("Error connecting to database" & _
  49.                 myerror.Message)
  50.             connectionOK = False 'Forbindelsen godkjennes ikke
  51.         Finally
  52.             conn.Dispose()
  53.         End Try
  54.     End Sub
  55.  
  56.     'Cancel knapp avslutter programmet
  57.     Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
  58.         Application.Exit()
  59.     End Sub
  60.  
  61.     ' ------------------------------
  62.     'Legger inn data i databasen
  63.     Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
  64.         If connectionOK Then
  65.             Query("INSERT INTO Person (Person_Id, Person_Fornavn, Person_Etternavn) VALUES (500,'Ole','Jensen')")
  66.         Else
  67.             MessageBox.Show("Connection is not OK - Login properly")
  68.         End If
  69.     End Sub
  70.  
  71.     'Kjører en spørring mot Person tabellen ved å bruke funksjonen Query
  72.     Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
  73.  
  74.         If connectionOK Then
  75.  
  76.             Dim myData As New DataTable
  77.             myData = Query("SELECT * from Person")
  78.  
  79.             'En tabell består av mange rader, og DataRow kan inneholde en rad
  80.             Dim temprad As DataRow
  81.             Dim pid, fornavn, etternavn As String  'hjelpevariabler
  82.  
  83.             'Fyller listeboksen med formatert informasjon
  84.             ListBox1.Items.Clear() 'fjerner evt. gammel tekst i listeboks
  85.  
  86.             For Each temprad In myData.Rows
  87.                 'Hver rad har felter, som vi kan hente ut vha navnet og hermetegn
  88.                 pid = temprad("Person_Id")
  89.                 fornavn = temprad("Person_Fornavn")
  90.                 etternavn = temprad("Person_Etternavn")
  91.                 ListBox1.Items.Add(pid & " " & fornavn & " " & etternavn) 'utskriften
  92.             Next temprad
  93.         Else
  94.             MessageBox.Show("Connection is not OK - Login properly")
  95.         End If
  96.     End Sub
  97.  
  98.     'Sletter data i databasen
  99.     Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click
  100.         If connectionOK Then
  101.             Query("DELETE FROM Person WHERE Person_Id = 500")
  102.         Else
  103.             MessageBox.Show("Connection is not OK - Login properly")
  104.         End If
  105.     End Sub
  106.  
  107.     Private Function Query(ByVal sql As String) As DataTable
  108.  
  109.         Dim myData As New DataTable
  110.  
  111.         Try
  112.             conn.Open()
  113.  
  114.             Dim myCommand As New MySqlCommand
  115.             Dim myAdapter As New MySqlDataAdapter
  116.  
  117.  
  118.             Dim kommando As New MySqlCommand(sql, conn)
  119.  
  120.             Dim da As New MySqlDataAdapter
  121.             da.SelectCommand = kommando
  122.             da.Fill(myData)
  123.  
  124.             conn.Close()
  125.         Catch myerror As MySqlException
  126.             MessageBox.Show("Error connecting to database" & _
  127.                 myerror.Message)
  128.         Finally
  129.             conn.Dispose()
  130.         End Try
  131.  
  132.         Return myData
  133.     End Function
  134.  
  135.     'Oppretter tabellen Person og legger inn eksempeldata
  136.     Private Sub Button6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button6.Click
  137.         If connectionOK Then
  138.             Query("CREATE TABLE Person (Person_Id int, Person_Fornavn char(25), Person_Etternavn char(25))")
  139.             Query("INSERT INTO Person (Person_Id, Person_Fornavn, Person_Etternavn) VALUES (1,'Svend','Horgen')")
  140.             Query("INSERT INTO Person (Person_Id, Person_Fornavn, Person_Etternavn) VALUES (2,'Kari','Jensen')")
  141.             Query("INSERT INTO Person (Person_Id, Person_Fornavn, Person_Etternavn) VALUES (3,'Rune','Olsen')")
  142.             Query("INSERT INTO Person (Person_Id, Person_Fornavn, Person_Etternavn) VALUES (4,'Birger','Svendsen')")
  143.             Query("INSERT INTO Person (Person_Id, Person_Fornavn, Person_Etternavn) VALUES (5,'Lars','Hansen')")
  144.         Else
  145.             MessageBox.Show("Connection is not OK - Login properly")
  146.         End If
  147.     End Sub
  148.  
  149.     Private Sub Button7_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button7.Click
  150.         If connectionOK Then
  151.             Query("DROP TABLE Person")
  152.         Else
  153.             MessageBox.Show("Connection is not OK - Login properly")
  154.         End If
  155.     End Sub
  156.  
  157. End Class
Add Comment
Please, Sign In to add comment