Baza danych w C#

0

Mam baze danych zapisaną .mdb na dysku. Tworze program poprzez stworzenie datagridview i wszystko sie wyswietla:) Tylko nie wiem jak napisac zapisywanie, tz jaki kod powinien miec botton "zapisz" zeby po dodaniu pozycji w rogramie po zamknieciu była zapisana?? Jak najłatwiej napisac funkcje szukająca jakiegos słowa we wszystkich polach bazy danych??
Z góry bardzo dziękuje za pomoc
pzdr

0

Mam baze danych zapisaną .mdb na dysku. Tworze program poprzez stworzenie datagridview i wszystko sie wyswietla:) Tylko nie wiem jak napisac zapisywanie, tz jaki kod powinien miec botton "zapisz" zeby po dodaniu pozycji w rogramie po zamknieciu była zapisana?? Jak najłatwiej napisac funkcje szukająca jakiegos słowa we wszystkich polach bazy danych??
Z góry bardzo dziękuje za pomoc
pzdr

Ad 1: Jeśli używasz DatagridView (zapewne zbindowane z DataSet), możesz użyć DataSet.Update(). Wcześniej jednak trzeba użyć "UpdateQuery buildera". Wszystko znajdziesz na google.

Ad 2: Chodzi ci o .NET czy po stronie bazy danych.
a) (.NET): Tak jak zwyczajnie byś to zrobił, np. wykorzystując

Array.Exist<T>(array[], predicate<T>)
.. lub tradycyjnie pętla po DataSet.Tables.Rows... : na to samo wychodzi tylko inaczej zapisane.

b) DB: można użyć where param like '%fraza%' .. ale jest to wolne. W MSSQL jest lepsza funkcja CONTAINSTABLE. (F1)

0

Podobne wątki były już poruszane:
http://4programmers.net/Forum/442065?h=#id442065
http://4programmers.net/Forum/418872?h=#id418872

Przykładowy kod szukania za pomocą zapytania SQL:

        public DataTable Szukaj(string kategoria, string slowo)
        {
            if (slowo.Length >= 3)
            {
                if (BazaDanych.DataSet.Tables["Czytelnicy"] != null)
                    BazaDanych.DataSet.Tables["Czytelnicy"].Clear();

                string zapytanie = "SELECT * " +
                                "FROM Czytelnik " +
                                "WHERE " + kategoria + " LIKE '%" + slowo + "%'";

                da = new OleDbDataAdapter(zapytanie, BazaDanych.GetPolaczenie());
                da.Fill(BazaDanych.DataSet, "Czytelnicy");

                return BazaDanych.DataSet.Tables["Czytelnicy"];
            }
            else
            {
                throw new Exception("Szukane słowo ma mniej niż 3 znaki.");
            }
        }

Zeby Ci nie zamieszać - obiekt DataSet jest publiczny i statyczny Klasy BazaDanych (BazaDanych.DataSet).

1 użytkowników online, w tym zalogowanych: 0, gości: 1