Vigtige oplysninger om Microsoft Data Access Components version 2.5 Service Pack 1

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.

Emner i Hjælp

Tekniske problemer, kendte fejl og begrænsninger

Tekniske problemer, kendte fejl og begrænsninger

MDAC

MDAC-fillisten findes i udgivelsesfortegnelsen over MDAC

Du kan se den komplette liste over MDAC-filer i udgivelsesfortegnelsen, der findes på http://www.microsoft.com/data/download.htm.

Sådan installeres MDAC 2.5 SDK fra SDK-platformen

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.

HTML Hjælp-filer kræver en opdateret version af Hjælp-fremviseren på Windows NT 4.0.

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.

MDAC-afhængigheder

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:

Fejl i forbindelse med SQL Server

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:

Tilbage til indholdsfortegnelsen for MDAC


ADO/RDS

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

Tekniske problemer

Microsoft Internet Explorer Version 5.0 og XML

Du skal bruge Microsoft® Internet Explorer 5.0, for at du kan åbne et Recordset-objekt fra en XML-fil.

Ændringer i ADO 2.5-samlingen Fields efter Windows 2000 Beta 2

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.

Kendte fejl og begrænsninger

Client Cursor Engine og OLE DB 2.5-brugergrænseflader

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.

Egenskabsværdien Extended Properties i Microsoft Data Shaping Service og Remoting Provider

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.

Åbning af et Record-objekt fra en URL

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"

Blokerende handlinger

Hvis du angiver adAsyncFetchNonBlocking som en indstilling, vil metoden Open ikke fungere asynkront, men vil snarere blokere, indtil handlingen er fuldført.

Visse tegnsæt håndteres ikke korrekt af Stream-objektet

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.

Ny fejl ved oprettelse af forbindelse til .udl-filer, der ikke eksisterer.

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.

Når du åbner og lukker en post, oprettes en tom fil

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.

Fejl i forbindelse med OLE DB-provider til ODBC

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


ADOX

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

Tekniske problemer

Påkrævede/Valgfrie egenskaber i tabeller, indeks og kolonner

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.

Brug af ADOX med Microsoft OLE DB-providere

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.

  1. Microsoft OLE DB Provider til SQL Server Alle ADOX-objekter, -samlinger, -egenskaber og -metoder understøttes med undtagelse af dem, der er anført herunder:
  2. Microsoft OLE DB Provider til ODBC Alle ADOX-objekter, -samlinger, -egenskaber og -metoder understøttes med undtagelse af dem, der er anført herunder:
  3. Microsoft OLE DB Provider til Oracle Alle ADOX-objekter, -samlinger, -egenskaber og -metoder understøttes med undtagelse af dem, der er anført herunder:

Kendte fejl og begrænsninger

Der findes ingen kendte fejl eller begrænsninger på nuværende tidspunkt.

Tilbage til indholdsfortegnelsen for MDAC


ADO MD

Herefter følger vigtige eller yderligere oplysninger, der supplerer dokumentationen til Microsoft ADO MD.

Tekniske problemer

Der findes ingen tekniske problemer på nuværende tidspunkt.

Kendte fejl og begrænsninger

Der findes ingen kendte fejl eller begrænsninger på nuværende tidspunkt.

Tilbage til indholdsfortegnelsen for MDAC


JRO

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

Tekniske problemer

Der findes ingen tekniske problemer på nuværende tidspunkt.

Kendte fejl og begrænsninger

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


Microsoft-dataforbindelses-API

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

Tekniske problemer

Der findes ingen tekniske problemer på nuværende tidspunkt.

Kendte fejl og begrænsninger

Kun én instans af PromptDataSource er tilladt

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.

Oprettelse af fjern- eller out-of-process-providere understøttes ikke

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 Shared Exclusive konverteres til Share Deny Read og Share Deny Write

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


OLE DB

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

Tekniske problemer

Visual C++-krav til Alpha

For at køre OLE DB 2.0 på Alpha kræves Visual C++ 5.0 Service Pack 3 eller nyere.

Kendte fejl og begrænsninger

Der findes ingen kendte fejl eller begrænsninger på nuværende tidspunkt.

Tilbage til indholdsfortegnelsen for MDAC


OLE DB-servicekomponenter

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

Tekniske problemer

