Pouze tento týden sleva až 80 % na e-learning týkající se Swift
Využij akce až 80 % zdarma při nákupu e-learningu. Více informací.
discount week 80
Avatar
Wendys
Člen
Avatar
Wendys:18. března 17:42

Zdravím,
mám desktop aplikaci s lokální databází s jednoduchou tabulkou. Hlavní myšlenka je používat databázi dodanou s aplikací, aby se nemusela připojovat na žádný server. Ve visual studiu mi vše funguje, ale problém je, když chci aplikaci spustit na jiném pc, tak mi hlásí chybu sql serveru, že se nemůže připojit do databáse. Ale v adresáři Debug soubor Database.mdf je a tak jsem si myslel, že se aplikace automaticky připojí. Asi dělám něco blbě a nevím co. Tu lokální dotabázi jsem udělal podle dokumentace: https://docs.microsoft.com/…g-a-designer?…
Budu rád, jestli mě někdo navede správným směrem, protože to nechápu, když tam ta databáze je, tak proč to nejde. Děkuji.

Zkusil jsem:

Chci docílit:

Odpovědět
18. března 17:42
Wokna jsou vopruz!
Avatar
Tadeáš Burda
Brigádník
Avatar
Odpovídá na Wendys
Tadeáš Burda :18. března 17:54

Problem bude asi connection string, ak sa db vola stale rovnako...Skus si to vygooglit a pouzit relativnu cestu...Ak appka hlada db na konkretnej adrese == tej co si pouzil pri vyvoji, tak ak presunes appku aj db tak uz je neplatna...Mozes este pripojeny db vlozyt do try/ catch bolku, odschitit vynimku a kuknut sa na chybu mozno tam bude kde tu db hlada(adresa)...Ale hadam ze to bude ten string

 
Nahoru Odpovědět
18. března 17:54
Avatar
Wendys
Člen
Avatar
Odpovídá na Tadeáš Burda
Wendys:18. března 18:58

Connection string bude asi ok: Data Source=(Local­DB)\MSSQLLocal­DB;AttachDbFi­lename=|DataDi­rectory|\Data­base1.mdf;Inte­grated Security=True
Ale ta vyjímka try je dobrý nápad, vyzkouším to co bude hlásit. Děkuji za reakci.

Nahoru Odpovědět
18. března 18:58
Wokna jsou vopruz!
Avatar
Ghst
Člen
Avatar
Ghst:18. března 20:15

Jak distribuuješ aplikaci? Je na daném PC nainstalovaný SQL Server Express LocalDB, bez ní ti to nepůjde. Stačí publikovat, a v požadavcích projektu zaškrtnout příslušnou verzi.

 
Nahoru Odpovědět
18. března 20:15
Avatar
Wendys
Člen
Avatar
Odpovídá na Ghst
Wendys:19. března 8:54

Bingo! To bude asi ono. Distribuji to do souboru jako z CD a je pravda, že jsem tam jenom nastavoval verzi net.Frameworku, ale SQL ne. Sice by na tom PC měl být SQL server, ale asi to bude jiná verze. Ale ještě se zeptám, kde zjistím, jakou verzi potřebuji?

Nahoru Odpovědět
19. března 8:54
Wokna jsou vopruz!
Avatar
Ghst
Člen
Avatar
Ghst:21. března 20:06

JE rozdíl mezi klasickým SQL Server Express a SQL Server Express LocalDB. Nemyslím si, že je potřeba nějaká konkrétní verze a mělo by to fungovat i na starších (na nověších rozhodně ano).

Když použiješ stejnou verzi, jako vvíjíš, budeš mít jistotu ;)
Zkus dle tohoto návodu Connect to SQL Server Express LocalDB

Editováno 21. března 20:08
 
Nahoru Odpovědět
21. března 20:06
Tento výukový obsah pomáhají rozvíjet následující firmy, které dost možná hledají právě tebe!
Avatar
Wendys
Člen
Avatar
Odpovídá na Ghst
Wendys:8. června 10:07

Ještě mám další problém, a to, že pokud naistaluji aplikaci přes klasický instalátor a zvolím C: tak mi to neumožňuje zapisovat do databáze, protože je pouze ke čtení, ale ve VS je všude nastaveno i zápis. Pouze pokud si zvolím při instalaci jiný disk, tak to funguje. Když se podívám po instalaci na C: na vlastnosti-zabezpečení databáze je tam pouze čtení a pokud to změním, pak se po spuštění aplikace databáze nepřipojí. Nevíte proč to teda nainstaluje pouze na C: databázi bez zápisu?

Nahoru Odpovědět
8. června 10:07
Wokna jsou vopruz!
Avatar
Ghst
Člen
Avatar
Odpovídá na Wendys
Ghst:9. června 16:06

S tímto jsem se nesetkal, ale ale domnívám se, že aplikaci (nebo alespon databázi *.mdf a *.ldf soubory) máš v nějaké složce s ochranou proti zápisu. V tom případě je potřeba spouštět jako admin.

Kam to instaluje instalátor na disku C, jak vypadá cesta, která nefunguje?

Nějaké chyby při spouštění to nehází?

 
Nahoru Odpovědět
9. června 16:06
Avatar
JerryM
Člen
Avatar
JerryM:14. června 16:23

to asi instaluješ pod Windows 10 co ? .. njn .. to je zabezpečení Windows 10, odstranění ReadOnly atributu budeš muset udělat dodatečně na celý adresář kde máš tu databázi .. nebo tvuj celý program ...

 
Nahoru Odpovědět
14. června 16:23
Avatar
Wendys
Člen
Avatar
Odpovídá na JerryM
Wendys:15. června 14:22

Jo je to W10. Ano, funguje pouze pokud dodatečně povolím zápis v adresáři nainstalované aplikace souborů .mdf .idf☹️. A to opravdu nejde udělat, aby ten instalátor ty atributy rovnou změnil na zápis?

Nahoru Odpovědět
15. června 14:22
Wokna jsou vopruz!
Avatar
JerryM
Člen
Avatar
JerryM:15. června 14:29

pokud máš oprávnění Admina tak jo .. ale jinak to takhle W10 maj ... ve W7 to tak nebylo ... W10 sou přísnější
ale odstranic R/O atribut se dá i programově
https://stackoverflow.com/…-from-a-file

 
Nahoru Odpovědět
15. června 14:29
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 11 zpráv z 11.