Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <Window x:Class="bazaDanych.MainWindow"
- xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
- xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
- Title="Logowanie do bazy danych" Height="350" Width="525">
- <Grid Background="#FFCCD87E">
- <DataGrid x:Name="dataGrid1" HorizontalAlignment="Left" Margin="40,177,0,0" VerticalAlignment="Top" Width="438" ItemsSource="{Binding }" Height="118" Background="#FFFCFCFC" OpacityMask="White" GridLinesVisibility="Horizontal" HorizontalGridLinesBrush="#FF20AFF0" VerticalGridLinesBrush="#FFCDF7F7" BorderBrush="#FFF3F3F3"/>
- <Button x:Name="logowanieBtn" Content="Zaloguj do Serwera MySQL" HorizontalAlignment="Left" Margin="165,139,0,0" VerticalAlignment="Top" Width="211" Click="logowanieBtn_Click" Background="#FF6ED7EA"/>
- <Label Content="Nazwa serwera" HorizontalAlignment="Left" Margin="40,7,0,0" VerticalAlignment="Top"/>
- <TextBox x:Name="nazwaServeratb" HorizontalAlignment="Left" Height="23" Margin="165,7,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="129" Background="#FFEB5757"/>
- <TextBox x:Name="nazwaServeratb1" HorizontalAlignment="Left" Height="23" Margin="165,7,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="129" Background="#FF8CEB57"/>
- <TextBox x:Name="nazwaBazyDanychtb" HorizontalAlignment="Left" Height="23" Margin="165,35,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="129" Background="#FF8CEB57"/>
- <TextBox x:Name="uzytkowniktb" HorizontalAlignment="Left" Height="23" Margin="165,63,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="129" Background="#FF8CEB57"/>
- <Label Content="Nazwa użytkownika" HorizontalAlignment="Left" Margin="40,64,0,0" VerticalAlignment="Top"/>
- <Label Content="Hasło użytkownika" HorizontalAlignment="Left" Margin="40,90,0,0" VerticalAlignment="Top"/>
- <Label Content="Baza danych" HorizontalAlignment="Left" Margin="40,38,0,0" VerticalAlignment="Top"/>
- <PasswordBox x:Name="haslotb" HorizontalAlignment="Left" Margin="165,91,0,0" VerticalAlignment="Top" Width="129" Background="#FF8CEB57"/>
- <Image HorizontalAlignment="Left" Height="100" Margin="390,22,0,0" VerticalAlignment="Top" Width="100" Source="obrazki/computer-hacked.jpg"/>
- </Grid>
- </Window>
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- using System.Windows;
- using System.Windows.Controls;
- using System.Windows.Data;
- using System.Windows.Documents;
- using System.Windows.Input;
- using System.Windows.Media;
- using System.Windows.Media.Imaging;
- using System.Windows.Navigation;
- using System.Windows.Shapes;
- using MySql.Data.MySqlClient;
- using System.Data;
- namespace bazaDanych
- {
- /// <summary>
- /// 1. Aplikacja nazwiązuje połączenie z baza danych MySQL
- /// 2. Wyświetla informacje jeżeli wystąpi błąd w trakcie połączenia
- /// 3. Dane zostaną wyświetlone w kontrolce DATAGRID
- /// 4. Po pomyślnym wyświetleniu danych połączenie z bazą danych jest zamykane
- /// w celu oszczędności pamięci serwera
- /// </summary>
- public partial class MainWindow : Window
- {
- public MainWindow()
- {
- InitializeComponent();
- }
- private void logowanieBtn_Click(object sender, RoutedEventArgs e)
- {
- pobierzDane();
- }
- //Metoda nawiązuję połączenie z bazą danych MySQL
- //jeżeli wystąpi błąd logowania pokaże się stosowany komunikat
- public void pobierzDane()
- {
- //pobierz dane logowania z formularza i przypisz
- string mojePolaczenie =
- "SERVER=" + nazwaServeratb.Text + ";" +
- "DATABASE=" + nazwaBazyDanychtb.Text + ";" +
- "UID=" + uzytkowniktb.Text + ";" +
- "PASSWORD=" + haslotb.Password + ";";
- //wykonaj polecenie języka SQL
- string sql = "SELECT * FROM Pracownicy";
- MySqlConnection polaczenie = new MySqlConnection(mojePolaczenie);
- //blok try-catch przechwytuje błędy
- try
- {
- //otwórz połączenie z bazą danych
- polaczenie.Open();
- //wykonaj polecenie języka SQL na danych połączeniu
- using (MySqlCommand cmdSel = new MySqlCommand(sql, polaczenie))
- {
- DataTable dt = new DataTable();
- //Pobierz dane i zapisz w strukturze DataTable
- MySqlDataAdapter da = new MySqlDataAdapter(cmdSel);
- da.Fill(dt);
- //wpisz dane do kontrolki DATAGRID
- dataGrid1.ItemsSource = dt.DefaultView;
- }
- }
- //Jeżeli wystąpi wyjątek wyrzuć go i pokaż informacje
- catch (MySql.Data.MySqlClient.MySqlException ex)
- {
- MessageBox.Show("Błąd logowania do bazy danych MySQL","Błąd");
- }
- //Zamknij połączenie po wyświetleniu danych
- polaczenie.Close();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement