Valutazione 4.87/ 5 (100.00%) 5838 voti

Condividi:        

? SQL Server e campi BLOB

Discussioni e opinioni costruttive sul mondo dell'informatica.
Per la soluzione di problemi specifici fare riferimento alle sezioni di assistenza!

Moderatori: aurelio37, axelrox

? SQL Server e campi BLOB

Postdi piercing » 08/12/02 16:38

Raga, io ci provo, fosse mai che qualcuno mi aiuta ;)

Devo fare una INSERT in un campo di un DB SqlServer2000 (il campo è di tipo IMAGE, accetta quindi una "stringa di byte"), ma come faccio a comporre una istruzione SQL che possa effettivamente inserire?

Immagino che non dovrò utilizzare l'SQL, ma non ho idea di come altro sia possibile fare se non con SQL (ADO ha qualche istruzione/oggetto particolare? ADO.Stream mi può aiutare?).

Ho visto che in qualche modo si può fare partendo da un file scritto su filesystem, ma se io sto file ce l'ho in memoria perchè lo devo prima scrivere su disco e poi farglielo rileggere? Già è una procedurina bella pesante così com'è...

La stringa di byte si trova in una variabile (che genero facendo l'upload sul server di un file qualsiasi...), invece di scrivere questa variabile sul filesystem per ricrearmi il file (cosa che per altro funge benissimo), ho necessità che questa variabile venga scritta sul database.

Il problema è in realtà abbastanza più complesso, ma credo che se riesco a fare quanto ho chiesto, potrei trovare una soluzione a quello più generale. Se non mi sono spiegato bene, posso impegnarmi di più.

Esempi di codice sono fortemente graditi... :P

Ho provato a postare il problema su HTML.it, ma come sempre quando non si parla di connessioni al DB e boiate varie il post rimane assolutamente trasparente...
Avatar utente
piercing
Moderatore
 
Post: 7569
Iscritto il: 10/04/02 10:34
Località: Roma

Sponsor
 

Postdi piercing » 09/12/02 14:39

Ho l'indubbia capacità di creare post trasparenti :neutral:
Avatar utente
piercing
Moderatore
 
Post: 7569
Iscritto il: 10/04/02 10:34
Località: Roma

Postdi formiche » 09/12/02 14:48

stasera vado a dare un occhiata al manualone di SQL Server 2000 e poi ti dico, a memoria non mi viene niente (anche perche' e' + di un anno che non faccio niente di SQL)
######## Snowboarding is not a crime ########
formiche
Utente Junior
 
Post: 86
Iscritto il: 30/08/02 11:54
Località: dintorni di Eporedia

Postdi kadosh » 09/12/02 16:00

Ma si le cose nu 'lle sai...Salle!! :D :D

Simpatia a parte, credo sia una cosa decisamente onerosa fare un'indicizzazione dei campi BLOB; Perchè scusa non ti fai un campo testo, ad esempio var_char e lo associ alla Path dell'immagine in questione?
Se il DB, anche se SQL 2000 che ha un bel motore, avesse 100 campi Blob ognuno con un'immagine da 100 KB diverrebbe pesantuccio.
Cmq è solo il mio parere, non ho idee per quello che vuoi fare tu. ;)
Ch®is ˜˜ www.glgroup.it˜˜ {~Up You® Life~}™ Semper Fidelis
Avatar utente
kadosh
Moderatore
 
Post: 3791
Iscritto il: 24/09/01 01:00
Località: Roma

Postdi piercing » 09/12/02 17:03

non sono immagini... sono file... ma il tipo di dati image è in pratica una text di byte...

lo so che viene pesante, ma non ho molte alternative..., devo fare delle ricerche specifiche all'interno di questi file, male che va si investirà in hardware...
Avatar utente
piercing
Moderatore
 
Post: 7569
Iscritto il: 10/04/02 10:34
Località: Roma

Postdi kadosh » 09/12/02 17:09

