Dette dokument indeholder oplysninger om tekniske problemer, kendte fejl og begrænsninger for Microsoft® Data Access-komponenter version 2.5 SP1 (Service Pack 1).
Standardinstallationen af MDAC indeholder kernekomponenterne (ADO, OLE DB og ODBC) samt yderligere OLE DB-providere og ODBC-drivere til diverse typer datalagring. Oplysninger om MDAC SDK, der indeholder dokumentation, eksempler, funktioner, sidehoveder og biblioteker, finder du i afsnittet om Tekniske problemer i forbindelse med MDAC i dette dokument.
Bemærk: Versionsnummer Den oprindelige version af MDAC 2.5, der følger med den første version af Windows 2000, havde versionsnummeret 2.50.4403.x, hvor "x" angiver buildnummeret. Den version af MDAC 2.5 Service Pack 1, der vil følge med Windows 2000 SP1, vil have versionsnummeret 2.50.5110.x. Den version af MDAC SP1, der leveres til distribution og placeres på Internettet, vil have versionsnummeret 2.51.xxxx.x. Hermed tilpasses versionsnummereringen af MDAC til de gældende standarder for versionsnummerering af andre produkter. De to opdateringer er identiske med hinanden, selvom de har forskellige versionsnumre.
Tekniske problemer, kendte fejl og begrænsninger
Du kan se den komplette liste over MDAC-filer i udgivelsesfortegnelsen, der findes på http://www.microsoft.com/data/download.htm.
Du kan enten installere hele SDK-platformen eller enkelte komponenter fra Webstedet MSDN Online på http://msdn.microsoft.com/developer/sdk/platform.asp. Guiden Installation hjælper dig gennem installationsprogrammet. Flere programmer deler dataadgangskomponenterne, så du skal lukke alle andre programmer, der kører, før du installerer SDK-platformen.
I guiden Installation af SDK-platformen kan du vælge standardinstallation eller specialinstallation. Ved en standardinstallation hentes hele SDK, og ved en specialinstallation kan du vælge bestemte komponenter: dokumentation, buildmiljø, fejlfindingsværktøj, funktioner, eksempler og kildekode, komponenter til videredistribution og andet. Hvad angår dataadgangskomponenter kan du vælge at installere en del af MDAC SDK: API, dokumentation, eksempler mv. Hvis du installerer MDAC SDK, anbefales det, at du også vælger at opdatere buildmiljøet via installationsprogrammet, så komponenterne forbliver synkroniseret.
Hvis du bruger Microsoft® NT 4.0 Service Pack 3, kræver MDAC 2.5 en opdateret version af Hjælp-fremviseren, for at HTML Hjælp-filer vises korrekt. Opdateringen til HTML Hjælp kan hentes ved at klikke på "Visit the HTML Help download page" i MSDN Online Library. på adressen http://msdn.microsoft.com/library/default.asp?URL=/library/tools/htmlhelp/chm/hh1start.htm. Vælg det rigtige sprog til den platform, du bruger.
Nye funktioner i OLE DB Core Services (Oledb32.dll), og således også i MDAC-stakken, afhænger af to andre .dll-filer, der følger med versioner af Internet Explorer, blandt andet:
Hvis du installerer MDAC 2.5 på en computer, der kører programmer med adgang til SQL Server 6.5 via Microsoft OLE DB Provider til SQL Server eller Microsoft SQL Server ODBC-driver, og hvis de lagrede procedurer i kataloget, som er installeret på den pågældende Microsoft SQL Server 6.5, ikke er aktuelle, vil provideren eller driveren generere følgende advarsler:
Hvis et program ignorerer denne meddelelse, kan der opstå problemer, f.eks. tab af skemaoplysninger.
Hvis du vil løse dette problem:
eller
Tilbage til indholdsfortegnelsen for MDAC
Herefter følger vigtige eller yderligere oplysninger, der supplerer dokumentationen til Microsoft ADO.
Tekniske problemer i forbindelse med ADO/RDS
Kendte fejl og begrænsninger i forbindelse med ADO/RDS
Du skal bruge Microsoft® Internet Explorer 5.0, for at du kan åbne et Recordset-objekt fra en XML-fil.
For at forbedre ydeevnen i ADO cachelagres tilføjelser og sletninger i samlingerne Fields til Record-objektet samt ændringer i et eksisterende felts værdi, indtil metoden Update køres. Når metoden Update kaldes, udføres alle ændringer som et batchjob.
Hvert felt har en egenskab af typen Status, og hvis der opstår en fejl under en opdatering, giver egenskaben af typen Status dig mulighed for at se, hvilke felter der er korrekt tilføjet, slettet eller ændret. Hvis status for et felt er afventende, bliver feltet ikke behandlet, hvis et Record-objekt er lukket, eller kommer uden for virkefeltet, før metoden Update kaldes.
Følgende to metoder er tilføjet i samlingen Fields: Resync og CancelUpdate. En ekstra parameter er tilføjet i metoden Append, som kan bruges til at angive værdien af et felt, når du tilføjer det. Metoden Resync henter felters aktuelle værdier fra serveren og bruger ResyncEnum som eneste parameter (standardværdien er adResyncAllValues). Resync påvirker ikke slettede felter. Slettede felter er stadig synlige i det lokale cachelager, indtil de er blevet korrekt slettet med et kald af metoden Update. Egenskaben Fields.Count ændrer heller ikke på et slettet felt, før metoden Update kaldes, og feltet er korrekt slettet.
Field-objektet i Record-objektet indeholder tre nye egenskaber: Status, OriginalValue og UnderlyingValue. Egenskaben Status for Field-objektet angiver feltets aktuelle status, dvs. adFieldPendingUpdate for et felt, der har en ny værdi, men hvor metoden Update endnu ikke er blevet kaldt. OriginalValue og UnderlyingValue svarer til de tilsvarende egenskaber for Recordset-objektet i Field-objektet.
Ændringer i ADO 2.5 URL-binding efter Windows 2000 Beta 2
Du kan bruge "URL=" i tilslutningsstrenge for at gøre URL-binding lettere. F.eks.:
rec.Open "someDirectory", "URL=http://computer/mappe/", adModeReadWrite
Følgende konstanter er fjernet: adOpenURLBind, adCmdURLBind og adOpenStreamFromURL.
Client Cursor Engine implementerer ikke OLE DB 2.5-brugergrænsefladerne. Hvis du derfor åbner en Recordset på en version 2.5 OLE DB-provider og angiver adUseClient som CursorLocation, vil visse egenskaber ikke være nøjagtige, f.eks. vil RecordCount altid returnere -1.
Når du bruger Microsoft Data Shaping Service til OLE DB eller OLE DB Remoting Provider, er egenskabsværdien Extended Properties tilgængelig, selv når Persist Sensitive Authinfo er falsk. Brugere skal være opmærksomme på, at egenskaben Extended Properties ikke er sikker, og der bør derfor ikke lægges følsomme oplysninger i Extended Properties. Når du bruger Microsoft Data Shaping Service via servicekomponenter, som ADO gør, kan egenskabsværdien Extended Properties indstilles på to måder:
Bemærk! Egenskaben PWD i Microsoft OLE DB Provider til ODBC er en providerspecifik egenskab, der ikke understøttes af tjenesten til dataformatering eller Remoting Provider. Det betyder, at servicekomponenter vil lægge egenskaben PWD ind i egenskaben Extended Properties, og det vil ikke være sikkert. Brugerne opfordres til at bruge PASSWORD= i stedet for PWD= i tilslutningsstrengen.
Hvis du bruger en URL til at åbne et Record-objekt, skal du bruge almindelige skråstreger og ikke omvendte skråstreger. Følgende kode vil f.eks. virke korrekt:
Dim r As New Record r.Open "SomeDirectory", "url=http://computer/mappe"
Derimod vil følgende kode forårsage en fejl:
Dim r As New Record r.Open "SomeDirectory", "url=http:\\computer\mappe"
Hvis du angiver adAsyncFetchNonBlocking som en indstilling, vil metoden Open ikke fungere asynkront, men vil snarere blokere, indtil handlingen er fuldført.
Nogle tegn har en anden størrelse, når de indgår i en sætning, end når de ikke indgår i en sætning. Det giver problemer i forbindelse med Stream-objektet, når længden på en streng skal bestemmes. De tegnsæt, der er berørt af problemet, er ISO-2022-JP, ISO-2022-KR, HZ-GB-2312 og UTF-7.
Når du prøver at oprette en forbindelse ved at angive en sti til en .udl-fil, der ikke eksisterer, vil du modtage en fejlmeddelelse om, at filen ikke er fundet. Dette er en ændring i forhold til tidligere versioner af ADO, hvor du modtog en fejlmeddelelse om, at provideren ikke var fundet.
Hvis du opretter en fil med metoden Open til Record-objektet med OLE DB Provider til Internetudgivelser, oprettes en fil på to byte. Det betyder, at hvis du lukker Record-objektet øjeblikkeligt, vil filens størrelse være to byte.
Når du bruger OLE DB Provider til ODBC til at få adgang til en BLOB-kolonne i et Recordset-objekt, må du ikke bruge flere forskellige metoder til at få adgang til dataene. Det vil sige, at du ikke kan bruge metoden GetChunk til at få adgang til et felts værdi for en del af dataene og derefter bruge egenskaben Value til at hente resten af dataene. Du vil i så fald modtage en fejlmeddelelse på anden kodelinje som i følgende eksempel:
v = rs("Blob-kolonne").GetChunk(10)
Debug.Print rs("Blob-kolonne").Value
Hvis du bruger metoden GetChunk, når du begynder at læse en BLOB-kolonne, skal du fortsætte med at bruge denne metode. Hvis du både bruger metoden GetChunk og egenskaben Value, vil fejlen -2147217887 opstå.
Tilbage til indholdsfortegnelsen for MDAC
Herefter følger vigtige eller yderligere oplysninger, der supplerer dokumentationen til Microsoft ADO-udvidelser til DDL og sikkerhed (ADOX).
Tekniske problemer i forbindelse med ADOX
Kendte fejl og begrænsninger i forbindelse med ADOX
Den dataprovider, du anvender, understøtter muligvis ikke alle egenskaber i objekter af typen Table, Index og Column. Der vil opstå en fejl, hvis du har angivet en værdi til en egenskab, der ikke understøttes af provideren. I nye objekter af typen Table, Index eller Column vil fejlen opstå, når objektet tilføjes i samlingen. I eksisterende objekter vil fejlen opstå, når egenskaben indstilles.
Når du opretter objekter af typen Table, Index eller Column, er en velegnet standardværdi til en valgfri egenskab ikke en garanti for, at egenskaben understøttes af den provider, du anvender. Yderligere oplysninger om, hvilke egenskaber provideren understøtter, finder du i dokumentationen til provideren.
Visse funktioner i ADOX understøttes ikke, afhængigt af hvilken OLE DB-dataprovider du anvender. ADOX er fuldt understøttet, hvis du bruger OLE DB Provider til Microsoft Jet. De funktioner, der ikke understøttes, når du bruger Microsoft OLE DB Provider til SQL Server, Microsoft OLE DB-provider til ODBC eller Microsoft OLE DB Provider til Oracle, er anført herunder. ADOX understøttes ikke af andre Microsoft OLE DB-providere.
Der findes ingen kendte fejl eller begrænsninger på nuværende tidspunkt.
Tilbage til indholdsfortegnelsen for MDAC
Herefter følger vigtige eller yderligere oplysninger, der supplerer dokumentationen til Microsoft ADO MD.
Der findes ingen tekniske problemer på nuværende tidspunkt.
Der findes ingen kendte fejl eller begrænsninger på nuværende tidspunkt.
Tilbage til indholdsfortegnelsen for MDAC
Herefter følger vigtige eller yderligere oplysninger, der supplerer dokumentationen til Microsoft Jet og replikeringsobjekter.
Tekniske problemer i forbindelse med JRO
Kendte fejl og begrænsninger i forbindelse med JRO
Der findes ingen tekniske problemer på nuværende tidspunkt.
Databaser, der er gjort replikerbare i kode, og som aldrig er blevet åbnet i Microsoft Access, vil altid have lokale projekter (formularer, rapporter, makroer og moduler), og de kan aldrig ændres, så projektet bliver replikerbart. Det skyldes, at den systemtabel, der styrer denne funktion (mSysAccessObjects), ikke eksisterer, hvis databasen aldrig har været åbnet i Microsoft Access, før databasen er blevet gjort replikerbar. Når først databasen er gjort replikerbar, kan brugeren ikke ændre projektets replikerbarhed.
Tilbage til indholdsfortegnelsen for MDAC
Herefter følger vigtige eller yderligere oplysninger, der supplerer dokumentationen til Microsoft-dataforbindelses-API.
Tekniske problemer i forbindelse med Microsoft-dataforbindelse
Kendte fejl og begrænsninger i forbindelse med Microsoft-dataforbindelse
Der findes ingen tekniske problemer på nuværende tidspunkt.
Kun én instans af dialogboksen Egenskaber for dataforbindelse kan åbnes ad gangen. Når du kalder IDBPromptInitialize::PromptDataSource for at oprette et objekt nummer to, uden at det første objekt er frigjort, vil det medføre uforudsigelige resultater.
Version 2.5 af dataforbindelses-API'et understøtter ikke oprettelse af fjern- eller out-of-process-providere. Hvis du kalder IDataInitialize::CreateDBInstanceEx eller en tilsvarende metode i forbindelse med andet end en in-process-provider, bliver metoden ikke udført.
Flaget DB_MODE_SHARE_EXCLUSIVE er den værdi, der dannes, når DB_MODE_SHARE_DENY_READ og DB_MODE_SHARE_DENY_WRITE sammensættes med OR. Hvis DB_MODE_SHARE_EXCLUSIVE indstilles til input, markeres afkrydsningsfelterne Share Deny Read og Share Deny Write i dataforbindelsens brugergrænseflade, men Share Exclusive markeres ikke.
Tilbage til indholdsfortegnelsen for MDAC
Herefter følger de seneste oplysninger til supplement af dokumentationen til Microsoft OLE DB.
Tekniske problemer i forbindelse med OLE DB
Kendte fejl og begrænsninger i forbindelse med OLE DB
For at køre OLE DB 2.0 på Alpha kræves Visual C++ 5.0 Service Pack 3 eller nyere.
Der findes ingen kendte fejl eller begrænsninger på nuværende tidspunkt.
Tilbage til indholdsfortegnelsen for MDAC
Herefter følger vigtige eller yderligere oplysninger, der supplerer dokumentationen til Microsoft OLE DB-servicekomponenter.
Tekniske problemer i forbindelse med OLE DB-servicekomponenter
Kendte fejl og begrænsninger i forbindelse med OLE DB-servicekomponenter
Når du bruger OLE DB Provider til SQL Server, kan den providerspecifikke egenskab SSPROP_ENABLEFASTLOAD bruges til at opnå en speciel form af OLE DB-sessionsobjektet, som understøtter brugergrænsefladen IRowsetFastLoad. Når du bruger denne egenskab, må du ikke anvende sessionsgruppering. Når sessionsgruppering er aktiveret, er det sessionsobjekt, der returneres til Consumer, muligvis taget fra en gruppe. Da den eksisterende session muligvis ikke er oprettet med SSPROP_ENABLEFASTLOAD, understøttes brugergrænsefladen IRowsetFastLoad muligvis ikke.
Der findes ingen kendte fejl eller begrænsninger på nuværende tidspunkt.
Tilbage til indholdsfortegnelsen for MDAC
Produktbemærkningerne til OLE DB til OLAP indeholder vigtige eller yderligere oplysninger, der supplerer dokumentationen til Microsoft OLE DB til OLAP.
Tekniske problemer i forbindelse med OLE DB til OLAP
Kendte fejl og begrænsninger i forbindelse med OLE DB til OLAP
Der findes ingen tekniske problemer på nuværende tidspunkt.
Der findes ingen kendte fejl eller begrænsninger på nuværende tidspunkt.
Tilbage til indholdsfortegnelsen for MDAC
Herefter følger vigtige eller yderligere oplysninger, der supplerer dokumentationen til Microsoft OLE DB Provider til ODBC.
Tekniske problemer i forbindelse med OLE DB Provider til ODBC
Kendte fejl og begrænsninger i forbindelse med OLE DB Provider til ODBC
Der findes ingen tekniske problemer på nuværende tidspunkt.
Denne provider ignorerer dwFlags, når du kalder IAccessor::CreateAccessor. Endvidere bliver indstillinger til DBBINDFLAGS_HTML eller andre flag i dette felt ikke valideret eller overholdt. dwFlags bør alligevel indstilles til 0.
Implementeringen af ressourcegruppering i OLE DB-servicekomponenter nulstiller ikke serverindstillingerne, når der returneres en datakilde og en session til gruppen. Hvis kommandoen SET QUOTED_IDENTIFIER OFF f.eks. sendes til SQL Server under en session, og den pågældende session returneres til gruppen, nulstilles serverindstillingen ikke. Derfor vælger Consumer muligvis en aktiv forbindelse fra gruppen, hvor visse serverindstillinger er indstillet anderledes, end det var hensigten. Hvis disse serverindstillinger, f.eks. QUOTED_IDENTIFIER, er indstillet til andre værdier end standardværdierne, nulstilles status for de aktive forbindelser ikke, når objekterne returneres til gruppen. Det er derfor nødvendigt, at Consumer nulstiller disse indstillinger efter behov eller deaktiverer OLE DB-servicekomponenter, for at DBMS kan styre disse serverindstillinger.
Der kan ikke oprettes en ny forbindelse inde i en distribueret transaktion, medmindre ODBC-gruppering af forbindelser bruges. ODBC vil tilmelde forbindelsen i transaktionen.
OLE DB Provider til ODBC nulstiller ikke alle tilslutningsattributter, hvis forbindelserne ødelægges eller returneres til en gruppe. Udviklere vil måske undersøge eller nulstille tilslutningsattributter, når en forbindelse modtages fra en gruppe. Yderligere oplysninger om SQLSetConnectAttr samt en liste over tilslutningsattributter finder du i dokumentationen ODBC Programmer's Reference. Yderligere oplysninger samt en liste over tilslutningsattributter, der gælder specielt for SQL Server, finder brugere af Microsoft SQL Server i Hjælp til SQL Server.
Når der udstedes to opdateringssætninger i en batch, og der anmodes om flere resultater på OLE DB Provider til ODBC, returneres kun ét resultatsæt. Fejlen opstår, når batchsætningen udføres ved hjælp af SQLPrepare og SQLExecute. Hvis batchopdateringen udføres ved hjælp af SQLExecDirect, returneres to resultatsæt på korrekt vis. Bemærk, at OLE DB Provider til ODBC bruger opkald med Prepare/Execute og kun returnerer ét resultatsæt. En løsning på problemet er at bruge OLE DB Provider til SQL Server, der bruger SQLExecDirect og fungerer korrekt.
Når du kører en batchopdatering via OLE DB Provider til ODBC til SQL Server, går oplysninger om konflikt tabt, hvis mere end én række er i konflikt. Den første række i batchen, der er i konflikt, markeres som værende i konflikt og bevares i redigeringstilstand. Eventuelt efterfølgende rækker, der er i konflikt, markeres imidlertid ikke som værende i konflikt og indstilles igen til en redigeringstilstand af adEditNone, uden at ændringerne påvirker serveren. Problemet kan løses ved at bruge OLE DB Provider til SQL Server (SQLOLEDB).
Tilbage til indholdsfortegnelsen for MDAC
Herefter følger vigtige eller yderligere oplysninger, der supplerer dokumentationen til Microsoft OLE DB Provider til Oracle.
Tekniske problemer i forbindelse med OLE DB Provider til Oracle
Kendte fejl og begrænsninger i forbindelse med OLE DB Provider til Oracle
Hvis du vil aktivere OLE DB-provideren til Oracle til at fungere sammen med Oracle8-programmer, skal posten i registreringsdatabasen redigeres til at bruge Oci.dll i stedet for standardfilen Ociw32.dll.
Bemærk! Denne nøgle tilføjes automatisk af installationsprogrammet.
Bemærk! Denne nøgle skal tilføjes manuelt ved hjælp af RegEdit. Kontakt Microsoft Produktsupport for at få vejledning til installation af de seneste lynreparationer, der indeholder registreringsværdien OracleOciLib.
Denne provider ignorerer dwFlags, når du kalder IAccessor::CreateAccessor. Endvidere bliver indstillinger til DBBINDFLAGS_HTML eller andre flag i dette felt ikke valideret eller overholdt. Consumer bør alligevel indstille dwFlags til 0.
Når du bruger OLE DB Provider til Oracle sammen med en Oracle 7.x-server, kan der opstå en fejl, når du udfører en ydre sammenføjning. I en ydre sammenføjning kan alle kolonner eventuelt være nul. Oracle 7.x angiver muligvis, at en kolonne i en ydre sammenføjning ikke kan være nul, og genererer derfor en fejl, når en kolonne, der dannes, indeholder en Null-værdi. Løsningen på dette problem er at bruge Oracle 8.x-servere.
Når du åbner en Oracle 8.x-database ved hjælp af en Select-sætning til opdatering, skal du først sætte en transaktion i gang, da systemet ellers vil returnere en fejlmeddelelsen om, at der er opstået en fejl under indhentningen (ORA-01002).
Når du opdaterer en Oracle-database ved hjælp af enten en ODBC-driver til Oracle eller OLE DB Provider til Oracle, skal du være opmærksom på, at Oracle konverterer tomme strenge til NULL-værdier. Når du bruger ADO-metoden Update, returnerer systemet muligvis en fejlmeddelelse om, at den angivne række ikke blev fundet til opdatering, og at nogle værdier kan være ændret siden den seneste læsning. (80040e38). Problemet opstår, fordi Oracle-serveren konverterer den tomme streng til en NULL-værdi, og ADO-objektet Recordset lagrer den tomme streng.
Tilbage til indholdsfortegnelsen for MDAC
Herefter følger vigtige eller yderligere oplysninger, der supplerer dokumentationen til Microsoft OLE DB Provider til SQL Server.
Tekniske problemer i forbindelse med OLE DB Provider til SQL Server
Kendte fejl og begrænsninger i forbindelse med OLE DB Provider til SQL Server
Der findes ingen kendte tekniske problemer på nuværende tidspunkt.
Implementeringen af ressourcegruppering i OLE DB-servicekomponenter nulstiller ikke serverindstillingerne, når der returneres en datakilde og en session til gruppen. Hvis kommandoen SET QUOTED_IDENTIFIER OFF f.eks. sendes til SQL Server under en session, og den pågældende session returneres til gruppen, nulstilles serverindstillingen ikke. Derfor vælger Consumer muligvis en aktiv forbindelse fra gruppen, hvor visse serverindstillinger er indstillet anderledes, end det var hensigten. Hvis disse serverindstillinger, f.eks. QUOTED_IDENTIFIER, er indstillet til andre værdier end standardværdierne, nulstilles status for de aktive forbindelser ikke, når objekterne returneres til gruppen. Det er derfor nødvendigt, at Consumer nulstiller disse indstillinger efter behov eller deaktiverer OLE DB-servicekomponenter, for at DBMS kan styre disse serverindstillinger.
Tilbage til indholdsfortegnelsen for MDAC
Herefter følger vigtige eller yderligere oplysninger, der supplerer dokumentationen til OLE DB Provider til Microsoft Jet.
Tekniske problemer i forbindelse med OLE DB Provider til Microsoft Jet
Kendte fejl og begrænsninger i forbindelse med OLE DB Provider til Microsoft Jet
Microsoft® Jet 4.0-databasemotoren omfatter aktivering af alle brugergrænseflader til Unicode. Data angives nu i Unicode-format (international aktivering) i stedet for i ANSI-format.
Hvis du installerer OLE DB Provider til Microsoft Jet 4.0, bliver mange af filerne overskrevet, hvilket medfører, at du ikke kan bruge OLE DB Provider til Microsoft Jet 3.51. Der kan muligvis opstå problemer i forbindelse med ydeevnen, når du vil åbne gamle .mdb-filer, medmindre du bruger Microsoft Access 2000 til at konvertere dem til det nye Microsoft Jet 4.0-format.
Tilbage til indholdsfortegnelsen for MDAC
Herefter følger vigtige eller yderligere oplysninger, der supplerer dokumentationen til Microsoft Data Shaping Service til OLE DB.
Tekniske problemer i forbindelse med Microsoft Data Shaping Service til OLE DB
Kendte fejl og begrænsninger i forbindelse med Microsoft Data Shaping Service til OLE DB
Der findes ingen tekniske problemer på nuværende tidspunkt.
Herefter følger en liste over OLE DB-datatyper, som Microsoft Data Shaping Service til OLE DB kan bruge i delsætningen New. Oplysninger om tilsvarende ADO-udtryk finder du i dokumentationen til ADO DataTypeEnum.
| DBTYPE_BOOL | DBTYPE_I2 |
| DBTYPE_BSTR | DBTYPE_I4 |
| DBTYPE_BYTES | DBTYPE_I8 |
| DBTYPE_CY | DBTYPE_NUMERIC |
| DBTYPE_DATE | DBTYPE_R4 |
| DBTYPE_DBDATE | DBTYPE_R8 |
| DBTYPE_DBTIME | DBTYPE_STR |
| DBTYPE_DBTIMESTAMP | DBTYPE_UI1 |
| DBTYPE_DECIMAL | DBTYPE_UI2 |
| DBTYPE_ERROR | DBTYPE_UI4 |
| DBTYPE_FILETIME | DBTYPE_UI8 |
| DBTYPE_GUID | DBTYPE_VARNUMERIC |
| DBTYPE_I1 | DBTYPE_WSTR |
Tilbage til indholdsfortegnelsen for MDAC
Herefter følger vigtige eller yderligere oplysninger, der supplerer dokumentationen til Microsoft ODBC.
Tekniske problemer i forbindelse med ODBC
Kendte fejl og begrænsninger i forbindelse med ODBC
Medmindre driveren viser CONFIGDSN, kan den tilsvarende ANSI-komponent for CONFIGDSNW, 16-bit ODBC-klienter ikke tilføje, konfigurere eller slette UNICODE ODBC-drivere. Løsningen på dette problem er at bruge et 32-bit API, der understøtter UNICODE. Microsoft, MERANT, Simba Technologies og andre firmaer producerer 32-bit drivere til alle større databaser.
Oplysninger om at deltage i eller tilmelde sig en transaktion med Microsoft Transaction Server finder du i dokumentationen til Microsoft Transaction Server. Nærmere oplysninger er tilgængelige for driverudviklere og programskrivere.
ODBC kan ikke køre med automatisk transaktionstilmelding, uden at gruppering af forbindelser er aktiveret.
I et låst system, f.eks. Zero Administration Windows, Windows 2000 eller Windows Terminal Server, har brugeren ikke privilegier til at skrive til HKLM-træet i registreringsdatabasen. Derfor vil de programmer, der opretter ODBC DSN og DSN-løse forbindelser ved hjælp af ODBC-driver til Microsoft Jet, ikke fungere korrekt. Løsningen på dette problem er at oprette DSN ved hjælp af administratorkontoen i Windows.
Visse tidligere versioner af MDAC indeholdt både engelske og ikke-engelske poster for ODBC-providere. Brugere, som har oprettet programmer, der benytter ikke-engelske ODBC-providere, vil muligvis ikke kunne flytte programmerne til en anden sprogversion af MDAC 2.5. For eksempel kan et program, der er skrevet vha. en ikke-engelsk provider, muligvis ikke køre på andre sprogversioner, hvor den ikke-engelske ODBC-post ikke findes. Brugere, der skriver programmer, som benytter ODBC-teknologi, opfordres derfor til at kalde den engelske ODBC-provider for at sikre kompatibilitet på tværs af sprogene.
Tilbage til indholdsfortegnelsen for MDAC
Herefter følger vigtige eller yderligere oplysninger, der supplerer dokumentationen til Microsoft ODBC-driver til Oracle.
Tekniske problemer i forbindelse med ODBC-driver til Oracle
Kendte fejl og begrænsninger i forbindelse med ODBC-driver til Oracle
Hvis du vil aktivere ODBC-driveren til Oracle til at fungere sammen med Oracle8-programmer, skal posten i registreringsdatabasen redigeres til at bruge Oci.dll i stedet for standardfilen Ociw32.dll.
Bemærk! Denne nøgle tilføjes automatisk af installationsprogrammet.
Bemærk! Denne nøgle skal tilføjes manuelt ved hjælp af RegEdit. Kontakt Microsoft Produktsupport for at få vejledning til installation af de seneste lynreparationer, der indeholder registreringsværdien OracleOciLib.
Driveren kan returnere fejlmeddelelser eller meddelelser om forkortede data, når guiden Installation ikke er tvunget til at gætte kolonnedefinitionen. Standardværdien for version 2.5-driveren er 0.
Der kan forekomme adgangsovertrædelse, når ODBC-driver til Oracle sletter en række fra en resultset-delsætning. Dette skyldes en fejl, der tillader opdatering af en statisk tabel.
ODBC-driver til Oracle returnerer en meddelelse om, at [Microsoft][ODBC-driver til Oracle]SQL-datatypen er uden for området, når der forespørges efter ODBC 3.0 og senere datatyper via SQLGetTypeInfo. ODBC-driver til Oracle understøtter kun ODBC 2.5-datatyper.
Når du bruger OLE DB Provider til ODBC (MSDASQL) med en ODBC-driver til Oracle, returneres der ikke tilstrækkeligt mange oplysninger i rækkesættet Columns MetaData af brugergrænsefladen IColumnsRowset til, at Client Cursor Engine kan udføre opdateringer (metoden UpdateBatch i ADO). Problemet kan løses ved at bruge OLE DB Provider til Oracle (MSDAORA) i stedet for.
Tilbage til indholdsfortegnelsen for MDAC
Herefter følger vigtige eller yderligere oplysninger, der supplerer dokumentationen til Microsoft ODBC-datakildeadministrator.
Tekniske problemer i forbindelse med ODBC-datakildeadministrator
Kendte fejl og begrænsninger i forbindelse med ODBC-datakildeadministrator
Der findes ingen tekniske problemer på nuværende tidspunkt.
Hvis du klikker på knappen Start Visual Studio Analyzer under fanen Sporing i ODBC-datakildeadministrator, vises en fejlmeddelelse, hvis Visual Studio Analyzer ikke er installeret. Meddelelsen angiver, at ODBC ikke kunne registreres som en Visual Studio Analyzer-hændelseskilde.
Selvom du højreklikker på statiske etiketter i dialogbokse, som åbnes fra ODBC-datakildeadministrator, vises ingen kontekstafhængig hjælp. Du skal klikke på ?-knappen i øverste højre hjørne af dialogboksen og derefter klikke på kontrolelementet for at få adgang til Hjælp til disse kontrolelementer. Hjælp via højrekliksmenuen er aktiveret for alle knapper, alternativknapper og afkrydsningsfelter.
Tilbage til indholdsfortegnelsen for MDAC
Herefter følger vigtige eller yderligere oplysninger, der supplerer dokumentationen til Microsoft ODBC-desktopdatabasedrivere.
Tekniske problemer i forbindelse med ODBC-desktopdatabasedrivere
Kendte fejl og begrænsninger i forbindelse med ODBC-desktopdatabasedrivere
ODBC-driver til Jet fortolker nu CREATE_DB som Jet 4.0-databaser i stedet for Jet 3.x-databaser. Programmer, som tidligere oprettede Jet 3.x-databaser, blandt andet Microsoft Project 98, vil nu oprette Jet 4.0-databaser ved hjælp af dette nøgleord. Jet 4.0-databaser kan læses ved hjælp af MDAC 2.1 eller senere og Microsoft Access 2000 eller senere. Nøgleordet CREATE_DBV4 er blevet tilføjet, så programmerne kan angive oprettelse af Jet 4.0-databaser.
På grund af en ændring i Jet 4.0-motoren indsættes de parametre, som er indeholdt i delforespørgsler, før de parametre, der er øverst i sætningen. ODBC-specifikationen angiver, at parametre er bundet i den rækkefølge, de vises i den SQL-sætning, de skal indsættes i. Så når sætningen køres, indsættes de i den pågældende rækkefølge. Dette var tilfældet i Jet 3.51, men i Jet 4.0 er dette forhold ændret.
Der findes ingen kendte fejl eller begrænsninger på nuværende tidspunkt.
Tilbage til indholdsfortegnelsen for MDAC
MDAC indeholder klientkomponenter til Microsoft SQL Server til oprettelse af forbindelse, der giver ADO-, OLE DB- og ODBC-klienter dataadgang på SQL Server.
Følgende komponenter til SQL Server er indeholdt i MDAC:
I følgende afsnit af dette dokument med vigtige oplysninger beskrives, hvordan du bruger de forskellige komponenter til SQL Server i denne version af MDAC sammen med forskellige versioner af SQL Server.
Problemer, der er fælles for både OLE DB Provider til SQL Server og SQL Server ODBC-driver, er beskrevet i dette afsnit.
OLE DB Provider til SQL Server og SQL Server ODBC-driver benytter systemlagrede procedurer, der er kendt som kataloglagrede procedurer, til at hente oplysninger fra systemkataloget på SQL Server. Hver enkelt version af OLE DB Provider til SQL Server og ODBC-driver er udviklet til at arbejde med en bestemt version af de kataloglagrede procedurer.
Filen Instcat.sql, der følger med OLE DB Provider til SQL Server version 07.01.0690 og SQL Server ODBC-driver version 3.70.0690, indeholder mindre opdateringer af de kataloglagrede procedurer, som opgraderer procedurerne til de versioner, der bruges af OLE DB Provider til SQL Server version 07.01.0690 og SQL Server ODBC-driver version 3.70.0690. Den Instcat.sql-fil, der følger med OLE DB Provider til SQL Server version 07.01.0690 og SQL Server ODBC-driver version 3.70.0690, er den samme som den Instcat.sql-fil, der følger med SQL Server 7.0. SQL Server 7.0-steder behøver ikke at køre Instcat.sql.
Systemadministratoren for SQL Server skal bruge scriptet Instcat.sql til at opgradere de kataloglagrede procedurer for at sikre, at driveren fungerer korrekt. En opgradering af de kataloglagrede procedurer påvirker ikke de gamle SQL Server-klienters funktion. Opgraderingen skal udføres på alle versioner af SQL Server fra version 4.21a til 6.5. Opgraderingen er ikke påkrævet, hvis du har SQL Server 7.0.
Systemadministratoren skal køre scriptet Instcat.sql ved hjælp af programmet isql i henhold til nedenstående vejledning for at opgradere de kataloglagrede procedurer på SQL Server 4.21a, 6.0 eller 6.5.
Før der udføres ændringer i den overordnede database, skal systemadministratoren oprette en sikkerhedskopi af databasen. Computeren skal være installeret som en klientarbejdsstation til SQL Server, for at værktøjet isql kan køres.
Brug værktøjet isql til at køre scriptet Instcat.sql ved kommandoprompten, f.eks.:
C:>ISQL /Usa /Psa_password /Sserver_name /ilocation\Instcat.Sql
hvor
Scriptet Instcat.sql genererer mange meddelelser. De fleste af disse meddelelser angiver, hvor mange rækker der blev påvirket af Transact-SQL-sætningerne, som scriptet udstedte. De fleste af disse meddelelser kan ignoreres, men du bør kontrollere, om der er meddelelser, der angiver kørselsfejl. Når Instcat.sql køres på SQL Server version 6.0, kan du se bort fra meddelelsen om, at objektet sp_MS_upd_sysobj_category ikke findes. Den sidste meddelelse, der vises, skal angive, at Instcat.sql er korrekt installeret. Scriptet Instcat.sql mislykkes, når den tilgængelige plads i den overordnede database ikke er tilstrækkelig til at lagre de kataloglagrede procedurer eller til at registrere ændringerne i de eksisterende procedurer.
Tilbage til klientdataadgangskomponenter til SQL Server
OLE DB Provider til SQL Server version 07.01.0690 kan bruges til at få adgang til SQL Server version 7.0 og 6.5.
Da OLE DB Provider til SQL Server version 07.01.0690 følger med SQL Server 7.0, kan brugere af SQL Server 7.0 finde oplysninger om driveren i dokumentationen til SQL Server 7.0 i stedet for i dette dokument. Hjælp til SQL Server 7.0 er tilgængelig på MSDN og på Technet cd-rom'er.
Brugere af SQL Server version 6.5 kan finde oplysninger om OLE DB Provider til SQL Server 7.0 i dokumentationen til MDAC SDK.
Tilbage til klientdataadgangskomponenter til SQL Server
I dette emne beskrives brugen af SQL Server ODBC-driver version 3.70.0690 med SQL Server 6.5 eller tidligere.
Da SQL Server ODBC-driver version 3.70.0690 følger med SQL Server 7.0, kan brugere af SQL Server 7.0 finde oplysninger om driveren i dokumentationen til SQL Server 7.0 i stedet for i dette dokument. Hjælp til SQL Server 7.0 er tilgængelig på MSDN og på Technet cd-rom'er.
SQL Server ODBC-driver version 3.70.0690 er en Win32 ODBC version 3.51-driver. Den kan bruges med programmer, der er skrevet til enten ODBC 2.X- eller ODBC 3.X-API'er. Driveren fungerer med SQL Server version 4.21a eller senere. Driveren kører på Windows 95, Windows 98 og Windows NT version 4.0.
Et Win32-klientnetværksprogram til SQL Server 7.0 (cliconfg.exe) installeres samtidig med SQL Server ODBC-driver version 3.70.0690. Dette klientnetværksprogram til SQL Server kan bruges med SQL Server version 4.21a eller senere.
SQL Server ODBC-driver version 3.70.0690 er den driver, der også følger med SQL Server 7.0. Brugere af SQL Server 7.0 kan derfor finde oplysninger om SQL Server ODBC-driver version 3.70.0690 i dokumentationen til SQL Server 7.0. Hjælp til SQL Server 7.0 er tilgængelig på MSDN og på Technet cd-rom'er.
Når SQL Server ODBC-driver version 3.70.0690 bruges med SQL Server (version 4.21a, 6.0 eller 6.5), fungerer driveren på samme måde som de gamle drivere. Du kan bruge de driverspecifikke oplysninger, der leveres med den pågældende version af SQL Server. Det er blandt andet:
Filen Sqlsodbc.hlp, der følger med SQL Server ODBC-driver version 3.70.0690, indeholder kun kontekstafhængig hjælp til guiden SQL Server DSN-konfiguration. Filen Drvssrvr.hlp, der fulgte med de tidligere versioner af SQL Server ODBC-driver, indeholdt driverspecifikke oplysninger til ældre versioner af driveren. Oplysninger i de ældre versioner af Drvssrvr.hlp er duplikeret i håndbogen til SQL Server 6.5 om programmering af ODBC til Microsoft SQL Server.
SQL Server ODBC-driveren bruger driverspecifikke parametre til flere forskellige ODBC-funktionskald. Oplysninger om disse driverspecifikke parametre og driverspecifik C- og C++-programmeringsstruktur finder du i filen Odbcss.h.
SQL Server ODBC-driver version 3.70.0690 fungerer med filen Odbcss.h, der findes i følgende kilder:
MDAC SDK er en del af den professionelle udgave af Microsoft Developer Network. SDK kan også hentes fra Microsofts Websted på http://www.microsoft.com/data. SDK kan også fås hos Microsoft Press i Microsoft ODBC 3.0 Software Development Kit and Programmer's Reference.
Da ODBC-driver version 3.70.0690 følger med SQL Server 7.0, kan brugere af SQL Server 7.0 finde oplysninger i ODBC-dokumentationen i SQL Server 7.0. De kompatibilitetsproblemer, der er beskrevet i dette afsnit, gælder kun, når denne driver køres sammen med tidligere versioner af SQL Server (4.21a, 6.0 og 6.5).
SQL Server ODBC-driver version 3.70.0690 viser en ny guide, når du vil tilføje eller konfigurere datakilder i værktøjet ODBC Administrator, eller når et program kalder SQLConfigDataSource og beder driveren om at hente oplysninger hos brugeren. Klik på knappen Hjælp i guiden for at få adgang til dokumentationen om guiden.
I SQL Server ODBC-driver version 2.65, der følger med SQL Server 6.5, arbejdede SQL_COPT_SS_PERF_QUERY_INTERVAL i sekunder i stedet for i millisekunder som beskrevet, se artikel Q157753 i Microsoft Knowledge Base. I SQL Server ODBC-driver version 3.70.0690 er SQL_COPT_SS_PERF_QUERY_INTERVAL blevet ændret, så der nu arbejdes i millisekunder som beskrevet.
Følgende ændringer påvirker kun de programmer, der er skrevet med ODBC 3.X-API. De påvirker ikke programmer, der er skrevet med ODBC 2.X-API. Ændringerne burde ikke have indflydelse på behandlingen af resultatsæt i de fleste ODBC-baserede programmer.
I tidligere versioner af SQL Server ODBC-driver returnerer sammenhængende PRINT- eller RAISERROR-sætninger i en batch eller i en lagret procedure deres meddelelser sammen i et enkelt resultatsæt. I SQL Server ODBC-driver version 3.70.0690 returneres meddelelserne for hver SQL-sætning som et særskilt resultatsæt. Du skal kalde SQLMoreResults efter hver meddelelse for at kunne være placeret på meddelelsen til den næste SQL-sætning. Meddelelserne fra en enkelt SQL-sætning, f.eks. en DBCC-sætning, returneres alle i et enkelt resultatsæt, og det er ikke nødvendigt at kalde SQLMoreResults efter hver meddelelse.
I tidligere versioner af SQL Server ODBC-driver får en kørselsfejl eller en fejl af typen RAISERROR med en prioritering på 11 eller højere på den første sætning i et batchjob eller en lagret procedure enten SQLExecute, SQLExecDirect eller SQLParamData til at returnere SQL_ERROR. I SQL Server ODBC-driver version 3.70.0690 returnerer SQLExecute, SQLExecDirect eller SQLParamData kun fejlen SQL_ERROR, hvis ingen andre sætninger køres efter den første sætning. Hvis der køres andre sætninger efter den første, selvom det blot er en enkel RETURN-sætning uden en returværdi, vil SQLExecute eller SQLExecDirect returnere SQL_SUCCESS_WITH_INFO. Når meddelelserne SQL_SUCCESS_WITH_INFO er blevet behandlet ved hjælp af SQLGetDiagRec, skal du kalde SQLMoreResults for at blive placeret på det næste resultatsæt.
Når der opstod en fejl i forbindelse med tidligere versioner af driveren på den første sætning i et batchjob eller en lagret procedure, var sætningshandlen tilgængelig til brug med en anden SQL-sætning, efter at SQLExecute eller SQLExecDirect havde returneret SQL_ERROR. Når version 3.7-driveren returnerer SQL_SUCCESS_WITH_INFO, er sætningen ikke fri til at behandle en anden SQL-sætning, før SQLMoreResults returnerer SQL_NO_DATA, eller før alle resultatsæt efter RAISERROR er blevet lukket. Hvis der ikke følger nogen resultatsæt efter fejlmeddelelsen, kan SQLCloseCursor ikke kaldes. SQLFreeStmt(SQL_CLOSE) eller SQLMoreResults skal kaldes, før sætningshandlen kan frigøres til at behandle en anden SQL-sætning:
CREATE PROCEDURE TestPrc @Parm1 as
IF (@Parm1 IS NULL)
BEGIN
RAISERROR ('Parm1 kan ikke være en NULL-værdi, 11, 1)
RETURN
END
SELECT * FROM sysusers WHERE suid = @Parm1
GO
Kør følgende:
SQLExecDirect(hstmt, "{ call TestPrc (NULL) }", SQL_NTS);
Når du bruger en ældre version af SQL Server ODBC-driveren, eller hvis programmet bruger ODBC 2.X-API'et, vil SQLExecDirect returnere SQL_ERROR. Når SQLGetDiagRec har returneret SQL_NO_DATA, eller SQLError har returneret SQL_NO_DATA_FOUND, er sætningshandlen fri til at kunne køre en anden SQL-sætning.
Når du bruger SQL Server ODBC-driver version 3.70.0690 fra et program, der er skrevet til ODBC 3.X-API'et, vil SQLExecDirect returnere SQL_SUCCESS_WITH_INFO. Når SQLGetDiagRec har returneret SQL_NO_DATA, kan sætningshandlen ikke bruges til at behandle en anden SQL-sætning, før SQLMoreResults returnerer SQL_NO_DATA, eller SQLFreeStmt(SQL_CLOSE) kaldes.
I tidligere versioner af SQL Server ODBC-driver returnerer SQLExecute, SQLExecDirect eller SQLParamData SQL_SUCCESS, når et program kører en UPDATE- eller DELETE-sætning, der ikke påvirker nogen rækker. I dette tilfælde returnerer version 3.7-driveren stadig SQL_SUCCESS til programmer, der er skrevet med ODBC 2.X-API'et, men den returnerer SQL_NO_DATA til programmer, der er skrevet med ODBC 3.X-API'et. Hvis enten det ODBC 2.X-baserede program, der modtager SQL_SUCCESS, eller det ODBC 3.X-baserede program, der modtager SQL_NO_DATA, derefter kalder SQLRowCount, vil SQLRowCount returnere et antal på nul.
I ODBC 3.X defineres den måde, som resultater returneres på, tydeligere end i ODBC 2.X. Tidligere versioner af SQL Server ODBC-driver returnerede outputparametrenes værdier og returkoder, når de ODBC 2.X-baserede funktioner, SQLFetch eller SQLExtendedFetch, returnerede SQL_NO_DATA på det sidste resultatsæt, der blev returneret af en lagret procedure. SQL Server ODBC-driver version 3.70.0690 bevarer denne funktionsmåde, når den kaldes fra ODBC 2.X-baserede programmer. Når SQL Server ODBC-driver version 3.70.0690 kaldes fra ODBC 3.X-baserede programmer, returnerer driveren imidlertid ikke outputparametre eller returkoder, før SQLMoreResults returnerer SQL_NO_DATA.
Tilbage til klientdataadgangskomponenter til SQL Server
OLE DB Provider til SQL Server og SQL Server ODBC-driveren bruger netværksbiblioteker til klient på SQL Server til at kommunikere med serveren.
Som en del af installationen installerer MDAC alle de nye netværksbiblioteker, så OLE DB Provider til SQL Server og SQL Server ODBC-driveren er synkroniseret med netværksbibliotekerne.
Den version af klientnetværksprogrammet til SQL Server, der installeres af MDAC, bruges af SQL Server ODBC-driver version 3.70.0690 til oprettelse af datakilder.
Tilbage til klientdataadgangskomponenter til SQL Server
Tilbage til indholdsfortegnelsen for MDAC
Herefter beskrives brugen af Microsoft Visual FoxPro ODBC-driver version 6.0a.
Hvis du vil installere Visual FoxPro ODBC-driver, skal du bruge:
Vigtigt!Visual FoxPro ODBC-driveren er kun en 32-bit driver. Platformene Windows 3.1 og Windows til Workgroups understøttes ikke.
Operativsystemet Windows 2000 installerer kun den engelske version af VFP ODBC-driveren. Tidligere versioner af driveren, der er lokaliseret til tysk, fransk og spansk, overskrives af den engelske version.
Den oprindelige indstilling for SET REPROCESS ændres til 5, så Visual FoxPro prøver at låse en post et begrænset antal gange. Hvis forsøget mislykkes, opstår der en fejl i Visual FoxPro.
Indstillingerne i Visual FoxPro for DELETED og NULL kan nu indstilles i dialogboksen til driverkonfiguration eller via tilslutningsstrengen. Syntaksen er:
Hvis du vil installere Visual FoxPro ODBC-driver, skal du køre Install.exe:
Bemærk! Installationen af Visual FoxPro ODBC-driveren opdaterer ODBC-komponenterne til ODBC 3.51-kompatibilitet, hvis det er nødvendigt. Yderligere oplysninger om udvidelser eller funktioner i ODBC 3.51 finder du i filen ODREADME.TXT i mappen MSDASDK.
Efter installationen skal du definere en datakilde:
Visual FoxPro ODBC-driveren leveres med to Hjælp-filer, der ligger i mappen SYSTEM i Windows 95/Windows 98 eller i mappen SYSTEM32 i Windows NT/Windows 2000:
Yderligere oplysninger om Visual FoxPro ODBC-driveren finder du i Microsoft Data Access-komponenter (MDAC) SDK, som kan hentes på msdn.microsoft.com. Åbn onlinemappen MSDN og derefter platformen SDK for at finde MDAC SDK, der indeholder et afsnit om ODBC-drivere. Afsnittet om Visual FoxPro ODBC-driveren i MDAC SDK indeholder oplysninger om:
Visual FoxPro ODBC-driver navngiver kolonner baseret på udtryk. Hvis du f.eks. kører følgende sætning:
SELECT MIN (customer_id) FROM customers
returnerer Visual FoxPro ODBC-driveren min_customerid som navn på kolonnen i resultatsættet. Hvis du vil kontrollere det feltnavn, der oprettes, skal du bruge AS-delsætningen, som vist i følgende eksempel:
SELECT MIN(customer_id) AS minimum_custid FROM customers
Tilbage til Visual FoxPro ODBC-driver
I følgende afsnit beskrives de områder, der specielt understøttes af Visual FoxPro ODBC-driveren:
Understøttede versioner af FoxBase+®- og FoxPro-tabeller: Visual FoxPro ODBC-driver giver dig adgang til tabeller i Microsoft® FoxBase+®, FoxPro 1.x, FoxPro 2.x og Visual FoxPro. Visual FoxPro ODBC-driveren giver dig også adgang til tabeller i Visual FoxPro-databasemappen (.DBC-fil).
Bemærk! Visual FoxPro ODBC-driveren tillader kun transaktioner i tabeller inde i en Visual FoxPro-database (.DBC-fil) og ikke i frie tabeller.
Visual FoxPro ODBC-driveren er ODBC Level 1 API-kompatibel og implementerer også flere forskellige Level 2 API'er. Alle understøttede API'er er nu blevet implementeret. Informer os venligst om eventuelle problemer, der måtte opstå i forbindelse med API'er. I Hjælp-filerne til MDAC SDK beskrives de understøttede funktioner og acceptable inputparametre. Visual FoxPro SQL udvider også SQL-funktionen, der er tilgængelig gennem driveren. Oplysninger om den udvidede grammatik finder du i sprogguiden til Visual FoxPro.
Visual FoxPro ODBC-driveren understøtter Visual FoxPro-regler, udløsningsmekanismer og standardværdier, hvis de indeholder funktioner, som understøttes af driveren. Yderligere oplysninger om, hvilke Visual FoxPro sprogelementer der understøttes, finder du i Hjælp-filen i MDAC SDK.
Visual FoxPro ODBC-driveren kan behandle forespørgsler i baggrunden. Du bør dog undgå at bruge gruppering af forbindelser sammen med VFP ODBC-driveren. Deaktiver denne funktion, hvis driveren kaldes af et program, der bruger flere tråde. Hvis du vil deaktivere denne funktion, skal du angive BackGroundFetch=No i tilslutningsstrengen eller fjerne markeringen for hentning af data i baggrunden i dialogboksen til installation. Yderligere oplysninger finder du i Hjælp-emnet vedrørende dialogboksen til installation af ODBC Visual FoxPro i DRVVFP.CHM eller i Hjælp-filen i MDAC SDK.
Fjernvisninger og visninger med angivne parametre
Hver gang SQLTables( ) kaldes, udelukkes fjernvisninger og visninger med angivne parametre fra listen. Lokale visninger baseret på visninger med angivne parametre udelukkes ikke, men der vil opstå en fejl, hvis du bruger dem. Hvis du kalder SQLTables( ) med et entydigt tabelnavn, vil du alligevel finde visninger (hvis der er nogen), så du kan kontrollere, om der er konflikt mellem navne.
Visual FoxPro ODBC-driveren giver adgang til dBASE 4 og tidligere tabeller. dBASE-filerne understøttes på følgende måde:
Advarsel! Hvis en dBASE® v4.x- eller 5.x-fil har tilknyttede indeksfiler (.MDX, .NDX), vil Visual FoxPro ODBC-driveren ikke opdatere filen rigtigt, og indeksene bliver ødelagt. Disse filer bør kun åbnes som skrivebeskyttet.
Driveren er DBCS-aktiveret.
Du kan nu angive sætvis sortering af indeks. Listen over understøttet sætvis sortering findes i beskrivelsen af sætvis sortering i afsnittet om sprogguiden til Visual FoxPro i MDAC SDK.
Standardindstillingen for sætvis sortering er MACHINE. Den sætvise sortering kan ændres ved at køre enten et SET COLLATE TO-sprog med ODBC C API SQLExecDirect( ), ved at kalde SQLPrepare( ) og SQLExec( ) (se side 42-44 i referencehåndbogen til ODBC SDK) eller ved at vælge en anden sætvis sortering i driverindstillingerne i dialogboksen til installation af datakilden.
Bemærk! Filen FOXPRO.INT er installeret i systemmappen. Hvis filen fjernes, vil sætvis sortering på computere med østeuropæisk tegntabel ikke fungere.
Tilbage til Visual FoxPro ODBC-driver
Opdatering understøttes ikke i regler og udløsningsmekanismer.
I afsnittet om Visual FoxPro ODBC-driveren i Hjælp-filen i MDAC SDK beskrives de understøttede kommandoer og funktioner. Afsnittet indeholder en opdateret liste over de kommandoer og funktioner, som ikke er understøttet. De kommandoer og funktioner, som ikke er anført på listen i Hjælp-filen, understøttes ikke.
Visninger med angivne parametre virker kun i en udløsningsmekanisme, hvis parameteren har fået tildelt en værdi, før visningen åbnes. Interaktivt input af en parameterværdi er ikke tilladt i ODBC.
Visual FoxPro ODBC-driveren understøtter ikke fjernvisninger til andre ODBC-datakilder, men lokale visninger, der ikke har angivne parametre, er fuldt understøttet.
Hvis du indsætter, sletter eller opdaterer en tabel i Visual FoxPro ved hjælp af Visual FoxPro ODBC-driveren, sender systemet muligvis en meddelelse om, at der opstod en fejl ved udløsningsmekanismen. Kontroller, om udløsningsmekanismen indeholder kommandoer, der ikke understøttes.
INDEX ON understøttes ikke i denne version.
Hvis en tabel åbnes med udelt adgang, og den samme tabel igen åbnes af en anden bruger med SET EXCLUSIVE OFF, returneres en fejlmeddelelse om, at indstillingsværdien er blevet ændret, fra Visual FoxPro ODBC-driveren i stedet for en meddelelse om, at filen bruges af en anden bruger.
MSQuery returnerer en fejlmeddelelse om, at filen ikke kan åbnes, når der oprettes en tabel med et feltnavn, der begynder med et tal. Feltnavnet "1995 Salg" er f.eks. ikke tilladt. Visual FoxPro tillader ikke oprettelse af feltnavne, der begynder med et tal, men det gør MSQuery.
I VFP ODBC-driveren er den absolutte standardværdi for en tom værdi for dato 0 (off). Driveren håndterer eventuelle ugyldige datoer ved at konvertere værdien til den tomme værdi for dato " / / ". ODBC-klienter kan fortolke VFP ODBC-driverens tomme værdi for dato på forskellige måder. Du bør kontrollere den måde, det anvendte program håndterer denne værdi på, så du kan fortolke og bruge dataene på en effektiv måde.
VFP ODBC-driveren understøtter ikke kolonnenavne, der er længere end 10 tegn, eller kolonnenavne, der indeholder mellemrum, medmindre tabellen er indeholdt i en databasemappe (.dbc).
Du kan ikke frit vælge det indeks, der skal bruges med en bestemt tabel.
VFP ODBC-driveren placerer tabeller, der lige er oprettet, i standardmappen for det program, der bruger driveren, og ikke på den placering, som datakilden peger på. Angiv den ønskede placering i SQL-koden, hvis du vil være sikker på, at tabellerne placeres i en bestemt mappe. F.eks.: "CREATE TABLE C:\Minmappe\mintabel (col1 i, col2 c(10))".
Tilbage til Visual FoxPro ODBC-driver
Hvis du får problemer med at installere driveren, kan du følge nedenstående forslag, før du prøver at installere driveren igen.
Hvis der stadig er problemer:
Brug fanen Sporing i Microsoft ODBC-datakildeadministrator til at finde årsagen til problemerne. Før du åbner ODBC-datakildeadministrator i Windows 2000, skal du åbne Windows Kontrolpanel, dobbeltklikke på ikonet Administration og derefter dobbeltklikke på ikonet Datakilder (ODBC). I tidligere versioner af Windows skal du åbne Kontrolpanel og dobbeltklikke på 32-bit ODBC eller ODBC for at åbne dialogboksen ODBC-datakildeadministrator.
Når du nu kører koden, skrives alle C ODBC API-kald, deres inputparametre og deres output til logfilen. ODBC-logfilen er ASCII-tekst, som du kan få vist i alle standardredigeringsprogrammer, der understøtter ASCII-tekst, f.eks. Word, Notesblok eller WordPad. Det kan eventuelt blive nødvendigt at medtage sporingslogfilen i en fejlrapport. ODBC-sporingslogfilen kan være meget stor, så du skal kun kopiere de sidste fire eller fem funktionskald og indsætte dem i et separat dokument, før du sender fejlrapporten.
Tilbage til Visual FoxPro ODBC-driver
Tilbage til indholdsfortegnelsen for MDAC
Indholdet af dette dokument, herunder URL og andre henvisninger til Websteder, kan ændres uden forudgående varsel og er kun til orientering. Al risiko i forbindelse med brugen af og følger af brugen af dette dokument påhviler brugeren, og Microsoft Corporation påtager sig intet ansvar, hverken udtrykkeligt eller stiltiende. Firmaer, organisationer, produkter, personer og hændelser, der er brugt i dokumentets eksempler, er fiktive. Det har ikke været hensigten at danne forbindelse til virkelige firmaer, organisationer, produkter, personer eller hændelser, hvilket heller ikke skal udledes heraf. Det påhviler brugeren at overholde alle gældende love i forbindelse med copyright. Ingen del af dette dokument må kopieres, lagres på eller indføres i et system til lagring og genfinding eller overføres i hvilken form, det måtte være (elektronisk, mekanisk, ved fotokopiering, optagelse eller på anden måde), eller til hvilket formål det måtte være, uden udtrykkelig skriftlig tilladelse fra Microsoft Corporation, uden at ophavsrettighederne begrænses.
Microsoft kan have patenter eller anmeldte patentansøgninger, varemærker, ophavsrettigheder (copyrights) eller andre immaterielle rettigheder, der dækker emner i dette dokument. Levering af dette dokument giver ikke licens til disse patenter, varemærker, ophavsrettigheder (copyrights) eller andre immaterielle rettigheder, bortset fra sådanne udtrykkeligt aftalte rettigheder, som findes i enhver skriftlig licensaftale fra Microsoft.
© 1991-2000 Microsoft Corporation. Alle rettigheder forbeholdes.
Microsoft, MS-DOS, Windows, Windows NT, ActiveX, Visual Studio, Visual C++, Visual FoxPro, og MSDN er enten registrerede varemærker eller varemærker tilhørende Microsoft Corporation i USA og/eller andre lande.
Navne på eksisterende firmaer og produkter, der er nævnt heri, kan være varemærker tilhørende deres respektive ejere.