NOVINKA - Online rekvalifikační kurz Python programátor. Oblíbená a studenty ověřená rekvalifikace - nyní i online.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.

Diskuze – Lekce 4 - Připojená databázová aplikace v C# .NET

Zpět

Upozorňujeme, že diskuze pod našimi online kurzy jsou nemoderované a primárně slouží k získávání zpětné vazby pro budoucí vylepšení kurzů. Pro studenty našich rekvalifikačních kurzů nabízíme možnost přímého kontaktu s lektory a studijním referentem pro osobní konzultace a podporu v rámci jejich studia. Toto je exkluzivní služba, která zajišťuje kvalitní a cílenou pomoc v případě jakýchkoli dotazů nebo projektů.

Komentáře
Avatar
Luboš
Člen
Avatar
Odpovídá na Milan Křepelka
Luboš:1.11.2015 23:17

Kdyby to bylo tak jak píšeš tak to chápu, jenomže jde o to, že mi DB uvnitř VS ukazuje už přeformátovaná data do češtiny. Takže dáš copy/paste a chceš vyhledat to co vidíš, jenže ti to nepůjde protože je to vnitřně uložené jinak a pokud neznáš dobře vnitřní nastavení jsi víš kde.

Nevíš o nějakém článku(knize) kde by se tímto tématem někdo stručně zabýval?

 
Odpovědět
1.11.2015 23:17
Avatar
Luboš
Člen
Avatar
Odpovídá na Luboš
Luboš:1.11.2015 23:24

Ještě dodávám: Jde o to, že klient je obvykle uživatel aplikace nikoliv její tvůrce.

 
Odpovědět
1.11.2015 23:24
Avatar
Milan Křepelka
Tvůrce
Avatar
Odpovídá na Luboš
Milan Křepelka:2.11.2015 6:25

Asi nejsme na stejné vlně. Běžně pro SQL se datum příkazů zadává takt jak psal JOF. Nicméně tak jak to máš, tak to je stejně nedobře a takhle by se to dělat nemělo. Ten tvůj příkaz má vypadat takto

SELECT [NazevPolozky] FROM [Tabulka3] WHERE [Tabulka3].[Datum]=@MujDatumParam

a do commandu naplnit parametr, podobně jak je v 5.tém dílu a s tím, že do parametru nacpeš, že to je datum a nastavíš už typovou promennou DateTime, takže nějakým formátem ala "jak vlastně" vypadá datum vůbec nebudeš muset zabývat

 
Odpovědět
2.11.2015 6:25
Avatar
Petr Vocel
Tvůrce
Avatar
Petr Vocel:21.5.2016 11:54

Musím upozornit na nesoulad mezi SQLConnection­StringBuilder a SqlConnection. První při vytváření obloží cestu k dat.file úvozovkami, což druhý nepředpokládá a zhavaruje. Alespoň ve verzi studia 2015. Jako důkaz přikládám program a výslednou obrazovku.

namespace SlovickaSQL
{
    class Program
    {

          static void Main(string[] args)
        {
            string pripojovaciRetezec2 = @"Data Source= (LocalDB)\MSSQLLocalDB;AttachDbFilename=C:\Uceni_SQL_MS-SQL\Database\SlovnicekDB.mdf; Integrated Security = True; Connect Timeout = 30";
            Console.WriteLine("Připojovací řetezec z vlastností\n {0}<<", pripojovaciRetezec2);
            using (SqlConnection pripojeni = new SqlConnection(pripojovaciRetezec2))
            {
                Console.WriteLine("Zkusím se připojit s tímto textem:\n={0}<<", pripojovaciRetezec2);
                pripojeni.Open();
                Console.WriteLine("Aplikace se úspěšně připojila k databázi.");
                pripojeni.Close();
                Console.WriteLine("Aplikace se úspěšně odpojila od databáze.");
            }
            // získání connect stringu <
            SqlConnectionStringBuilder csb = new SqlConnectionStringBuilder();
            csb.DataSource = @"(LocalDB)\MSSQLLocalDB";
            csb.AttachDBFilename = @"C:\Uceni_SQL_MS - SQL\Database\SlovnicekDB.mdf";
            csb.IntegratedSecurity = true;
            string pripojovaciRetezec1 = csb.ConnectionString;
            Console.WriteLine("Připojovací řetezec sestavený \n {0}<<", pripojovaciRetezec1);
            using (SqlConnection pripojeni = new SqlConnection(pripojovaciRetezec1))
            {
                Console.WriteLine("Zkusím se připojit s tímto textem:\n={0}<<",pripojovaciRetezec1);
                pripojeni.Open();
                Console.WriteLine("Aplikace se úspěšně připojila k databázi.");
                pripojeni.Close();
                Console.WriteLine("Aplikace se úspěšně odpojila od databáze.");
            }
            Console.ReadKey();

        }
    }
}

