Dela via


PHP-standarddatatyper

Ladda ned PHP-drivrutin

När du hämtar data från servern konverterar Microsoft Drivers för PHP för SQL Server data till en STANDARD-PHP-datatyp om ingen PHP-datatyp har angetts av användaren.

När data returneras med hjälp av drivrutinen PDO_SQLSRV är datatypen antingen int eller sträng.

Resten av det här avsnittet beskriver standarddatatyper med SQLSRV-drivrutinen.

I följande tabell visas SQL Server-datatypen (datatypen som hämtas från servern), PHP-standarddatatypen (datatypen som data konverteras till) och standardkodning för strömmar och strängar. Mer information om hur du anger datatyper när du hämtar data från servern finns i Så här anger du PHP-datatyper.

SQL Server-typ Php-standardtyp Standardkodning
Bigint String 8-bitars tecken1
binär Ström2 Binärt 3
lite grann Integer 8-bitars tecken1
röding String 8-bitars tecken1
datum4 Datum och tid Ej tillämpligt
datetime4 Datum och tid Ej tillämpligt
datetime24 Datum och tid Ej tillämpligt
datetimeoffset4 Datum och tid Ej tillämpligt
decimal String 8-bitars tecken1
flyta/sväva Flyta 8-bitars tecken1
geografi STREAM Binärt 3
geometri STREAM Binärt 3
bild5 Ström2 Binärt 3
int Integer 8-bitars tecken1
pengar String 8-bitars tecken1
nchar String 8-bitars tecken1
numerisk String 8-bitars tecken1
nvarchar String 8-bitars tecken1
nvarchar(MAX) Ström2 8-bitars tecken1
ntext6 Ström2 8-bitars tecken1
verklig / äkta Flyta 8-bitars tecken1
smalldatetime Datum och tid 8-bitars tecken1
smallint Integer 8-bitars tecken1
småpengar String 8-bitars tecken1
sql_variant7 String 8-bitars tecken1
text8 Ström2 8-bitars tecken1
tid4 Datum och tid Ej tillämpligt
tidsstämpel String 8-bitars tecken1
tinyint Integer 8-bitars tecken1
UDT Ström2 Binärt 3
unik identifierare Sträng9 8-bitars tecken1
varbinary Ström2 Binärt 3
varbinary(MAX) Ström2 Binärt 3
varchar String 8-bitars tecken1
varchar(MAX) Ström2 8-bitars tecken1
xml Ström2 8-bitars tecken1
  1. Data returneras i 8-bitars tecken enligt vad som anges på kodsidan för Windows-språkinställningen i systemet. Alla flerbytestecken eller tecken som inte mappas till den här kodsidan ersätts med ett frågetecken (?).

  2. Om sqlsrv_fetch_array eller sqlsrv_fetch_object används för att hämta data som har en PHP-standardtyp av Stream returneras data som en sträng med samma kodning som strömmen. Om till exempel en binär SQL Server-typ hämtas med hjälp av sqlsrv_fetch_array är standardreturtypen en binär sträng.

  3. Data returneras som en rå byteström från servern utan kodning eller översättning.

  4. Datum- och tidstyper kan hämtas som strängar. Mer information finns i How to: Retrieve Date and Time Type as Strings Using the SQLSRV Driver (Hämta datum- och tidstyp som strängar med SQLSRV-drivrutinen).

  5. Det här är en äldre typ som mappar till typen varbinary(max).

  6. Det här är en äldre typ som mappar till typen nvarchar(max).

  7. sql_variant stöds inte i dubbelriktade parametrar eller utdataparametrar.

  8. Det här är en äldre typ som mappar till typen varchar(max).

  9. UNIQUEIDENTIFIERs är GUID:er som representeras av följande reguljära uttryck:

    [0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-f]{4}-[0-9a-fA-f]{4}-[0-9a-fA-F]{12}

Andra nya SQL Server 2008-datatyper och funktioner

Datatyper som är nya i SQL Server 2008 och som finns utanför kolumner (till exempel tabellvärdesparametrar) stöds inte i Microsoft Drivers for PHP för SQL Server. I följande tabell sammanfattas PHP-stödet för nya SQL Server 2008-funktioner.

Funktion PHP-stöd
Tabellvärdesparameter Nej
Glesa kolumner Partial
Null-bitar-komprimering Yes
Stora användardefinierade CLR-typer (UDT:er) Yes
Tjänstens huvudnamn Nej
SAMMANFÖRA Yes
FILESTREAM Partial

Stöd för partiell typ innebär att du inte programmatiskt kan fråga efter typen av kolumn.

Se även

Konstanter (Microsoft-drivrutiner för PHP för SQL Server)

Konvertera datatyper

PHP-typer

Datatyper (Transact-SQL)

sqlsrv_field_metadata