SQL Dotaz   zodpovězená otázka

VB.NET, SQL, Databáze

Prosím o objasnění tohoto problému. V SQL Server Management Studiu Express jsem si sestavil tento dotaz:

SELECT distinct tbl_Firmy.Nazev, tbl_Faktury.CisloFaktury
		, tbl_Faktury.Cena, tbl_Faktury.Cena, tbl_Faktury.Datum
FROM         tbl_Faktury INNER JOIN
                      tbl_Firmy ON tbl_Faktury.IdFirmy = tbl_Firmy.IdFirmy
order by tbl_Firmy.Nazev
compute sum (tbl_Faktury.Cena) by tbl_Firmy.Nazev

Po spuštění tohoto dotazu se správně provedou a zobrazí jednotlivé součty za "Nazev". Ovšem při provedení toho samého dotazu z aplikace VBS 2005 Express, se součty neobjeví a dotaz nepracuje správně. Kde je zakopaný pes ?

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Ověřte, jestli dotaz spouštíte proti stejné databázi. Hlásí to nějakou chybu, nebo to prostě nedá žádný výsledek?

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Ten dotaz je položen stejné databázi - ověřeno. Chybu to nehlásí žádnou a výsledek jsou pouze dva řádky po nichž správně má následovat suma a další skupina a suma atd. V aplikaci ale po těch dvou řádcích výpis končí a nic...?!

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Podle mého názoru budete mít tedy asi chybu v kódu. Jinak si to vysvětlit nedokážu. Neprovádíte totiž nic nestandardního.

Můžete sem kód uvést?

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Bohužel se nemohu přihlásit svým reg. jménem, tak alespoň takto jako neregistrovaný. Ten kód rád uvedu, ale problém je v tom, že to dělám dost amatérsky a tudíž ten SQL dotaz, výše uvedený, jsem udělal jako nový TableAdapter v Designeru a kód, který jsem psal je pouze tento:

Private Sub PokusToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PokusToolStripMenuItem.Click
        Me.Tbl_DataGridView.Visible = True
        Me.Tbl_BindingNavigator.Visible = True
        Me.Tbl_BindingNavigator.BindingSource = Dotaz5BindingSource
        Me.Tbl_DataGridView.DataSource = Dotaz5BindingSource
    End Sub

je to reakce na kliknutí v Menu. Jestli mám poslat ještě něco, budete to muset ještě upřesnit, aby jste na to přišel. Byl bych moc rád, kdyby jste tu trpělivost se mnou měl.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Tak nevím, jestli tenhle problém už nezapadne, ale přesto se ho ještě pokusím rozvířit. Jelikož jsem vlastními silami nikam nepostoupil, rozhodl jsem se přistoupit k problému trochu jinak. Napsal jsem si cvičně kód bez použití DataBinding komponent na připojení k SQL Databázi 2005 Express a pokouším se nejprve zobrazit jednoduchý výběr do DataGritView, ale nedaří se mi. Formulář se zobrazí, bez chybové hlášky, ale okno DataGritView je prázdné. Tady je kód:

Public Class Form1
    Dim com As SqlCommand
    Dim con As SqlConnection

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        con = New SqlConnection("Data Source=.\SQLEXPRESS;AttachDbFilename=C:\Private\Databaze\Pokus.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True")
        con.Open()
        com = New SqlCommand("SELECT * FROM [tbl_Firmy]", con)
        Me.DataGridView1.DataSource = com.ExecuteReader
    End Sub
End Class

Prosím o radu, proč se nic nezobrazuje ? A jestli se dá vysvětlit ten předchozí můj dotaz, proč se neprovádí korektně ten SQL dotaz s "Compute by" ?

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Tohle téma jsme dořešili později v jiné diskuzi:

http://vbnet.cz/forum-tema--645-sql_dota...

Problémem bylo špatné bindování do DataGridView.

nahlásit spamnahlásit spam 0 odpovědětodpovědět
                       
Nadpis:
Antispam: Komu se občas házejí perly?
Příspěvek bude publikován pod identitou   anonym.
  • Administrátoři si vyhrazují právo komentáře upravovat či mazat bez udání důvodu.
    Mazány budou zejména komentáře obsahující vulgarity nebo porušující pravidla publikování.
  • Pokud nejste zaregistrováni, Vaše IP adresa bude zveřejněna. Pokud s tímto nesouhlasíte, příspěvek neodesílejte.

přihlásit pomocí externího účtu

přihlásit pomocí jména a hesla

Uživatel:
Heslo:

zapomenuté heslo

 

založit nový uživatelský účet

zaregistrujte se

 
zavřít

Nahlásit spam

Opravdu chcete tento příspěvek nahlásit pro porušování pravidel fóra?

Nahlásit Zrušit

Chyba

zavřít

feedback