Kanał - ATNEL tech-forum
Wszystkie działy
Najnowsze wątki



Teraz jest 29 mar 2024, o 03:03


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 24 ] 
Autor Wiadomość
PostNapisane: 14 lip 2014, o 07:44 
Offline
Nowy

Dołączył(a): 14 lip 2014
Posty: 11
Pomógł: 0

Witam.
Mam za zadanie stworzyć program który po kliknięciu <button> wyświetli 2 pola. Jedno do wprowadzenia słowa a następne do wprowadzenia jego tłumaczenia. Niżej powinien być przycisk zapisujący dane w tabeli w SQL. Dopiero zaczynam przygodę z programowaniem więc proszę o wyrozumiałość. Z góry dziękuję za każdą pomoc. Pozdrawiam.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 lip 2014, o 07:48 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 12 maja 2013
Posty: 568
Zbananowany użytkownik

Pomógł: 31

Podaj więcej szczegółów, w czym ta aplikacja ma być napisana?
Czy ma być, konsolowa, okienkowa czy webowa?

_________________
Und schreien

Spring
Erlöse mich
Spring
...



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 lip 2014, o 07:57 
Offline
Nowy

Dołączył(a): 14 lip 2014
Posty: 11
Pomógł: 0

W C# w Visual Studio. Okienkowa.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 lip 2014, o 09:17 
Offline
Użytkownik

Dołączył(a): 19 lip 2012
Posty: 86
Lokalizacja: Lublin
Pomógł: 3

Jeżeli chodzi o wygląd formatki to VS C# robi się to z marszu. Nie wymaga to tłumaczenia.
Domyślam się że będziesz korzystać z VS C# Express (wersja darmowa). To w tym przypadku łączenie z bazą wymaga instalacji np. MS SQL Server (chyba że już masz zainstalowane). Najlepiej doinstalować sobie nakładkę graficzną na SQL, jest to bodajże MS SQL Management Studio. Z tego co pisałeś to nie jest chyba zbyt skomplikowane zadanie. Jednak warto się zastanowić nad jego wersja rozwojową i od razu skorzystać z LINQ - jest to gotowa biblioteka do komunikacji z bazami danych.

O resztę informacji pytaj wujka. Tam jest wszystko.

Powodzenia
Michał



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 lip 2014, o 11:56 
Offline
Nowy

Dołączył(a): 14 lip 2014
Posty: 11
Pomógł: 0

Ok to zrobiłem. Teraz mam jeszcze jeden problem. Chcę wyświetlić w jednej tabeli dane z 2 tabeli. Ma to wyglądać tak :

1 tabela
<Id> <Słowo> <Id2>

2 tabela
<Id2> <Słowo2>

I teraz wpisując w tabele 1 <Id2> ma sie wyświetlic <slowo 2> w <Id2>.

Mam juz tabele ale nie wiem co dalej zrobić żeby te dane się wyświetlały prawidłowo. Pozdrawiam



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 lip 2014, o 12:32 
Offline
Użytkownik

Dołączył(a): 15 lut 2012
Posty: 344
Lokalizacja: Bydgoszcz
Pomógł: 11

Cześć!

Jeli chcesz się dowiedzieć o bazach danych w C# to zapraszam tutaj: http://developer-avr.blogspot.com/2014/ ... h-cz1.html to poradnik który popełnił nasz kolega forumowy developer85.

BTW. Umieściłeś temat w niewłaściwym poddziale ;)

Pozdrawiam!



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 lip 2014, o 12:35 
Offline
Nowy

Dołączył(a): 14 lip 2014
Posty: 11
Pomógł: 0

Dziękuje za odpowiedź i przepraszam za błąd :/

------------------------ [ Dodano po: 26 minutach ]

Niestety nie znalazłem tam odpowiedzi na moje pytanie :/



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 lip 2014, o 13:52 
Offline
Użytkownik

Dołączył(a): 19 lip 2012
Posty: 86
Lokalizacja: Lublin
Pomógł: 3

Jeżeli chcesz mieć na formatce w jednym wierszu dane z dwóch tabel to proponuje przestudiować zapytania SQL.
Podpowiem że chodzi o 'join'.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 lip 2014, o 19:50 
Offline
Użytkownik

Dołączył(a): 15 cze 2013
Posty: 599
Lokalizacja: Lubin
Zbananowany użytkownik

Pomógł: 35

Można wszystko wyświetlić z 2 tabel jednym zapytaniem
Składnia: [ Pobierz ] [ Ukryj ]
język sql
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.