Sessionsgruppering bør ikke bruges med SSPROP_ENABLEFASTLOAD

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.

Kendte fejl og begrænsninger

Der findes ingen kendte fejl eller begrænsninger på nuværende tidspunkt.

Tilbage til indholdsfortegnelsen for MDAC


OLE DB til OLAP (Online Analytical Processing)

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

Tekniske problemer

Der findes ingen tekniske problemer på nuværende tidspunkt.

Kendte fejl og begrænsninger

Der findes ingen kendte fejl eller begrænsninger på nuværende tidspunkt.

Tilbage til indholdsfortegnelsen for MDAC


OLE DB Provider til ODBC

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

Tekniske problemer

Der findes ingen tekniske problemer på nuværende tidspunkt.

Kendte fejl og begrænsninger

dwFlags på IAccessor::CreateAccessor

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.

Serverindstillingerne nulstilles, når servicekomponenter aktiveres

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 kræves gruppering af forbindelser til oprettelse af nye forbindelser i en distribueret transaktion

Der kan ikke oprettes en ny forbindelse inde i en distribueret transaktion, medmindre ODBC-gruppering af forbindelser bruges. ODBC vil tilmelde forbindelsen i transaktionen.

Tilslutningsattributter nulstilles ikke, hvis forbindelsen ødelægges eller returneres til en gruppe

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.

Batchopdateringer og flere resultater returnerer kun ét resultatsæt

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.

Ved batchopdateringer går oplysninger om konflikt tabt, hvis mere end én række er i konflikt

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


OLE DB Provider til Oracle

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

Tekniske problemer

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.

Systemer med Windows 2000

  1. Kør RegEdit.
  2. Rediger OracleOciLib, og indstil den til Oci.dll. (standard er Ociw32.dll.) under registreringsnøglen .

Bemærk!   Denne nøgle tilføjes automatisk af installationsprogrammet.

På systemer med Windows NT 4 eller Windows 9x

  1. Kør RegEdit.
  2. Rediger OracleOciLib, og indstil den til Oci.dll. (standard er Ociw32.dll.) under RegKey HKEY_LOKAL_COMPUTER\SOFTWARE\Microsoft\Transaktionsserver\Lokal computer\Denne computer.

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.

Kendte fejl og begrænsninger

dwFlags på IAccessor::CreateAccessor

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.

Fejl ved brug af Oracle 7.x-servere

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.

Påkrævede transaktioner til Select-sætninger med Oracle 8.x-databaser

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).

Oracle Server konverterer tomme strenge til Null-værdier

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


OLE DB Provider til SQL Server

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

Tekniske problemer

Der findes ingen kendte tekniske problemer på nuværende tidspunkt.

Kendte fejl og begrænsninger

Serverindstillingerne nulstilles, når servicekomponenter aktiveres

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


OLE DB Provider til Microsoft Jet

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

Tekniske problemer

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.

Kendte fejl og begrænsninger

Installation af Jet 4.0 Provider forhindrer brug af Jet 3.51 Provider

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


Microsoft Data Shaping Service til OLE DB

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

Tekniske problemer

Der findes ingen tekniske problemer på nuværende tidspunkt.

Kendte fejl og begrænsninger

Ikke i dokumentationen: Datatyper, som understøttes af Microsoft Data Shaping Service

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


ODBC (Open Database Connectivity)

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

Tekniske problemer

32-bit ODBC-klienter og -drivere anbefales

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.

Transaktioner med Microsoft Transaction Server

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.

Automatisk transaktionstilmelding kræver gruppering af forbindelser

ODBC kan ikke køre med automatisk transaktionstilmelding, uden at gruppering af forbindelser er aktiveret.

Kendte fejl og begrænsninger

Låste systemer forhindrer oprettelse af ODBC DSN

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.

Dobbelte driverposter

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


ODBC-driver til Oracle

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

Tekniske problemer

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.

Systemer med Windows 2000

  1. Kør RegEdit.
  2. Rediger OracleOciLib, og indstil den til Oci.dll. (standard er Ociw32.dll.) under registreringsnøglen .

Bemærk!   Denne nøgle tilføjes automatisk af installationsprogrammet.

