Avatar billede Slettet bruger
21. juli 2003 - 18:19 Der er 16 kommentarer og
2 løsninger

OpenSchema, hente data

Hej eksperter,

Jeg har nu kigget en del på denne artikkel:
http://www.w3schools.com/ado/met_conn_openschema.asp

men synnes nu ikke at kunne forstå videre meget af det. nogen der kender til lignende artikler der går dybere om emnet, samt hvilke data der er mulige at hente ud fra disse.

håber i kan hjælpe.

mvh.
Questis
Avatar billede hossein Nybegynder
21. juli 2003 - 18:52 #1
Avatar billede nmh Nybegynder
21. juli 2003 - 18:55 #2
Det man bruger det til er mest at kunne finde ud af opbygningen af f.eks. en Access-database. Man kan få at vide hvilke tabeller databsen har og hvilke søjle tabellerne indholder.
Avatar billede Slettet bruger
21. juli 2003 - 18:58 #3
hossein>> jeg har luret hvad man kan få ud af den artikkel, men hvad jeg ikke kan lure er hvordan man henter mere end dette... dette kunne være tabbelens type, samt hvilke værdier disse tal representerer.... samt tabellens størrelse, altså i kb... m.m.

dette siges der ikke noget om i disse artikler
Avatar billede Slettet bruger
21. juli 2003 - 18:59 #4
nmh>> ja så langt er jeg dog nået :), jeg har fået hentet tabellernes navn samt undersøgt dem for om de er med eller uden indhold samt hvormange rækker de indeholder... men mangler en del mere specifikke data fra den endnu, som burde være mulige at finde
Avatar billede nmh Nybegynder
21. juli 2003 - 19:04 #5
Avatar billede nmh Nybegynder
21. juli 2003 - 19:05 #6
En anden teknik er ADOX, som dog vistnok er på retur. Se her

http://www.able-consulting.com/ADOX_Faq.htm
Avatar billede Slettet bruger
21. juli 2003 - 19:05 #7
nmh>> er den ikke lisom rimelig identisk med den jeg linker til eller er det bare mig ?
Avatar billede nmh Nybegynder
21. juli 2003 - 19:09 #8
Det er den måske. Jeg har ikke nærlæst dem begge, men normalt vil man lære noget nyt, når man ser to fremstillinger.
Avatar billede Slettet bruger
21. juli 2003 - 19:09 #9
nmh>>  hvordan jeg laver tabeller m.m. er der styr på... det er at hente oplysningerne om tabeller og kolonner samt selve databasen der er problemt....
Avatar billede nmh Nybegynder
21. juli 2003 - 19:15 #10
Jeg puslede lidt med de her ting for et par år siden. Jeg vil se om jeg kan finde noget mere frem. Der dog ikke nogen helt perfekt løsning, så vidt jeg ved. Specielt kan jeg huske, det var det vanskeligt at finde ud af forholdene med fremmede nøgler.
Avatar billede Slettet bruger
21. juli 2003 - 19:17 #11
okay.... ja synnes bare det er mærkeligt at der ikke findes en dirkte oversigt over hvad mna kan hente og hvad deres type direkte er ...  men det er nok for let så :(
Avatar billede hossein Nybegynder
21. juli 2003 - 19:37 #12
Her er en code i Visual basic så kan du se hvad betyder tallene når det drejer sig om Datatype:

Function ConvType(ByVal TypeVal As Long) As String
  Select Case TypeVal
      Case adBigInt                    ' 20
        ConvType = "adBigInt"
      Case adBinary                    ' 128
        ConvType = "adBinary"
      Case adBoolean                  ' 11
        ConvType = "adBoolean"
      Case adBSTR                      ' 8 i.e. null terminated string
        ConvType = "adBSTR"
      Case adChar                      ' 129
        ConvType = "adChar"
      Case adCurrency                  ' 6
        ConvType = "adCurrency"
      Case adDate                      ' 7
        ConvType = "adDate"
      Case adDBDate                    ' 133
        ConvType = "adDBDate"
      Case adDBTime                    ' 134
        ConvType = "adDBTime"
      Case adDBTimeStamp              ' 135
        ConvType = "adDBTimeStamp"
      Case adDecimal                  ' 14
        ConvType = "adDecimal"
      Case adDouble                    ' 5
        ConvType = "adDouble"
      Case adEmpty                    ' 0
        ConvType = "adEmpty"
      Case adError                    ' 10
        ConvType = "adError"
      Case adGUID                      ' 72
        ConvType = "adGUID"
      Case adIDispatch                ' 9
        ConvType = "adIDispatch"
      Case adInteger                  ' 3
        ConvType = "adInteger"
      Case adIUnknown                  ' 13
        ConvType = "adIUnknown"
      Case adLongVarBinary            ' 205
        ConvType = "adLongVarBinary"
      Case adLongVarChar              ' 201
        ConvType = "adLongVarChar"
      Case adLongVarWChar              ' 203
        ConvType = "adLongVarWChar"
      Case adNumeric                  ' 131
        ConvType = "adNumeric"
      Case adSingle                    ' 4
        ConvType = "adSingle"
      Case adSmallInt                  ' 2
        ConvType = "adSmallInt"
      Case adTinyInt                  ' 16
        ConvType = "adTinyInt"
      Case adUnsignedBigInt            ' 21
        ConvType = "adUnsignedBigInt"
      Case adUnsignedInt              ' 19
        ConvType = "adUnsignedInt"
      Case adUnsignedSmallInt          ' 18
        ConvType = "adUnsignedSmallInt"
      Case adUnsignedTinyInt          ' 17
        ConvType = "adUnsignedTinyInt"
      Case adUserDefined              ' 132
        ConvType = "adUserDefined"
      Case adVarBinary                ' 204
        ConvType = "adVarBinary"
      Case adVarChar                  ' 200
        ConvType = "adVarChar"
      Case adVariant                  ' 12
        ConvType = "adVariant"
      Case adVarWChar                  ' 202
        ConvType = "adVarWChar"
      Case adWChar                    ' 130
        ConvType = "adWChar"
  End Select
End Function

Dette metode har jeg aldrig brugt, men ud over de egenskaber som du har læst på w3school findes ikke flere, så som hvor stor er DBen. I selve msAccess kan man bruge Analyze funktionen for at få oplysningerne om hver tabel, så det kan måske en komponent kan klare det som du leder efter. Hvis jeg støder på noget så vil jeg gi' dig.
Avatar billede Slettet bruger
21. juli 2003 - 19:39 #13
lyder godt hossein.... så leger jeg lidt videre med dette indtil videre.... så må vi se om der byders ind...
Avatar billede hossein Nybegynder
21. juli 2003 - 19:42 #14
jeg har de andre tal oxo vil du ha dem? hvor er de kedeligt :-) her er lidt mere:

'Returns a sum of one or more of the RecordStatusEnum values.
'Use the Status property to see what changes are pending for records
'modified during batch updating. You can also use the Status property
'to view the status of records that fail during bulk operations, such
'as when you call the Resync, UpdateBatch, or CancelBatch methods on
'a Recordset object, or set the Filter property on a Recordset object
'to an array of bookmarks. With this property, you can determine how
'a given record failed and resolve it accordingly.
Function ConvStatus(ByVal mStatus) As String
    ' Because one or more values can be present, accumulate the string
    Dim tmp As String
    tmp = ""
    Select Case mStatus
      Case (mStatus And adRecOK)
          ConvStatus = "adRecOK"          ' 0 Record was successfully update
      Case (mStatus And adRecNew)
          ConvStatus = "adRecNew"          ' 1 Is new
      Case (mStatus And adRecModified)
          ConvStatus = "adRecModified"    ' 2 Was modified.
      Case (mStatus And adRecDeleted)
          ConvStatus = "adRecDeleted"      ' 4 Was deleted.
      Case (mStatus And adRecUnmodified)
          ConvStatus = "adRecUnmodified"  ' 8 Was not modified.
      Case (mStatus And adRecInvalid)
          ConvStatus = "adRecInvalid"      ' 16 Was not saved because its bookmark is invalid.
      Case (mStatus And adRecMultipleChanges)
          ConvStatus = "adRecMultipleChanges"  ' 64 Not saved because it would have affected multiple records.
      Case (mStatus And adRecPendingChanges)
          ConvStatus = "adRecPendingChanges"  ' 128 Was not saved because it refers to a pending insert.
      Case (mStatus And adRecCanceled)
          ConvStatus = "adRecCanceled"        ' 256 Was not saved because the operation was canceled.
      Case (mStatus And adRecCantRelease)
          ConvStatus = "adRecCantRelease"      ' 1024 Was not saved because of existing record locks.
      Case (mStatus And adRecConcurrencyViolation)
          ConvStatus = "adRecConcurrencyViolation"  ' 2048 Was not saved because optimistic concurrency was in use.
      Case (mStatus And adRecIntegrityViolation)
          ConvStatus = "adRecIntegrityViolation"    ' 4096 Was not saved because the user violated integrity constraints.
      Case (mStatus And adRecMaxChangesExceeded)
          ConvStatus = "adRecMaxChangesExceeded"    ' 8192 Was not saved because there were too many pending changes.
      Case (mStatus And adRecObjectOpen)
          ConvStatus = "adRecObjectOpen"            ' 16384 Was not saved because of a conflict with an open storage object.
      Case (mStatus And adRecOutOfMemory)
          ConvStatus = "adRecOutOfMemory"            ' 32768 Was not saved because the computer has run out of memory.
      Case (mStatus And adRecPermissionDenied)
          ConvStatus = "adRecPermissionDenied"      ' 65536 Was not saved because the user has insufficient permissions.
      Case (mStatus And adRecSchemaViolation)
          ConvStatus = "adRecSchemaViolation"        ' 131072 Was not saved because it violates structure of underlying database.
      Case (mStatus And adRecDBDeleted)
          ConvStatus = "adRecDBDeleted"              ' 262144 The record has already been deleted from the data source.
      Case Else
          ConvStatus = "A combination of serveral status present"
  End Select
End Function
Avatar billede nmh Nybegynder
21. juli 2003 - 20:02 #15
Nu har jeg set i mine gamle sager. Det er ikke ligetil. Måske vender jeg tilbage med noget, men det bliver ikke idag.
Avatar billede Slettet bruger
08. august 2003 - 11:17 #16
hossein kunne jeg ikke bede dig om at svar også ?
Avatar billede hossein Nybegynder
09. august 2003 - 11:54 #17
Ok, tak!
Avatar billede hossein Nybegynder
09. august 2003 - 11:54 #18
en gang til!
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester