Sql a vyjimka – .NET – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Sql a vyjimka – .NET – Fórum – Programujte.comSql a vyjimka – .NET – Fórum – Programujte.com

 

execute
~ Anonymní uživatel
3 příspěvky
14. 7. 2010   #1
-
0
-

Ahoj sem se zkousel pripojit k databzi kde sem dal nejakou vyjimku, kde mam potom umistit finaly pro uzavreni spojeni



using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data.SqlClient;

namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{


string source = @"Data Source = .\SQLEXPRESS;AttachDbFilename = |DataDirectory|\Database1.mdf;Integrated Security = True;User Instance = True";
string select = "SELECT Prace,Jmeno FROM tblKontakty";

SqlConnection sql = new SqlConnection(source);
try
{

sql.Open();
}
catch (SqlException e)
{
Console.WriteLine(e.Message);
}
finally
{
sql.Close();
}
SqlCommand cmd = new SqlCommand(select, sql);
SqlDataReader reader = null;

try
{

reader = cmd.ExecuteReader();
}
catch (SqlException e)
{
Console.WriteLine(e.Message);
}
while (reader.Read())
{
Console.WriteLine("Prace: {0} Jmeno: {1}",reader[0],reader[1]);

}

}
}
}

Nahlásit jako SPAM
IP: 77.48.244.–
KIIV
~ Moderátor
+43
God of flame
14. 7. 2010   #2
-
0
-

supr.. jen ted nevim jestli se chlubis ci o co se snazis...

Nahlásit jako SPAM
IP: 62.168.56.–
Program vždy dělá to co naprogramujete, ne to co chcete...
execute
~ Anonymní uživatel
3 příspěvky
14. 7. 2010   #3
-
0
-

To KIIV : ne bohužel se nechlubim jen se ptam kde mam umistit ten blok finaly ktery sem už tam omylem nechal aby se v pripade vyjimky uzavrel tu databazi protoze kdyz je to na tom miste kde tedkom tak se to uzavře i kdyžse vyjimka nevyvola

Nahlásit jako SPAM
IP: 77.48.244.–
KIIV
~ Moderátor
+43
God of flame
14. 7. 2010   #4
-
0
-

technicky vzato bys mohl cely kod pro praci s databazi dat do try...
a ve finally uvolnit zabrane zdroje .. tedy pokud neselze uz "SqlConnection sql = new SqlConnection(source);", ktery mas ted mimo

Nahlásit jako SPAM
IP: 62.168.56.–
Program vždy dělá to co naprogramujete, ne to co chcete...
KIIV
~ Moderátor
+43
God of flame
14. 7. 2010   #5
-
0
-

ale abych te nenapinal:



Listing 7.8: Try-Finally Syntax

try
{
//Even if a goto statement were here
//control gets transferred to the statement identified in
//goto statement only after executing the finally block.
}

finally
{
// This block of code will always get executed
// whether an exception occurs or not

// Any cleanup code goes here,
// especially to release any system resources
// such as file handles and network connections
}

Nahlásit jako SPAM
IP: 62.168.56.–
Program vždy dělá to co naprogramujete, ne to co chcete...
liborb
~ Redaktor
+18
Guru
14. 7. 2010   #6
-
0
-

V podstatě si to měl dobře, jen to vlož do jednoho try bloku, něco jako:



try
{
sql.Open();

cmd = new SqlCommand(select, sql);

reader = cmd.ExecuteReader();

// ... atd.
}
catch (SqlException e)
{
Console.WriteLine(e.Message);
}
finally
{
sql.Close();
}


V try bloku nemusí být jen ty části, které vyhodí vyjímku.

Nahlásit jako SPAM
IP: 85.207.166.–
execute
~ Anonymní uživatel
3 příspěvky
14. 7. 2010   #7
-
0
-

To liborb : diky vsem

Nahlásit jako SPAM
IP: 77.48.244.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 33 hostů

Podobná vlákna

Scanner a vyjimka — založil George

Nezachycená výjimka — založil Dan

Vlastní výjimka — založil dawnMist

Výjimka ve WPF — založil Kolemjdoucí

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý