Windows Form + lokalna BD

0

Witam,
Zrobiłem prosty projekt w Formie (kilka textboxów) i chciałbym jego wyniki zapisać w lokalnej bazie danych. Bazę dodałem do projekty poprzez Add -> New Item -> Data -> Local Database i nazwałem ją Uzytkownicy. Dodałem tabelę za pomocą Server Explorer więc baza nie jest pusta.

Mam jednak problem z połączeniem się z nią. Mój kod:

 private void dodajUzytkownika(Uzytkownik user)
        {
            String adres = @"Server=localhost; Database=Uzytkownicy; Trusted_Connection=True";

            using (SqlConnection conn = new SqlConnection (adres))
            {
                conn.Open();

                 //Jakiś kod
            }

Po dojściu do conn.Open() wywala mi błąd:
A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: Named Pipes Provider, error: 40 - Could not open a connection to SQL Server)

Jako, że jest to moja pierwsza przygoda z bazami danych mam dwa pytania:
*Co robię źle?
*Czy jest prostszy sposób na użytkowanie z lokalnych baz danych?

Pzdr

0

Verify that the instance name is correct

Myślę że zwróć uwagę na ten fragment.

0

Literówki żadnej nie znalazłem. Siedzę nad tym od dobrej godziny i wciąż nie wiem OCB

0

Czy twoja baza danych jest zahostowana na domyślnej (nienazwanej instancji)?
Poza tym sprawdź czy masz włączoną usługę SQL Server Browser i w SQL Configuration Server Manager -> Network Configuration czy masz włączone protokoły.

Z Management Studio możesz się dostać do tej bazy?

0

Skoro baza jest lokalna, to w connection stringu trzeba podać nazwę pliku (parametr AttachDbFilename), a nie nazwę bazy.

Ostatnio ktoś miał podobny problem: http://4programmers.net/Forum/C_i_.NET/227305-polaczenie_z_baza_danych_sql_server?p=1000743#id1000743

0

Aby uniknąć podobnych błędów zamiast ręcznie pisać connection stringa możesz skorzystać z klasy SqlConnectionStringBuilder

0

Skoro lokalna baza danych to pewnie SQL Server Compact (*.sdf).

Po dodaniu bazy, do referencji projektu Visual dorzucił System.Data.SqlServerCe

W sekcji using dopisz:
using System.Data.SqlServerCe;

i z górki :

  string connect = @"Data Source=c:\...\TwojaBaza.sdf";
  SqlCeConnection con = new SqlCeConnection(connect);



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