Dutch: If it bleeds, we can kill it.
is de kolom wel een Blob? Een ResultSet telt vanaf 1, en niet vanaf 0 zoals je in java zou verwachten.
Je zou dan geen unsupportedOperation mogen krijgen. Ik denk eerder dat niet alles van de jdbc driver van mysql is geimplementeerd. Ik krijg trouwens bij access een 'this function is unsupported' foutmelding. Check anders de jdbc driver ff van mysql, die moet wel meer helderheid verschaffen.
Ook niet als je een getBlob doet op een niet Blob kolom? Ik kan me voorstellen dat je dan zo'n soort foutmelding krijgt.
Ik weet zeker dat het kan, want ik het laatst zelf ook nog gebruikt. Als je tot morgen hebt zoekt ik het eff op op kantoor. MayB is idd je driver oud, en heeft de Blob ondersteuning nog niet. MySQL is dan wel snel en goedkoop, maar veel (rand)functionaliteit is nog maar deels af.
Ik weet zeker dat het kan, want ik het laatst zelf ook nog gebruikt. Als je tot morgen hebt zoekt ik het eff op op kantoor. MayB is idd je driver oud, en heeft de Blob ondersteuning nog niet. MySQL is dan wel snel en goedkoop, maar veel (rand)functionaliteit is nog maar deels af.
Kolom is wel goed, volgende werkt nl. ook niet:
'k ga nu ff kijken naar de driver...
*Update: Installeren van MyODBC 3.51 ipv 2.50 heeft geen effect
code:
1
| Blob aBlob = rs.getBlob("Picture"); |
'k ga nu ff kijken naar de driver...
*Update: Installeren van MyODBC 3.51 ipv 2.50 heeft geen effect
Dutch: If it bleeds, we can kill it.
is de getBinanaryStream methode geen optie?
Ben ik nu ook aan het onderzoeken, krijg een melding waarvan ik niet weet wat het betekent:zneek schreef op 09 augustus 2002 @ 11:20:
is de getBinanaryStream methode geen optie?
code:
1
| Maximum memory usage: 153228 bytes (150k) |
Heb je btw op kantoor nog wat kunnen vinden???
Op de getBlob.Waar geeft ie de foutmelding op trouwens? op de getBlob? Of de getBytes?
Dutch: If it bleeds, we can kill it.
http://www.geocrawler.com/archives/3/193/2000/3/0/3496510/
Kijk hier eens, hier toveren ze iets in elkaar met een bytestream. Ik heb hem trouwens nog niet kunnen testen. Maar getBlob( ) zou ook gewoon moeten werken.
Misschien de beste tip: Gebruik geen blob's om pics in op te slaan. Het heeft echt een belabberde performance
Kijk hier eens, hier toveren ze iets in elkaar met een bytestream. Ik heb hem trouwens nog niet kunnen testen. Maar getBlob( ) zou ook gewoon moeten werken.
Misschien de beste tip: Gebruik geen blob's om pics in op te slaan. Het heeft echt een belabberde performance
Hmmm... en hoe zou je ze dan wel op willen slaan?
Dutch: If it bleeds, we can kill it.
Sla een URL op naar het plaatje. Ik zou zeggen, maak eens een benchmark tussen die twee en bepaal zelf wat je wilt: Wil je 100% zeker zijn dat het plaatje aanwezig is tegen een lage performance of wil je hoge zekerheid met een goede performance. Een database koppeling levert nou eenmaal (redelijke) overhead op.hstoker schreef op 09 augustus 2002 @ 11:39:
Hmmm... en hoe zou je ze dan wel op willen slaan?
Tsja... dan ga ik toch voor het plaatje zelf in Dbase opslaan... 'k heb eigenlijk geen keus, ik moet werken met bestaande databases en die converteer je niet zomaar allemaal.
En ik heb btw ook liever 1 Dbase op m'n HD dan 20.000 losse bestanden, scheelt nogal wat ruimte.
Duss.....
En ik heb btw ook liever 1 Dbase op m'n HD dan 20.000 losse bestanden, scheelt nogal wat ruimte.
Duss.....
Dutch: If it bleeds, we can kill it.
Hoezo scheelt dat ruimte dan? Die databases worden ook gewoon binair opgeslagen en nemen even veel ruimte in (misschien zelfs meer, maar dat weet ik niet precies) dan een gewoon los filetje.
Plus dat een filesystem gemaakt is om snel en betrouwbaar files te serveren. Een database is gemaakt om snel en betrouwbaar informatie te leveren.
Plus dat een filesystem gemaakt is om snel en betrouwbaar files te serveren. Een database is gemaakt om snel en betrouwbaar informatie te leveren.
edit:
Maar heb je al naar dat voorbeeld gekeken?
Maar heb je al naar dat voorbeeld gekeken?
Ik heb idd wat gevonden, maar dat is het uitlezen van een Java Object uit een Blob kolom. Dat gaat als volgt:hstoker schreef op 09 augustus 2002 @ 11:33:
[...]
Ben ik nu ook aan het onderzoeken, krijg een melding waarvan ik niet weet wat het betekent:
code:
1 Maximum memory usage: 153228 bytes (150k)
Heb je btw op kantoor nog wat kunnen vinden???
[...]
Op de getBlob.
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
| public Object readObject(String query) throws IOException {
Object w = new Object();
this.connect();
try{
ResultSet rs = con.createStatement().executeQuery(query);
ObjectInput in = new ObjectInputStream(rs.getBinaryStream(1));
w = (Object)in.readObject();
}catch(SQLException esql){
esql.printStackTrace();
}catch(Exception e){
e.printStackTrace();
} finally {
this.disconnect();
}
return w;
}// end readObject |
Hier lezen ze de blob dus ook uit met een BinaryStream. Dus als ik jou was zou ik gewoon getBinaryStream(1) gebruiken om je blob uit te lezen
“Build a man a fire, and he'll be warm for a day. Set a man on fire, and he'll be warm for the rest of his life.”
Lose bestanden nemen meer ruimte in op de HD... heeft iets met clustergrootte te maken, dat alles niet effectief gebruikt wordt... nieuw bestand gaat verder in volgende cluster... of zoiets..Glimi schreef op 09 augustus 2002 @ 12:04:
Hoezo scheelt dat ruimte dan? Die databases worden ook gewoon binair opgeslagen en nemen even veel ruimte in (misschien zelfs meer, maar dat weet ik niet precies) dan een gewoon los filetje.
Plus dat een filesystem gemaakt is om snel en betrouwbaar files te serveren. Een database is gemaakt om snel en betrouwbaar informatie te leveren.
en een database kan meestal ook nog compressen.
En dat voorbeeld, daar hebben ze de grootte van de blob in een aparte kolom opgeslagen, waardoor je weet hoeveel data er is... mijn probleem daarmee is dat ik dat niet weet. Ik lees het dus zo uit:
code:
1
| BufferedInputStream aBlob = new BufferedInputStream( rs.getBinaryStream("Picture")); |
Hoe kan ik hier dan de grootte van bepalen??
Dutch: If it bleeds, we can kill it.
Nee.... Moet dat danzneek schreef op 09 augustus 2002 @ 13:09:
http://java.sun.com/j2se/1.4/docs/api/index.html
Heb je daar al gekeken?
(Heeft ik nl. ook wel op de HD staan)
Dutch: If it bleeds, we can kill it.
Pagina: 1