Baza podataka u C#

Htio bih napraviti bazu podatak u C# tako da moj program može koristiti tu bazu za čitanje i spremanje podataka. No koliko sam vidio treba imati neki server uključen na kompu da bi to radilo?
Šta onda krajnji korisnici, jel i oni trebaju imat to uključeno ili mogu samo koristiti bazu? vidio sam da se pravi .mdf baza
Pa ako mi netko može malo objasniti

za test možeš korsititi sql server express koji besplatan, također ima besplatnih baza kao što su postgresql, firebird ili mysql.

za spajanje na bilo koju bazu treba ti driver za bazu za .net.

korisnik mora imati instaliranu bazu koju koristiš.

a sta ti ne bi bilo dobro koristiti recimo sqlite?

driver za bazu?

instaliranu bazu? to dolazi sa instalacijom programa jel

[quote=“Timmy”]driver za bazu?

instaliranu bazu? to dolazi sa instalacijom programa jel[/quote]

Using SQLite With C# - C# Tutorials | Dream.In.Code
SQLite C# tutorial

tu ces naci dovoljno informacija…

[quote=“Timmy”]driver za bazu?

instaliranu bazu? to dolazi sa instalacijom programa jel[/quote]

biblioteku, za sql server dolazi sa .net frameworkom, za druge baze moraš skinuti posebno i ubaciti.
obično na straicama providera imaš za skinuti i moraš ubaciti kao referencu.

sorry. još jedno pitanje. SQL server - jel korisnici moraju instalirati SQL server da bi koristili tu bazu zajedno sa programom na svom kompjuter?

Jer radim u Visual Studio a tamo je sve zajedno implementirano i lijepo omogućeno da se brišu dodaju tablice i slično. Pa si kontam ako koristim npr SQLite da neće biti tak jednostavnom

Pročitaj šta piše na linkovima što sam ti dao jer tamo imaš odgovor…
“SQLite is a small, fast, and reliable database which can be used without the end user having to install anything extra”

Da se ne bi previše zajebavao, sa koje kakvim instalacijama posebnih baza, drivera, servera i čega sve ne, otiđi na ovu stranicu: Data Storage | Web Application Deployment | SQL Server 2012 Compact skini tu verziju i instaliraje. To je kompaktna free verzija SQL Servera, koja radi sa MS platformom out of the box. Prilikom instalacija na druga računala nema potrebe za dodatnim instalacijama bilo kakvih servera, libraria i ostaloga.

Ove savjete vezane za sqlite, mysql, firebird, postgresql i sl. zaboravi u startu jer ćeš 99.9% imati nekavih problema zbog kojih ćeš sve htjeti sterati u 3PM i ■■■■■■■■ kompletni IT sektor. Iskustvo govori iz mene.

Pozdrav.

[quote=“CreatifCode”]
Ove savjete vezane za sqlite, mysql, firebird, postgresql i sl. zaboravi u startu jer ćeš 99.9% imati nekavih problema zbog kojih ćeš sve htjeti sterati u 3PM i ■■■■■■■■ kompletni IT sektor. Iskustvo govori iz mene.
Pozdrav.[/quote]

Sa postgresqlom radim 2 godine i nikad nisam imao problema.
Mene zanima koji su to problemi?
Isto kao kad kažeš bmw jedini radi dobro, a svi ostali imaju mane.

Sql server ima vise mogucnosti, ali postgresql
je po vertikalnom skaliranju i po brzini brza od
Sql servera, barem je bila.

Postgresql 9.2 verzija na jednom xeonu i
32 gb rama izdrži cca.15 000 query-a u s, ako
Je sve podeseno kako treba.

Nemam nista protiv sql servera, ali postgresql baza
Zadovoljava većinu korisnika.

Netko voli sql server, netko sql server, a netko oracle.

Ja mogu radit s bilo kojom bazom, meni svejedno,
ali postgresql je dosta kvalitetna baza.

mislim da ću ja probat SQLite

sqlite je embeded baza, ako radiš za više korisnika, neznam kako češ je koristiti, osim ako radiš web?
za desktop aplikaciju za više korisnika, zaboravi sqlite.

pa svaki korisnik će imati tu bazu na svom kompu, tak da mislim da nema problema

[quote=“jorgovan”]sqlite je embeded baza, ako radiš za više korisnika, neznam kako češ je koristiti, osim ako radiš web?
za desktop aplikaciju za više korisnika, zaboravi sqlite.[/quote]

mislim da je bas suprotno, neces koristit sqlite za web vec za standalone aplikacije…

Timmy poslusaj savjet CC-a, ili jos bolje testiraj si vise tipova pa se odluci koji je najbolji… to mozes i na kraju rada s aplikacijom ako si lijepo napravis klasu za rad sa podatcima.

U C# i .net frameworku nema potrebe za pravljenjem nekakve klase pored izvanrednih ugrađenih mogućnosti poput Entity Framework (Get Started) i LINQ to SQL, LINQ to XML, LINQ (Language-Integrated Query) za nekakve posebne klase stvarno nema potrebe. Pored ovakvih nativnih librarya za SQL Server bio bi grijeh koristiti bilo koju drugu bazu.

Ako nemas puno istovremenih korisnika na bazi, onda su SQLite ili SQL CE sasvim dovoljni. Engine baze se nalazi u par DLLova i to sve zajedno distribuiras sa svojom aplikacijom u Bin folderu, nema potrebe za nikakvom dodatnom instalacijom.
Samo u config datoteci (app.config ili web.config) ispravno podesis provider baze. Npr za SQL CE 4 connection string izgleda ovako nekako:

Najlakse da sve potrebne komponente instaliras preko Web Platform Installera (on dodaje tooling support u VS, moze instalirati sve sto ti treba od alata), i Nugeta (za dodavanje potrebnih biblioteka u sam projekt.)

Nuget je najbolja stvar koja se desila .NETu od pojave LINQa :slight_smile:

Za pristup bazi koristi ili rucno pisani SQL putem odgovarajucih ADO.NET klasa (SqlConnection, SqlCommand ,…) ili Entity Framework. Na Linq2Sql zaboravi, EF ga je zamjenio i ne razvija se vise.
Tutorial za EF 5 POCO (code first pristup, osobno sam protiv designera i slicnih grafickih pomagala. Pokazuje rad sa SQL Serverom, ali radi i sa drugim bazama):
nova baza: Code First to a New Database
postojeca baza: Code First to an Existing Database

hvala svima, odlučio sam se za SQLite i radim u tome, zadovoljan sam