Filtr neprázdných položek a naopak   otázka

VB.NET, ADO.NET, WinForms, Databáze

Ve VB 2010 filtruji data v datatbázi např. takto:

BindingSource.Filter = "Sloupec1 like '%" & TextBox1.Text & "%' or Sloupec2 like '%" & TextBox1.Text & "%' or Sloupec3 like '%" & TextBox1.Text & "%'"

Takto vyfiltruji jakoukoliv hodnotu ve zvolených sloupcích. Potřeboval bych ale poradit, jak vyfiltrovat jen záznamy, které jsou v daných sloupcích prázdné a nebo naopak nejsou prázdné. Můžete mi prosím někdo poradit?

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

select * from table where sloupec is (not) null

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

Děkuji, akorát nevím kam a jak to nacpat. :)

Do BindingSource.Filter to nejde. :(

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

Tohle byl celý SQL dotaz.

Zkuste v BindingSource dát jen to za WHERE, tedy

sloupec IS NULL

nebo

sloupec IS NOT NULL
nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

Super, to je přesně to, co jsem potřeboval:

BindingSource.Filter = "Lokalizace Is null"

Díky moc.

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

Ještě bych se pořeboval zeptat na jednu věc a to jak použít více filtrů. Například vyhledávám určitý text v několika sloupcích a zároveň chci v některém sloupci vyfiltrovat jen řádky, která obsahují data. Pokud použiji např.:

SDPUpravyBindingSource.Filter = "Akce like '%" & TextBox1.Text & "%' or Poznámka like '%" & TextBox1.Text & "%' or Etapa like '%" & TextBox1.Text & "%' And Etapa is not null"

tak to nefunguje. Jak správně skombinuji více filtrů?

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

Zkuste dát ty výrazy do závorek, možná to pomůže.

Píše to nějakou chybu? Co znamená nefunguje?

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

Chybu to nehlásí, ale mám tam i položky ve sloupci etapa, které jsou prázdné a být by tam neměly. Jak se to používá s těma závorkama?

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

Už jsem na to přišel, nechce to IS NUL, ale = .

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

Oprava, protože se to nezobrazilo správně. Chce to:

= ''

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