Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


GetChunk / AppendChunk

Postades av 2001-04-23 14:57:00 - Peter Holm, i forum databaser, Tråden har 10 Kommentarer och lästs av 780 personer

Hej...........

Jag försöker lagra Word-dokument i en MSSQL databas. Använder
AppendChunk för att lagra dom och GetChunk för att hämta dom.

Jag får det dock inte att fungera riktigt. Den lagrar endast 8 bytes.

Jag använder lite exempelkod från boken: Hitchhiker's guide to Visual
Basic and SQL Server.

Här är min kodsnutt:

Sample Code ====================================

Dim CN as new ADODB.Connection
Dim RS As New ADODB.Recordset
Dim a() As Byte
Dim s As Long
CN.Open "test", "sa"
On Error Resume Next
CN.Execute "DROP TABLE myBLOBS"
CN.Execute "CREATE TABLE myBLOBS (ID int unique, info TEXT)"
On Error GoTo 0
ReDim a(FileLen("c:\test\SWEDEN 2B.DOC"))
Open "c:\test\SWEDEN 2B.DOC" For Binary Access Read As #1
Get #1, , a()
Close #1
RS.CursorType = adOpenKeyset
RS.LockType = adLockOptimistic
RS.Open "SELECT * FROM myBLOBS", CN
If RS.EOF Then RS.AddNew
RS("INFO").AppendChunk a()
RS.Update
RS.Close
CN.Close

==============================================

Varför lagrar den bara åtta bytes ??, Wordfilen är över 22000 bytes stor.

Hur skall man göra detta enklast ?


Svara

Sv: GetChunk / AppendChunk

Postades av 2001-04-23 16:28:00 - Christoffer Hedgate

Du måste väl använda AppendChunk till dess att du kommit till slutet av filen? AppendChunk tar ju 8k i taget och lägger till.

Om du använder ADO 2.5+ så föreslår jag dessutom att du tittar på Stream objektet, det är (åtminstone i mitt tycke) smidigare att lagra BLOBar med det. Kolla nedanstående KB för mer info:

http://support.microsoft.com/support/kb/articles/Q258/0/38.asp


Svara

Sv: GetChunk / AppendChunk

Postades av 2001-04-23 16:34:00 - Peter Holm

OK men den lagrade ju 8 bytes inte ens 8 kbytes vilket är det man skulle förväntat sig isåfall eller snarare 8000 bytes som ju så kallade paged data types kan lagra.

OK skall kolla länken.


Svara

Sv: GetChunk / AppendChunk

Postades av 2001-04-24 10:12:00 - Leif Parmlind

Du kan kolla i exemplet som finns i filarean.

\Leif p


Svara

Sv: GetChunk / AppendChunk

Postades av 2001-04-24 10:14:00 - Peter Holm

Som heter vaddå ?!, Men jag tror jag skall skippa BLOB:s jag har fått
indikationer som antyder att den metoden är förkastlig!

/peterh


Svara

Sv: GetChunk / AppendChunk

Postades av 2001-04-24 10:14:00 - Peter Holm

Som heter vaddå ?!, Men jag tror jag skall skippa BLOB:s jag har fått
indikationer som antyder att den metoden är förkastlig!

/peterh


Svara

Sv: GetChunk / AppendChunk

Postades av 2001-04-24 11:59:00 - Christoffer Hedgate

Förkastlig? Vilken metod menar du då? Det är inget fel i sig att använda BLOBs, däremot kanske de används till felaktiga saker ibland.


Svara

Sv: GetChunk / AppendChunk

Postades av 2001-04-24 13:38:00 - Peter Holm

Jag citerar författaren av ovan nämnda bok -Hitchhiker's guide to visual basic and sql server.

På Sid 513 skriver författaren.

- Before you commit to putting TEXT and IMAGE (BLOB) columns in
youre database, you need to take a big step back and think again.
I haven't heard of many implementations (OK i've heard of one) in
wich putting BLOBs in the database ended up making sense. I came to
the conclosion over the years by listening to the countless cries for
help from developers and their managers who had waded off into the
BLOB swamp and needed rescuing. In virtually all cases, we are able to
find faster, easier, and more supportable ways to access BLOB data and
none of them involved using the Chunk methods or storing the BLOB
data in the database. Sure you can put BLOBSs in youre database, and
u can also deliver pizza with a pregnant camel, but it's not something i would wish on most people.

Kanske färgat av författaren, men det ger kanske en hint om att det
inte är det bästa sättet att lösa det på.

/peterh


Svara

Sv: GetChunk / AppendChunk

Postades av 2001-04-24 14:10:00 - Christoffer Hedgate

OK. Lite dumt uttalande av författaren tycker jag, precis som jag skrev ovan så tror jag han menar något annat än vad han skriver. Med "putting BLOBs in the database" pratar han om att lagra dokument & bilder i BLOB-fält i databasen, och anser då att man bör lösa det på annat sätt, t ex genom att lagra filen i filsystemet och sökvägen i databasen. Det kan jag väl hålla med om att det oftast är mer hanterligt och smartare, men det kan finnas fall där det inte är möjligt, t ex med vissa backupmässiga aspekter.

Det är som sagt däremot inget problem med BLOB-fält i allmänhet, vilket han får det att låta som (genom att använda ordet BLOBs när han menar filer), själv har jag t ex använt dem till att lagra objektstrukturer som användes för processing i en extended procedure.


Svara

Sv: GetChunk / AppendChunk

Postades av 2001-04-24 14:15:00 - Peter Holm

OK, men det är inga problem då att för mig exvis lagra worddokument i
BLOB-fält (TEXT).

Problemet är följande:

På Dator A skall inte SQL-servern vara åtkomlig via filsystemet.
På servern ligger dock de wordfiler jag vill komma åt. Men det går
ju inte via normala sökvägar. Därför tänkte jag att om jag BLOBBAR in
dokumenten i databsen så löser jag problemet på det sättet.

När en fil skall vara åtkomlig så hämtas den och sparas lokalt på Dator A

Är detta the way eller ??? är jag ute på fel stickspår ?


Svara

Sv: GetChunk / AppendChunk

Postades av 2001-04-24 15:19:00 - Christoffer Hedgate

Visst, det låter som en vettig användning. Men som sagt, filer i databasen innebär en del jobb, med exempelvis chunking eller streams.


Svara

Nyligen

  • 19:55 kick-off med fokus på hälsa?
  • 19:53 kick-off med fokus på hälsa?
  • 16:24 Föreslå en skönhetsklinik online
  • 16:23 Föreslå en skönhetsklinik online
  • 18:42 Hvor finder man håndlavede lamper
  • 18:41 Hvor finder man håndlavede lamper
  • 16:36 Allt du behöver veta om keramiskt
  • 16:14 Vem anlitar man egentligen när tak

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 570 705
27 958
271 751
1 106
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies