Sdílet prostřednictvím


Výchozí datové typy PHP

Stáhnout ovladač PHP

Při načítání dat ze serveru převede ovladače Microsoftu pro PHP pro SQL Server data na výchozí datový typ PHP, pokud uživatel nezadá žádný datový typ PHP.

Když se data vrátí pomocí ovladače PDO_SQLSRV, datový typ bude buď int, nebo řetězec.

Zbývající část tohoto tématu popisuje výchozí datové typy pomocí ovladače SQLSRV.

Následující tabulka uvádí datový typ SQL Serveru (datový typ načtený ze serveru), výchozí datový typ PHP (datový typ, na který se data převedou) a výchozí kódování datových proudů a řetězců. Podrobnosti o tom, jak určit datové typy při načítání dat ze serveru, naleznete v tématu Postupy: Určení datových typů PHP.

Typ SQL Serveru Výchozí typ PHP Výchozí kódování
bigint String 8bitový znak1
binární Stream2 Binární3
bit Integer 8bitový znak1
char String 8bitový znak1
datum4 Datum a čas Není relevantní
datetime4 Datum a čas Není relevantní
datetime24 Datum a čas Není relevantní
datetimeoffset4 Datum a čas Není relevantní
desítkové číslo String 8bitový znak1
float Plovat 8bitový znak1
geography STREAM Binární3
geometrie STREAM Binární3
obrázek5 Stream2 Binární3
int Integer 8bitový znak1
peníze String 8bitový znak1
nchar String 8bitový znak1
číselný String 8bitový znak1
nvarchar String 8bitový znak1
nvarchar(MAX) Stream2 8bitový znak1
ntext6 Stream2 8bitový znak1
real Plovat 8bitový znak1
smalldatetime Datum a čas 8bitový znak1
smallint Integer 8bitový znak1
drobné peníze String 8bitový znak1
sql_variant7 String 8bitový znak1
text8 Stream2 8bitový znak1
čas4 Datum a čas Není relevantní
časové razítko String 8bitový znak1
tinyint Integer 8bitový znak1
UDT Stream2 Binární3
uniqueidentifier Řetězec9 8bitový znak1
varbinary Stream2 Binární3
varbinary(MAX) Stream2 Binární3
Varchar String 8bitový znak1
varchar(MAX) Stream2 8bitový znak1
xml Stream2 8bitový znak1
  1. Data jsou vrácena ve formátu 8bitových znaků podle znakové stránky místního nastavení systému Windows nastaveného v systému. Všechny vícebajtové znaky nebo znaky, které nelze namapovat na tuto znakovou stránku, se nahradí jednobajtovým otazníkem (?).

  2. Pokud sqlsrv_fetch_array nebo sqlsrv_fetch_object slouží k načtení dat, která mají výchozí typ PHP streamu, vrátí se data jako řetězec se stejným kódováním jako stream. Pokud je například binární typ SYSTÉMU SQL Server načten pomocí sqlsrv_fetch_array, je výchozím návratovým typem binární řetězec.

  3. Data se vrátí jako nezpracovaný bajtový stream ze serveru bez nutnosti kódování nebo překladu.

  4. Typy dat a času lze načíst jako řetězce. Další informace naleznete v tématu Postupy: Načtení typu data a času jako řetězce pomocí ovladače SQLSRV.

  5. Toto je starší datový typ, který se mapuje na datový typ varbinary(max).

  6. Jedná se o starší typ, který se mapuje na typ nvarchar(max).

  7. sql_variant se nepodporuje v obousměrných nebo výstupních parametrech.

  8. Jedná se o starší typ, který se mapuje na typ varchar(max).

  9. UNIQUEIDENTIFIERs jsou identifikátory GUID reprezentované následujícím regulárním výrazem:

    [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}

Další nové datové typy a funkce SQL Serveru 2008

Datové typy, které jsou v SYSTÉMU SQL Server 2008 nové a existují mimo sloupce (například parametry s hodnotami tabulky), nejsou podporovány v ovladačích Microsoft pro PHP pro SQL Server. Následující tabulka shrnuje podporu PHP pro nové funkce SQL Serveru 2008.

Vlastnost Podpora PHP
Parametr s tabulkovou hodnotou Ne
Řídké sloupce Částečný
Komprese nulových bitů Ano
Velké uživatelem definované typy CLR (UDT) Ano
Název hlavní služby Ne
MERGE Ano
FILESTREAM Částečný

Podpora částečného typu znamená, že se nemůžete programově dotazovat na typ sloupce.

Viz také

Konstanty (ovladače Microsoftu pro PHP pro SQL Server)

Převod datových typů

Typy PHP

Datové typy (Transact-SQL)

sqlsrv_field_metadata