Immagino tu abbia già provato a fare un'associazione variabile/Path, tanto per vedere come andava il tutto.
Prima di investire in HW sarebbe meglio essere sicuri della bontà dell'idea; e infine, tutto dipende dalla pesantezza dei file...non si scappa. ;)
Ch®is ˜˜ www.glgroup.it˜˜ {~Up You® Life~}™ Semper Fidelis
Avatar utente
kadosh
Moderatore
 
Post: 3791
Iscritto il: 24/09/01 01:00
Località: Roma

Postdi piercing » 09/12/02 18:46

Una media di 40KB per file per circa 10.000 files.

L'idea è mia quindi è senz'altro ottima... 8)

Per fare una ricerca complessa sui file hai altre idee? Se mi metto a cercare su filesystem mi faccio ancora più vecchio...

Poi elaborerò su questi files un sistema di spidering delle keywords su cui indicizzare i files, ma se non comincio a metterli dentro sti file la vedo dura... anche solo per fare le prove prestazionali dell'architettura!
Avatar utente
piercing
Moderatore
 
Post: 7569
Iscritto il: 10/04/02 10:34
Località: Roma

Postdi kadosh » 09/12/02 19:14

Secondo me indicizzare 10.000 files non è poi così ingrato come lavoro; a suo tempo provai a lavorare un po' sul DB illustrativo presente in Access, quello della NorthWind, che si aggira circa su queste cifre. E pur essendo Access, la ricerca che effettuavo sui vari attributi dei records non era così lenta come pensassi...anche se ne risentivano le prestazioni in generale della macchina.

E se provi a lavorare sulle proprietà intrinseche del File System? Magari se fossero tutti files presenti su NTFS potresti sfruttare le proprietà avanzate dello stesso, sono tante e si prestano ottimamente all'indicizzazione ed alla ricerca, le hanno create apposta.

Di più, ora...nin zo! ( o come cavolo si scrive in ciociaro! ) :P
Ch®is ˜˜ www.glgroup.it˜˜ {~Up You® Life~}™ Semper Fidelis
Avatar utente
kadosh
Moderatore
 
Post: 3791
Iscritto il: 24/09/01 01:00
Località: Roma

Postdi piercing » 09/12/02 20:17

Un 500MB di dati su SQL sono ben supportati, comunque credo che per quando avrò inserito tutti quei dati, avrò elaborato anche un sistema di keywords per l'indicizzazione...

Spiega un pò sta roba dell'NTFS? Se devo cercare "Kadosh" in una serie di files posizionati in un folder specifico che devo fare? so che esiste un serivizio di indicizzazione dei files... ma non ho idea di come ci si interagisca... e se mi possa essere utile....
Avatar utente
piercing
Moderatore
 
Post: 7569
Iscritto il: 10/04/02 10:34
Località: Roma

Postdi kadosh » 09/12/02 20:57

Di come poter usare il sistema di indicizzazione del 2k/XP con SQL SRV 2000 non lo so neanch'io, è sempre stata un'eventualità interessante ma troppo vicina all'etica del programmatore puro che del sistemista...ma se qualcuno me ne mettesse al corrente non sarebbe male. 8)

Cmq lì in bacheca c'è il testo ufficiale di SQL 2000, magari ci trovi qualcosa di buono. Io ci trovai a suo tempo l'ottima metodologia per migrare da SQL 6.5/7 a SQL 2000 senza perdere 'na mazza!!

Cmq l'idea di leggere un file direttamente in memoria, prima che venga scritto nell'HD è ottima, solo che non vedo soluzioni facili e immediate a portata di mano...magari sotto Natale...qualche miracolo... :lol: :lol:

Proverò a chiedere a qualche DBA da me...non sia mai eheheh :P
Ch®is ˜˜ www.glgroup.it˜˜ {~Up You® Life~}™ Semper Fidelis
Avatar utente
kadosh
Moderatore
 
Post: 3791
Iscritto il: 24/09/01 01:00
Località: Roma


Torna a Discussioni


Topic correlati a "? SQL Server e campi BLOB":


Chi c’è in linea

Visitano il forum: Nessuno e 1 ospite