På systemer med Windows NT 4 eller Windows 9x

  1. Kør RegEdit.
  2. Rediger OracleOciLib, og indstil den til Oci.dll. (standard er Ociw32.dll.) under RegKey HKEY_LOKAL_COMPUTER\SOFTWARE\Microsoft\Transaktionsserver\Lokal computer\Denne computer.

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.

Kendte fejl, begrænsninger og problemløsninger

Driver returnerer fejlmeddelelser eller meddelelser om afkortede data

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.

Adgangsovertrædelse under opdatering af en statisk tabel

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 3.0 og senere datatyper understøttes ikke

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.

Client Cursor Engine kan ikke opdatere databaser via OLE DB Provider til ODBC med ODBC-driver til Oracle

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


ODBC-datakildeadministrator

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

Tekniske problemer

Der findes ingen tekniske problemer på nuværende tidspunkt.

Kendte fejl og begrænsninger

Knappen Start Visual Studio Analyzer

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.

Online Hjælp

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


ODBC-desktopdatabasedrivere

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

Tekniske problemer

CREATE_DB henviser til Jet 4.0-databaser

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.

Parametre

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.

Kendte fejl og begrænsninger

Der findes ingen kendte fejl eller begrænsninger på nuværende tidspunkt.

Tilbage til indholdsfortegnelsen for MDAC


Klientdataadgangskomponenter til SQL Server

Introduktion

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.

Fælles problemer

Problemer, der er fælles for både OLE DB Provider til SQL Server og SQL Server ODBC-driver, er beskrevet i dette afsnit.

Installation af Instcat.sql på serveren

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

sa_password
er systemadministratorens adgangskode.
server_name
er navnet på den server, som SQL Server ligger på.
location
er hele stien til placeringen af Instcat.Sql.

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

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

SQL Server ODBC-driver

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.

Oversigt

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.

Dokumentationskilder vedrørende brug af ODBC med SQL Server

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.

Brug af driveren i et udviklingsmiljø

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.

Kompatibilitetsproblemer

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

Netværksbibliotek til klient

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.

Klientnetværksprogram

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


Visual FoxPro ODBC-driver

Herefter beskrives brugen af Microsoft Visual FoxPro ODBC-driver version 6.0a.

Installationsbemærkninger

Systemkrav

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.

Nyheder i denne 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:

Installation af driveren

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.

Tilføjelse af en datakilde

Efter installationen skal du definere en datakilde:

  1. Dobbeltklik på ikonet Administrationi Windows Kontrolpanel.
  2. Dobbeltklik på ikonet Datakilder (ODBC).
  3. Klik på Tilføj.
  4. Marker Microsoft Visual FoxPro-driver.
  5. Angiv et datakildenavn i dialogboksen Installation af ODBC Visual FoxPro.
  6. Vælg enten mappen Visual FoxPro-database (.DBC) eller Fri tabel.
  7. Angiv navnet på databasen eller stien til den frie tabel, eller klik på Gennemse.
  8. Klik på OK, og klik derefter på Luk.

Hjælp-filer

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:

Navnekonventioner

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

Understøttede områder

I følgende afsnit beskrives de områder, der specielt understøttes af Visual FoxPro ODBC-driveren:

Understøttede sprog

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.

ODBC 3.51-kompatibilitet

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.

Understøttelse af referentiel integritet

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.

Understøttelse af tråde

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.

Understøttede versioner af dBASE® IV-tabeller

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.

International produktsupport

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

Ikke-understøttede områder

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.

Kendte problemer

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.

Problemer i forbindelse med en tom værdi for dato

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.

Forskelle mellem den forrige FoxPro ISAM-driver og Visual FoxPro ODBC-driveren

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

Fejlfinding

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.

  1. Genstart computeren. I Windows 95 skal du f.eks. starte computeren i fejlsikret tilstand.
  2. Luk alle andre programmer, der kører, også antivirusprogrammer, tredjeparts shell eller værktøjslinjer, f.eks. Microsoft Office Programlinje.
  3. Hvis computeren har afspejling af skærm eller systemhukommelsen, skal disse indstillinger deaktiveres, før driveren installeres igen.
  4. Kontroller, at .exe-filen ikke er ødelagt.

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.

Bøger

Tilbage til Visual FoxPro ODBC-driver

Tilbage til indholdsfortegnelsen for MDAC


Copyright

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.

Tilbage til indholdsfortegnelsen for MDAC