Výsledná obrazovka
Připojovací řetezec z vlastností
Data Source= (LocalDB)\MSSQLLo­calDB;AttachDbFi­lename=C:\Uce­ni_SQL_MS-SQL\Database\Slov­nicekDB.mdf; Integrated Security = True; Connect Timeout = 30<<
Zkusím se připojit s tímto textem:
=Data Source= (LocalDB)\MSSQLLo­calDB;AttachDbFi­lename=C:\Uce­ni_SQL_MS-SQL\Database\Slov­nicekDB.mdf; Integrated Security = True; Connect Timeout = 30<<
Aplikace se úspěšně připojila k databázi.
Aplikace se úspěšně odpojila od databáze.
Připojovací řetezec sestavený
Data Source=(Local­DB)\MSSQLLocal­DB;AttachDbFi­lename="C:\Uce­ni_SQL_MS - SQL\Database\Slov­nicekDB.mdf";In­tegrated Security=True<<
Zkusím se připojit s tímto textem:
=Data Source=(Local­DB)\MSSQLLocal­DB;AttachDbFi­lename="C:\Uce­ni_SQL_MS - SQL\Database\Slov­nicekDB.mdf";In­tegrated Security=True<<

Hláška
An unhandled exception of type 'System.Data.SqlCli­ent.SqlExcepti­on' occurred in System.Data.dll

Additional information: An attempt to attach an auto-named database for file C:\Uceni_SQL_MS - SQL\Database\Slov­nicekDB.mdf failed. A database with the same name exists, or specified file cannot be opened, or it is located on UNC share.

 
Odpovědět
21.5.2016 11:54
Avatar
JOF
Tvůrce
Avatar
Odpovídá na Petr Vocel
JOF:22.5.2016 7:50

Ahoj,

v druhém případě máš v cestě k souboru nějaké mezery navíc - "...Uceni_SQL_MS - SQL...".
Nebude to tím?

 
Odpovědět
22.5.2016 7:50
Avatar
Petr Vocel
Tvůrce
Avatar
Odpovídá na JOF
Petr Vocel:22.5.2016 8:42

Ahoj,
máte pravdu. Nevím jak se mi tam dostaly, text jsem určitě odněkud kopíroval, ale po odstranění ve volacích parametrech pro bilder, je výsledek již bez úvozovek a vše prochází, tak jak má. Dík.
Petr

:-)
 
Odpovědět
22.5.2016 8:42
Avatar
Poggy
Člen
Avatar
Poggy:16.4.2017 14:30

Ahoj,

potřebuji poradi jak připojit SQL databázi v Server Expres ve VS 2015. Postupuji dle zdejšího návodu. Data Connection => Add Connection... Pak vyběhne tabulka kam bych měl zadat adresu databáze. Zkoušel jsem localhost\NOTEBOOK-DEL\SQLEXPRES, pak bez localhost, s localhost na konci a nic. Jak se k té dabazázi vytvořené v management studiu dostanu? Díky

 
Odpovědět
16.4.2017 14:30
Avatar
jozef_i
Člen
Avatar
jozef_i:16.4.2017 14:55

Tam treba zadať meno .mdf súboru databázy SlovnicekBD.mdf . Alebo použiť SQL server pripojenie na \Notebook-Del\SQLEXPRESS .

 
Odpovědět
16.4.2017 14:55
Avatar
Poggy
Člen
Avatar
Odpovídá na jozef_i
Poggy:16.4.2017 15:14

To jsem zkoušel také, zadal jsem: localhost\NOTEBOOK-DEL\SQLEXPRES­S\SlovnicekDB­.mdf a také nefunguje. Viz. screen. Funguje to jen když vytvořím SQL databázi zcela mimo mannagent studio v server explorer.

 
Odpovědět
16.4.2017 15:14
Avatar
nicknack
Člen
Avatar
nicknack:4.8.2017 10:30

2Poggy:
ahoj,
to první jsi měl dobře, jen jsi zapoměl na konci 2 SS -> aspon podle toho obrazku co jsi sem dal

 
Odpovědět
4.8.2017 10:30
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 10 zpráv z 53.