Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Bu konuda, SQL Server için PHP için Microsoft Sürücüleri tarafından tanımlanan sabitler açıklanmaktadır.
PDO_SQLSRV Sürücü Sabitleri
PDO web sitesinde listelenen sabitler, SQL Server için PHP için Microsoft Sürücüleri'nde geçerlidir.
Aşağıda, PDO_SQLSRV sürücüsündeki Microsoft'a özgü sabitler açıklanmaktadır.
İşlem Yalıtım Düzeyi Sabitleri
PDO::__construct ile kullanılan TransactionIsolation anahtarı aşağıdaki sabitlerden birini kabul eder:
PDO::SQLSRV_TXN_READ_UNCOMMITTED
PDO::SQLSRV_TXN_READ_COMMITTED
PDO::SQLSRV_TXN_REPEATABLE_READ
PDO::SQLSRV_TXN_SNAPSHOT
PDO::SQLSRV_TXN_SERIALIZABLE
TransactionIsolation anahtarı hakkında daha fazla bilgi için bkz. Bağlantı Seçenekleri.
Kodlama Sabitleri
PDO::SQLSRV_ATTR_ENCODING özniteliği PDOStatement::setAttribute, PDO::setAttribute, PDO::prepare, PDOStatement::bindColumn ve PDOStatement::bindParam fonksiyonlarına geçirilebilir.
PDO::SQLSRV_ATTR_ENCODING'e geçirilebilecek kullanılabilir değerler şunlardır:
| sürücü sabiti PDO_SQLSRV | Description |
|---|---|
| PDO::SQLSRV_ENCODING_BINARY | Veriler, kodlama veya çeviri gerçekleştirmeden sunucudan gelen ham bir bayt akışıdır. PDO::setAttribute için geçerli değil. |
| PDO::SQLSRV_ENCODING_SYSTEM | Veriler, sistemde ayarlanan Windows yerel ayarının kod sayfasında belirtildiği gibi 8 bit karakterdir. Bu kod sayfasıyla eşleşmeyen çok baytlı karakterler veya karakterler tek baytlık soru işareti (?) karakteriyle değiştirilir. |
| PDO::SQLSRV_ENCODING_UTF8 | Veriler UTF-8 kodlamasındadır. Bu varsayılan kodlamadır. |
| PDO::SQLSRV_ENCODING_DEFAULT | Bağlantı sırasında belirtilirse PDO::SQLSRV_ENCODING_SYSTEM kullanır. Hazırlama ifadesinde belirtilmişse bağlantının kodlamasını kullanın. |
Sorgu Zaman Aşımı
PDO::SQLSRV_ATTR_QUERY_TIMEOUT özniteliği, zaman aşımı süresini saniye cinsinden temsil eden negatif olmayan herhangi bir tamsayıdır. Sıfır (0) varsayılandır ve zaman aşımı olmadığı anlamına gelir.
PDOStatement::setAttribute, PDO::setAttribute ve PDO::prepare ile PDO::SQLSRV_ATTR_QUERY_TIMEOUT özniteliğini belirleyebilirsiniz.
Doğrudan veya Hazırlanmış Yürütme
PDO::SQLSRV_ATTR_DIRECT_QUERY özniteliğiyle doğrudan sorgu yürütmeyi veya hazırlanmış deyim yürütmeyi seçebilirsiniz. PDO::SQLSRV_ATTR_DIRECT_QUERY PDO::prepare veya PDO::setAttribute ile ayarlanabilir. PDO::SQLSRV_ATTR_DIRECT_QUERY hakkında daha fazla bilgi için bkz. PDO_SQLSRV Sürücüsünde Doğrudan Deyim Yürütme ve Hazırlanmış Deyim Yürütme.
Sayısal Getirmeleri İşleme
PDO::SQLSRV_ATTR_FETCHES_NUMERIC_TYPE özniteliği, sayısal SQL türlerine (bit, tamsayı, smallint, tinyint, float ve real) sahip sütunlardan sayısal getirme işlemlerini işlemek için kullanılabilir. PDO::SQLSRV_ATTR_FETCHES_NUMERIC_TYPE true olarak ayarlandığında, bir tamsayı sütunundan elde edilen sonuçlar int olarak, SQL kayan ve reals ise kayan değer olarak gösterilir. Bu öznitelik PDOStatement::setAttribute ile ayarlanabilir.
Varsayılan ondalık biçimlendirme davranışını PDO::SQLSRV_ATTR_FORMAT_DECIMALS ve PDO::SQLSRV_ATTR_DECIMAL_PLACES öznitelikleriyle değiştirebilirsiniz. Çıkış parametrelerinin biçimlendirme için desteklenmemesi dışında, bu özniteliklerin davranışı SQLSRV tarafındaki (FormatDecimals ve DecimalPlaces) ilgili seçeneklerle aynıdır. Bu öznitelikler PDO::setAttribute veya PDOStatement::setAttribute ile bağlantı veya deyim düzeyinde ayarlanabilir, ancak herhangi bir deyim özniteliği ilgili bağlantı özniteliğini geçersiz kılar. Diğer ayrıntılar için bkz . Ondalık Dizeleri ve Para Değerlerini Biçimlendirme (PDO_SQLSRV Sürücüsü).
Tarih ve Saat Getirme işlemlerini işleme
PDO::SQLSRV_ATTR_FETCHES_DATETIME_TYPE, tarih ve saat türlerinin PHP DateTime nesneleri olarak alınıp alınmayacağını belirtir. False olarak bırakılırsa, varsayılan davranış bunları dize olarak döndürmektir. Bu öznitelik PDO::setAttribute veya PDOStatement::setAttribute ile bağlantı veya deyim düzeyinde ayarlanabilir, ancak deyim özniteliği ilgili bağlantı özniteliğini geçersiz kılar. Daha fazla bilgi için PDO_SQLSRV Sürücüsünü Kullanarak PHP DateTime Nesneleri olarak Tarih ve Saat Türlerini Nasıl Alabilirsiniz'e bakın.
SQLSRV Sürücü Sabitleri
Aşağıdaki bölümlerde SQLSRV sürücüsü tarafından kullanılan sabitler listelanmıştır.
ERR Sabitleri
Aşağıdaki tabloda, sqlsrv_errors hata, uyarı veya her ikisini birden döndürdüğünü belirtmek için kullanılan sabitler listelenir.
| Değer | Description |
|---|---|
| SQLSRV_ERR_ALL | Son sqlsrv işlev çağrısında oluşturulan hatalar ve uyarılar döndürülür. Bu varsayılan değerdir. |
| SQLSRV_ERR_ERRORS | Son sqlsrv işlev çağrısında oluşturulan hatalar döndürülür. |
| SQLSRV_ERR_WARNINGS | Son sqlsrv işlev çağrısında oluşturulan uyarılar döndürülür. |
FETCH Sabitleri
Aşağıdaki tabloda, sqlsrv_fetch_array tarafından döndürülen dizi türünü belirtmek için kullanılan sabitler listelenir.
| SQLSRV sabiti | Description |
|---|---|
| SQLSRV_FETCH_ASSOC | sqlsrv_fetch_array , sonraki veri satırını ilişkilendirici bir dizi olarak döndürür. |
| SQLSRV_FETCH_BOTH | sqlsrv_fetch_array , bir sonraki veri satırını hem sayısal hem de ilişkilendirici anahtarlara sahip bir dizi olarak döndürür. Bu varsayılan değerdir. |
| SQLSRV_FETCH_NUMERIC | sqlsrv_fetch_array , sayısal olarak dizinlenmiş bir dizi olarak sonraki veri satırını döndürür. |
Günlük Sabitleri
Bu bölümde, sqlsrv_configure ile günlük ayarlarını değiştirmek için kullanılan sabitler listelenir. Etkinliklerin kaydedilmesi hakkında daha fazla bilgi için bkz Günlük Etkinliği.
Aşağıdaki tabloda , LogSubsystems ayarı için değer olarak kullanılabilecek sabitler listelenir:
| SQLSRV sabiti (parantez içinde tamsayı eşdeğeri) | Description |
|---|---|
| SQLSRV_LOG_SYSTEM_ALL (-1) | Tüm alt sistemlerin günlüğe kaydedilmesini etkinleştirir. |
| SQLSRV_LOG_SYSTEM_CONN (2) | Bağlantı etkinliğinin günlüğe kaydedilmesini açar. |
| SQLSRV_LOG_SYSTEM_INIT (1) | Başlatma etkinliğinin günlüğe kaydedilmesini açar. |
| SQLSRV_LOG_SYSTEM_OFF (0) | Log kaydını kapatır. |
| SQLSRV_LOG_SYSTEM_STMT (4) | Deyim etkinliğinin günlüğe kaydedilmesini açar. |
| SQLSRV_LOG_SYSTEM_UTIL (8) | Hata işlevleri etkinliğinin (örneğin handle_error ve handle_warning) günlüğe kaydedilmesini etkinleştirir. |
Aşağıdaki tabloda , LogSeverity ayarı için değer olarak kullanılabilecek sabitler listelenir:
| SQLSRV sabiti (parantez içinde tamsayı eşdeğeri) | Description |
|---|---|
| SQLSRV_LOG_SEVERITY_ALL (-1) | Hataların, uyarıların ve bildirimlerin günlüğe kaydedileceğini belirtir. |
| SQLSRV_LOG_SEVERITY_ERROR (1) | Hataların günlüğe kaydedileceğini belirtir. |
| SQLSRV_LOG_SEVERITY_NOTICE (4) | Bildirimlerin günlüğe kaydedileceğini belirtir. |
| SQLSRV_LOG_SEVERITY_WARNING (2) | Uyarıların günlüğe kaydedileceğini belirtir. |
Null Değer Alabilir Sabitler
Aşağıdaki tabloda, bir sütunun null atanabilir olup olmadığını veya bu bilgilerin kullanılabilir olup olmadığını belirlemek için kullanabileceğiniz sabitler listelenir. Sütunun boş değer atanabilir durumunu belirlemek için sqlsrv_field_metadata tarafından döndürülen Nullable anahtarının değerini karşılaştırabilirsiniz.
| SQLSRV sabiti (parantez içinde tamsayı eşdeğeri) | Description |
|---|---|
| SQLSRV_NULLABLE_YES (0) | Sütun null atanabilir. |
| SQLSRV_NULLABLE_NO (1) | Sütun null değer atanamaz. |
| SQLSRV_NULLABLE_UNKNOWN (2) | Sütunun nullable olup olmadığı bilinmiyor. |
PARAM Sabitleri
Aşağıdaki liste, sqlsrv_query veyasqlsrv_prepare çağırdığınızda parametre yönünü belirtme sabitlerini içerir.
| SQLSRV sabiti | Description |
|---|---|
| SQLSRV_PARAM_IN | Giriş parametresini gösterir. |
| SQLSRV_PARAM_INOUT | Çift yönlü parametreyi gösterir. |
| SQLSRV_PARAM_OUT | Çıkış parametresini gösterir. |
PHPTYPE Sabitleri
Aşağıdaki tabloda PHP veri türlerini açıklamak için kullanılan sabitler listelenmiştir. PHP veri türleri hakkında bilgi için bkz. PHP Türleri.
| SQLSRV sabiti | PHP veri türü |
|---|---|
| SQLSRV_PHPTYPE_INT | Integer |
| SQLSRV_PHPTYPE_DATETIME | Tarih ve saat |
| SQLSRV_PHPTYPE_FLOAT | Yüzmek |
| SQLSRV_PHPTYPE_STREAM($encoding1) | Akarsu |
| SQLSRV_PHPTYPE_STRING($encoding1) | String |
- SQLSRV_PHPTYPE_STREAM ve SQLSRV_PHPTYPE_STRING akış kodlamasını belirten bir parametreyi kabul eder. Aşağıdaki tabloda kabul edilebilir parametreler olan SQLSRV sabitleri ve ilgili kodlamanın açıklaması yer alır.
| SQLSRV sabiti | Description |
|---|---|
| SQLSRV_ENC_BINARY | Veriler, kodlama veya çeviri gerçekleştirmeden sunucudan ham bayt akışı olarak döndürülür. |
| SQLSRV_ENC_CHAR | Veriler, sistemde ayarlanan Windows yerel ayarının kod sayfasında belirtildiği gibi 8 bit karakter olarak döndürülür. Bu kod sayfasıyla eşleşmeyen çok baytlı karakterler veya karakterler tek baytlık soru işareti (?) karakteriyle değiştirilir. Bu varsayılan kodlamadır. |
| "UTF-8" | Veriler UTF-8 kodlamasında döndürülür. Bu sabit, SQL Server için PHP için Microsoft Sürücüleri'nin 1.1 sürümüne eklendi. UTF-8 desteği hakkında daha fazla bilgi için bkz Nasıl Yapılır: Dahili UTF-8 Desteği Kullanarak UTF-8 Verilerini Gönderme ve Alma. |
Uyarı
SQLSRV_PHPTYPE_STREAM veya SQLSRV_PHPTYPE_STRING kullandığınızda kodlama belirtilmelidir. Parametre sağlanmazsa bir hata döndürülür.
Bu sabitler hakkında daha fazla bilgi için bkz . Nasıl yapılır: PHP Veri Türlerini Belirtme, Nasıl yapılır: SQLSRV Sürücüsünü Kullanarak Karakter Verilerini Akış Olarak Alma.
SQLTYPE Sabitleri
Aşağıdaki tabloda SQL Server veri türlerini açıklamak için kullanılan sabitler listelenmiştir. Bazı sabitler işleve benzerdir ve duyarlık, ölçek ve/veya uzunluğa karşılık gelen parametreleri alabilir. Parametreler bağlanırken işlev benzeri sabitler kullanılmalıdır. Tür karşılaştırmaları için standart (işlev benzeri olmayan) sabitler gereklidir. SQL Server veri türleri hakkında bilgi için bkz. Veri Türleri (Transact-SQL). Duyarlık, ölçek ve uzunluk hakkında bilgi için bkz . Duyarlık, Ölçek ve Uzunluk (Transact-SQL).
| SQLSRV sabiti | SQL Server veri türü |
|---|---|
| SQLSRV_SQLTYPE_BIGINT | bigint |
| SQLSRV_SQLTYPE_BINARY | ikili |
| SQLSRV_SQLTYPE_BIT | parça |
| SQLSRV_SQLTYPE_CHAR | char5 |
| SQLSRV_SQLTYPE_CHAR($charCount) | char |
| SQLSRV_SQLTYPE_DATE | tarih4 |
| SQLSRV_SQLTYPE_DATETIME | tarih/zaman |
| SQLSRV_SQLTYPE_DATETIME2 | datetime24 |
| SQLSRV_SQLTYPE_DATETIMEOFFSET | datetimeoffset4 |
| SQLSRV_SQLTYPE_DECIMAL | ondalık sayı5 |
| SQLSRV_SQLTYPE_DECIMAL($precision, $scale) | decimal |
| SQLSRV_SQLTYPE_FLOAT (SQL Sunucusu'nda kullanılan bir float veri türü) | yüzmek |
| SQLSRV_SQLTYPE_IMAGE | resim1 |
| SQLSRV_SQLTYPE_INT | int |
| SQLSRV_SQLTYPE_MONEY | para |
| SQLSRV_SQLTYPE_NCHAR | nchar5 |
| SQLSRV_SQLTYPE_NCHAR($charCount) | nchar (Unicode karakter tipi) |
| SQLSRV_SQLTYPE_NUMERIC | sayısal5 |
| SQLSRV_SQLTYPE_NUMERIC($precision, $scale) | sayısal |
| SQLSRV_SQLTYPE_NVARCHAR | nvarchar5 |
| SQLSRV_SQLTYPE_NVARCHAR($charCount) | nvarchar |
| SQLSRV_SQLTYPE_NVARCHAR('max') | nvarchar(MAX) |
| SQLSRV_SQLTYPE_NTEXT | ntext2 |
| SQLSRV_SQLTYPE_REAL | real |
| SQLSRV_SQLTYPE_SMALLDATETIME | smalldatetime |
| SQLSRV_SQLTYPE_SMALLINT | smallint |
| SQLSRV_SQLTYPE_SMALLMONEY | küçükpara |
| SQLSRV_SQLTYPE_TEXT | metin3 |
| SQLSRV_SQLTYPE_TIME | saat4 |
| SQLSRV_SQLTYPE_TIMESTAMP | Tarih damgası |
| SQLSRV_SQLTYPE_TINYINT | tinyint |
| SQLSRV_SQLTYPE_UNIQUEIDENTIFIER | uniqueidentifier |
| SQLSRV_SQLTYPE_UDT | UDT |
| SQLSRV_SQLTYPE_VARBINARY | varbinary5 |
| SQLSRV_SQLTYPE_VARBINARY($byteCount) | varbinary |
| SQLSRV_SQLTYPE_VARBINARY('max') | varbinary(MAX) |
| SQLSRV_SQLTYPE_VARCHAR | varchar5 |
| SQLSRV_SQLTYPE_VARCHAR($charCount) | Varchar Belediyesi |
| SQLSRV_SQLTYPE_VARCHAR('max') | varchar(MAX) |
| SQLSRV_SQLTYPE_XML | xml |
Bu, varbinary(max) türüne eşleyen eski bir türdür.
Bu, daha yeni nvarchar türüne bağlanan eski bir türdür.
Bu, daha güncel varchar türüne eşleyen eski bir türdür.
Bu tür için destek, SQL Server için PHP için Microsoft Sürücüleri'nin 1.1 sürümüne eklendi.
Bu sabitler tür karşılaştırma işlemlerinde kullanılmalıdır ve işlev benzeri sabitleri benzer söz dizimiyle değiştirmemelidir. Bağlama parametreleri için işlev benzeri sabitleri kullanmanız gerekir.
Aşağıdaki tabloda, parametreleri kabul eden SQLTYPE sabitleri ve parametre için izin verilen değer aralığı listelenir.
| SQLTYPE | Parametre | Parametre için izin verilebilen aralık |
|---|---|---|
| SQLSRV_SQLTYPE_CHAR, SQLSRV_SQLTYPE_VARCHAR |
Charcount | 1 - 8000 |
| SQLSRV_SQLTYPE_NCHAR, SQLSRV_SQLTYPE_NVARCHAR |
charCount | 1 - 4000 |
| SQLSRV_SQLTYPE_BINARY, SQLSRV_SQLTYPE_VARBINARY |
baytSayısı | 1 - 8000 |
| SQLSRV_SQLTYPE_DECIMAL, SQLSRV_SQLTYPE_NUMERIC |
kesinlik | 1 - 38 |
| SQLSRV_SQLTYPE_DECIMAL SQLSRV_SQLTYPE_NUMERIC |
scale | 1 - hassasiyet |
İşlem Yalıtım Düzeyi Sabitleri
sqlsrv_connect ile kullanılan TransactionIsolation anahtarı aşağıdaki sabitlerden birini kabul eder:
SQLSRV_TXN_READ_UNCOMMITTED
SQLSRV_TXN_READ_COMMITTED
SQLSRV_TXN_REPEATABLE_READ
SQLSRV_TXN_SNAPSHOT
SQLSRV_TXN_SERIALIZABLE
İmleç ve Kaydırma Sabitleri
Aşağıdaki sabitler, bir sonuç kümesinde kullanabileceğiniz imleç türünü belirtir:
SQLSRV_CURSOR_FORWARD
SQLSRV_CURSOR_STATIC
SQLSRV_CURSOR_DYNAMIC
SQLSRV_CURSOR_KEYSET
SQLSRV_CURSOR_CLIENT_BUFFERED
Aşağıdaki sabitler, sonuç kümesinde hangi satırın seçileceğini belirtir:
SQLSRV_SCROLL_NEXT
SQLSRV_SCROLL_PRIOR
SQLSRV_SCROLL_FIRST
SQLSRV_SCROLL_LAST
SQLSRV_SCROLL_ABSOLUTE
SQLSRV_SCROLL_RELATIVE
Bu sabitleri kullanma hakkında bilgi için bkz. İmleç Türü Belirtme ve Satırları Seçme.