SQL procedura   otázka

SQL, Databáze

Dobrý deň všetkým.

Hľadám spôsob zápisu dát z db tabuľky do súboru na disk cez SQL procedúru. Existuje na to nejaké jednoduché riešenie?

Vďaka.

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

Jednoduché ne. Jen složité, nehezké a potencionálně nebezpečné. Na tohle si napište aplikaci v C#.

Viz: http://www.vbnet.cz/clanek--52-komunikac...

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

Existuje a není to nic nehezkého a složitého.Záleží jaký máte SQL server.. v případě MSSQL,tak ten má v sobě utilitu právě na generování výstupu z T-SQL skriptu do souboru(txt,xml,csv,..)Používám jej na denní bázi..a problémy s tím nejsou

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

Také jsem si říkal že by v tom neměl být problém, ale tazatel chce zřejmě provést zápis dat do souboru přímo z uložené procedury bez nutnosti použití dalších věcí.

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

Tazatel chce podle toho, co napsal, provést export dat pomocí uložené procedury. Utilit na a programů na zpracování výstupu je samozřejmně nepřeberné množštví.

Konkrétně C# jsem doporučil pro případ, kdy chcete vlastní formát exportu.

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

Má vůbec přímo jazyk T-SQL prostředky pro export dat do souboru? Nikdy jsem to nepotřeboval, takže ani nezjišťoval. Pro importování dat z externího souboru je BULK INSERT, pro exportování vím pouze o nástroji bcp (součást SQL Serveru).

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

T-SQL právě nemá. Na tohle slouží různé data mining projekty. Ty však nejsou součástí express edice.

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

Tazatel si může vytvořit assembly (ddl) v C# nebo Visual Basicu, nahrát ji na server a přilinkovat k databázi. Jako jeden vstupní parametr může mít třeba tabulku (recordset) a jako druhý cestu, kam se to má uložit. Pak ji stačí obalit SQL Server funkcí a může ji volat odkud chce (třeba ze stored procdury) jako jakoukoli jinou SQL Server funkci. Čili export není spouštěn žádnou externí aplikací, ale přímo SQL serverem. Pokus se jedná o nějaký pravidelný export, může to pouštět třeba i Jobem.

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