Witam,
Nie jestem jakoś specjalnie zaawansowany jednak uważam, że komuś się to może przydać.
Najpierw trzeba zdefiniować kilka zmiennych:
Połączenie:
`Dim con As New SqlClient.SqlConnection`
Polecenie dla bazy danych:
`Dim com As New SqlClient.SqlCommand`
Następnie musimy stworzyć DataSet, a z niego wyciągnąć adres bazy danych, u mnie wygląda on tak:
`Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\db.mdf; Integrated Security=True;Connect Timeout=30;User Instance=True`
U was powinien wyglądać podobnie :) kopiujemy ten link.
Definiujemy adres dla polączenia:
`con.ConnectionString = („Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\db.mdf; Integrated Security=True;Connect Timeout=30;User Instance=True”)`
Otwieramy połączenie:
`con.Open()`
Do polecenia com trzeba jeszcze dopisać, z jakiego połączenia ma korzystać:
`com.Connection = con`
W zależności od tego jakie polecenie chcemy wydać bazie danych, należy pamiętać, że niektóre pola umieszczone na naszej formatce, np: textbox mogą nie współgrać z bazą.
Także, zanim wydamy bazie polecenie np.: INSERT zdefiniujmy parametry polecenia. Dla przykładu podam jeden:
`com.Parameters.Add(„@data”, SqlDbType.Date, 90).Value = Date.Now.Date`
co mamy w nawiasie?: @data – nazwa parametru, SqlDbType.Date – rodzaj przesyłanych danych, 90 – rozmiar pola (specjalnie dałem większe aby uniknąć błędów niezgodności – polecam jednak dawać takie same jak w bazie)
Po nawiasie .Value czyli wartośc i przypisujemy tu datę systemową – Date.Now.Date (tu możemy podawać kontrolki taki jak textbox, czy calendar)
Teraz wydajemy polecenie :
<code>com.CommandText = („INSERT INTO [dokument] (datadok,datapla,id_typd,numer,id_kontrahent,id_firma,id_user,id_typp) VALUES (@data,@datapla,1,@numer,1,1,@user,1)”)
jak widać znajduje się w nim nasz parametr mój parametr @data. Typowa składnia polecenia wygląda tak:
`nazwa_polecenia.CommandText = (” POLECENIE SQL „)`
Niestety musimy znać język SQL aby w ogóle korzystać z bazy :)
Na koniec wykonujemy zadeklarowane polecenie:
` com.ExecuteScalar()`
Jeśli posiadasz w bazie danych kontrolki, które korzystają z datasetów pamiętaj o:
<code> NazwaDatasetu.Reset()
NazwaKontrolki.Refresh()
Napisałem tak naprawdę zaawansowaną aplikację i uważam, że jest to najlepszy i najszybszy sposób na łączenie z bazą i wydawanie DOWOLNYCH poleceń.
Miłego programowania.