wynik:
1|SlowoID1Tabela1|101|101|SlowoID1Tabela2
2|SlowoID2Tabela1|102|102|SlowoID2Tabela2
3|SlowoID3Tabela1|103|103|SlowoID3Tabela2
4|SlowoID4Tabela1|104|104|SlowoID4Tabela2
5|SlowoID5Tabela1|105|105|SlowoID5Tabela2

Zamiast * można wyświetlić tylko słowo z tabeli 2



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 lip 2014, o 21:50 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 04 paź 2011
Posty: 8583
Pomógł: 337

i trzeba wykopać do właściwego miejsca na pytania ..

_________________
[b]San Escobar! Patria mia! Tu eres como la salud.[/b]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 15 lip 2014, o 08:47 
Offline
Nowy

Dołączył(a): 14 lip 2014
Posty: 11
Pomógł: 0

Niestety nie działa a z tego co się dowiedziałem mam użyć SQL connection, SQL command i SQL datareader oraz dataAdapter. Ktoś może mi to krok po kroku wyjaśnić?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 15 lip 2014, o 09:18 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 14 lut 2012
Posty: 598
Lokalizacja: Warszawa
Pomógł: 13

Edit; skasowałem trochę tego co napisałem bo nie doczytałem, kolega @kazzik87 ma rację użyj join a kolega @OdeOn dał ci rozwiązanie ;)

kazzik87 napisał(a):
Jeżeli chodzi o wygląd formatki to VS C# robi się to z marszu. Nie wymaga to tłumaczenia.Domyślam się że będziesz korzystać z VS C# Express (wersja darmowa). To w tym przypadku łączenie z bazą wymaga instalacji np. MS SQL Server (chyba że już masz zainstalowane). Najlepiej doinstalować sobie nakładkę graficzną na SQL, jest to bodajże MS SQL Management Studio. Z tego co pisałeś to nie jest chyba zbyt skomplikowane zadanie. Jednak warto się zastanowić nad jego wersja rozwojową i od razu skorzystać z LINQ - jest to gotowa biblioteka do komunikacji z bazami danych.O resztę informacji pytaj wujka. Tam jest wszystko.PowodzeniaMichał


Nie ładuj kolegi na minę ;) , skoro ma problem z prostymi zapytaniami to LINQ będzie dla niego jak dla małpy żyletka ( bez urazy ) i samo poznanie LINQ zajmie więcej czasu niż napisanie całego programu ;)



Ostatnio edytowano 15 lip 2014, o 09:42 przez Malutki_27, łącznie edytowano 2 razy

Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 15 lip 2014, o 09:35 
Offline
Nowy

Dołączył(a): 14 lip 2014
Posty: 11
Pomógł: 0

Spoko obrażaj mnie do woli byle by działało :) mam coś takiego

InitializeComponent();

SqlCeConnection myConnection = new SqlCeConnection();
myConnection.ConnectionString = "Data source = |DataDirectory|\Tabela.sdf"; Integrated Security = true;
myConnection.Open();

Co dalej? :/



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 15 lip 2014, o 09:43 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 14 lut 2012
Posty: 598
Lokalizacja: Warszawa
Pomógł: 13

skoro masz już połączenie do bazy , to sprawdź czy jest otwarte i powołaj do życia sqladapter a następnie sqlcommand



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 15 lip 2014, o 10:08 
Offline
Nowy

Dołączył(a): 14 lip 2014
Posty: 11
Pomógł: 0

Tak?

SqlCeConnection myConnection = new SqlCeConnection();
myConnection.ConnectionString = "Data source = |DataDirectory|Tabelka.sdf";
myConnection.Open();
{
SqlCeCommand myCommand = new SqlCeCommand(
queryString; connection);
connection.Open();
SqlDataReader reader = command.ExecuteReader();
try
{
while (reader.Read())
{
Console.WriteLine(String.Format("{0}, {1}",
reader[0], reader[1]));
}
}
finally
{
reader.Close();
}


}

Tyle że wywala pełno błędów :/



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 15 lip 2014, o 10:22 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 14 lut 2012
Posty: 598
Lokalizacja: Warszawa
Pomógł: 13

Jako załącznik masz małe demo jak ;)
Załącznik:
WindowsFormsApplication1.zip


A tutaj taki szybki podgląd

Składnia: [ Pobierz ] [ Ukryj ]
język csharp
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Autor postu otrzymał pochwałę

Załączniki:

Aby zobaczyć załączniki musisz się zalogować. Tylko zalogowani użytkownicy mogą oglądać i pobierać załączniki.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 15 lip 2014, o 11:03 
Offline
Nowy

Dołączył(a): 14 lip 2014
Posty: 11
Pomógł: 0

Wywala mi taki błąd:
Warning 1
Field 'TabeleSQL.Form1.cnn' is never assigned to, and will always have its default value null

:/



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 15 lip 2014, o 11:21 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 14 lut 2012
Posty: 598
Lokalizacja: Warszawa
Pomógł: 13

Pokaż kod bo wygląda na to że masz coś zadeklarowane ale nie zdefiniowane



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 15 lip 2014, o 11:29 
Offline
Nowy

Dołączył(a): 14 lip 2014
Posty: 11
Pomógł: 0

Składnia: [ Pobierz ] [ Ukryj ]
język csharp
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 15 lip 2014, o 12:01 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 14 lut 2012
Posty: 598
Lokalizacja: Warszawa
Pomógł: 13

Strasznie mieszasz ........ Musisz się zdecydować jak będziesz pisał program ..... albo budujesz program za pomocą wyswig albo piszesz program przy pomocy kodu, w pierwszym przypadku jest bardzo trudno pomóc chyba że będziesz przesyłał spakowany projekt, w drugim przypadku przynajmniej będzie coś widać .... ale można pomóc jedynie we fragmentach .......

Tak na marginesie dwa razy próbujesz otworzyć bazę danych myConnection.Open();
Jeżeli wywalę form1_load i myConnection.Open(); to u mnie działa (oczywiście jak wywalę mycoonection)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 15 lip 2014, o 12:39 
Offline
Nowy

Dołączył(a): 14 lip 2014
Posty: 11
Pomógł: 0

wył i wł program i już działa O_o Ale mam jedno pytanie. W SQL mam zrobione 2 tabelki i ok ta pierwsza sie wyświetla i w niej jest pole ID2. Po wpisaniu do niego np 3 powinnien wyskoczyc wiersz z tabelki 2 ktory ma ID2.

Tabela 1
ID1 slowo ID2
1 a 4


Tabela 2
ID2 slow2 slowo3
4 b c


I to powinno dać tabele
ID1 slowo slowo2 slowo3
1 a b c



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 15 lip 2014, o 14:53 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 14 lut 2012
Posty: 598
Lokalizacja: Warszawa
Pomógł: 13

Składnia: [ Pobierz ] [ Ukryj ]
język mysql
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

Tak się przyglądam tym twoim tabelkom i według mnie są źle zaprojektowane , ale mogę się mylić zresztą jak by co to i tak wujdzie w praniu ......



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 16 lip 2014, o 07:28 
Offline
Nowy

Dołączył(a): 14 lip 2014
Posty: 11
Pomógł: 0

Chyba faktycznie namieszalem. Zmieniłem pomysł na program i teraz to wygląda tak:
button1 wyswietla tabele ze słowem z bazy danych z ID1 ( można przełączyć na następne słowa z ID2 > ID3 > itp)
button2 wyświetla tabele z możliwościa dodawania słów. I teraz zależy mi żeby button1 wyświetlał słowo z tabeli z losowym ID i przy przełączaniu na następne słowo też było losowe. Da sie coś takiego zrobić? Btw Dziekuje Malutki za pomoc i cierpliwość :)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 16 lip 2014, o 08:42 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 14 lut 2012
Posty: 598
Lokalizacja: Warszawa
Pomógł: 13

Da się zrobić .... tylko że sposobów jest tyle co programistów ...... Ja chyba bym poszedł drogą filtrów i sklecił małe oszukaństwo ;)
Rozumiem że korzystasz z kontrolki datagridview , jeżeli tak to możesz to zrobić tak :

pobierasz dane do DataTable z bazy danych
DataTable ładujesz do grida
odczytujesz ile masz wierszy w gidzie i na tej podstawie generujesz liczbę losową przy pomocy random
następnie na grida zakładasz filtr który pokaże ci wiersz który został wcześniej wylosowany ...



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
Wyświetl posty nie starsze niż:  Sortuj wg  
Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 24 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 0 gości


Nie możesz rozpoczynać nowych wątków
Nie możesz odpowiadać w wątkach
Nie możesz edytować swoich postów
Nie możesz usuwać swoich postów
Nie możesz dodawać załączników

Szukaj:
Skocz do:  
cron
Sitemap
Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
phpBB SEO