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.
Uygunluk
Tanıtılan Sürüm: ODBC 3.0 Standartlarına Uyum: ISO 92
Summary
SQLGetEnvAttr , bir ortam özniteliğinin mevcut ayarını döndürür.
Syntax
SQLRETURN SQLGetEnvAttr(
SQLHENV EnvironmentHandle,
SQLINTEGER Attribute,
SQLPOINTER ValuePtr,
SQLINTEGER BufferLength,
SQLINTEGER * StringLengthPtr);
Arguments
EnvironmentHandle
[Giriş] Ortam kontrolü.
Öznitelik
[Giriş] Özniteliği almak için alınıyor.
Valueptr
[Çıkış] Attribute tarafından belirtilen özelliğin mevcut değerini döndürmek için bir tampon işareti.
ValuePtr NULL ise, StringLengthPtr yine de ValuePtr tarafından işaret edilen tamponda döndürülebilecek toplam bayt sayısını (karakter verisi için null-sonlandırma karakteri hariç) döndürecektir.
BufferLength
[Giriş] Eğer ValuePtr bir karakter dizisine işaret ediyorsa, bu argüman *ValuePtr uzunluğu olmalıdır. Eğer *ValuePtr bir tam sayıysa, BufferLength göz ardı edilir. Eğer *ValuePtr bir Unicode dizisi ise ( SQLGetEnvAttrW çağrıldığında), BufferLength argümanı çift sayı olmalıdır. Eğer öznitelik değeri bir karakter dizisi değilse, BufferLength kullanılmaz.
StringLengthPtr
[Çıkış] * ValuePtr'de döndürülebilecek toplam bayt sayısını (null-terminasyon karakteri hariç) döndürmek için bir tampon işaretçisi. Eğer öznitelik değeri bir karakter dizisi ise ve döndürülebilecek bayt sayısı BufferLength'den büyük veya eşitse, *ValuePtr'deki veri BufferLength olarak null-termination karakterinin uzunluğu çıkarılır ve sürücü tarafından null-sonlandırılır.
İadeler
SQL_SUCCESS, SQL_SUCCESS_WITH_INFO, SQL_NO_DATA, SQL_ERROR ya da SQL_INVALID_HANDLE.
Diagnostics
SQLGetEnvAttr SQL_ERROR veya SQL_SUCCESS_WITH_INFO döndürdüğünde, ilişkili bir SQLSTATE değeri, SQL_HANDLE_ENV HandleType ve EnvironmentHandle ile SQLGetDiagRec çağrılarak elde edilebilir. Aşağıdaki tablo, SQLGetEnvAttr tarafından sıkça duygulanan SQLSTATE değerlerini listeler; "(DM)" gösterimi, Sürücü Yöneticisi tarafından döndürülen SQLSTATE açıklamalarından önce gelir. Aksi belirtilmediği sürece, her SQLSTATE değeriyle ilişkili dönüş kodu SQL_ERROR.
| SQLSTATE | Error | Description |
|---|---|---|
| 01000 | Genel uyarı | Sürücüye özgü bilgilendirici ileti. (İşlev SQL_SUCCESS_WITH_INFO döndürür.) |
| 01004 | Dize verileri, sağ kesilmiş | *ValuePtr içinde geri dönen veri, null-sonlandırma karakteri çıkarılmış BufferLength olarak kısaltıldı. Kısmamış dizi değerinin uzunluğu *StringLengthPtr'de döner. (İşlev SQL_SUCCESS_WITH_INFO döndürür.) |
| HY000 | Genel hata | Belirli bir SQLSTATE olmayan ve uygulamaya özgü SQLSTATE tanımlanmayan bir hata oluştu. *MessageText arabelleğinde SQLGetDiagRec tarafından döndürülen hata iletisi, hatayı ve nedenini açıklar. |
| HY001 | Bellek ayırma hatası | Sürücü, işlevin yürütülmesini veya tamamlanmasını desteklemek için gereken belleği ayıramadı. |
| HY010 | İşlev dizisi hatası | (DM) SQL_ATTR_ODBC_VERSION henüz SQLSetEnvAttr ile ayarlanmadı. SQLAllocHandleStd kullanıyorsanız SQL_ATTR_ODBC_VERSION açıkça ayarlamanıza gerek yok. |
| HY013 | Bellek yönetimi hatası | Büyük olasılıkla düşük bellek koşulları nedeniyle, temel alınan bellek nesnelerine erişilemediğinden işlev çağrısı işlenemedi. |
| HY092 | Geçersiz öznitelik/seçenek tanımlayıcısı | Argüman Attribute için belirtilen değer, sürücünün desteklediği ODBC sürümü için geçerli değildi. |
| HY117 | Bilinmeyen işlem durumu nedeniyle bağlantı askıya alındı. Yalnızca bağlantıyı kesme ve salt okunur işlevlere izin verilir. | (DM) Askıya alınma durumu hakkında daha fazla bilgi için bkz. SQLEndTran İşlevi. |
| HYC00 | İsteğe bağlı özellik uygulanmadı | Argüman Attribute için belirtilen değer, sürücünün desteklediği ODBC sürümü için geçerli bir ODBC ortam özniteliğiydi ancak sürücü tarafından desteklenmiyordu. |
| IM001 | Sürücü bu işlevi desteklemiyor | (DM) EnvironmentHandle'a karşılık gelen sürücü bu fonksiyonu desteklemez. |
Comments
Öznitelikler listesi için SQLSetEnvAttr adresine bakınız. Sürücüye özgü ortam özellikleri yoktur. Attribute bir diziyi döndüren bir öznitelik belirtirse, ValuePtr diziyi döndürmek için bir tampon işareti olmalıdır. Dizinin maksimum uzunluğu, null-terminasyon baytı dahil, BufferLength baytları olacaktır.
SQLGetEnvAttr , bir ortam tutamacının tahsisi ile serbest bırakılması arasında herhangi bir zamanda çağrılabilir. Uygulama tarafından çevre için başarıyla belirlenen tüm ortam özellikleri, SQLFreeHandleHandleHandle üzerinde EnvironmentHandle ile çağrılana kadar SQL_HANDLE_ENV HandleType ile devam eder. ODBC 3*.x*'de birden fazla ortam tutamacı aynı anda tahsis edilebilir. Bir ortamdaki bir ortam özniteliği, başka bir ortam tahsis edildiğinde etkilenmez.
Note
SQL_ATTR_OUTPUT_NTS ortam özniteliği, standartlara uygun uygulamalar tarafından desteklenir. SQLGetEnvAttr çağrıldığında, ODBC 3*.x* Sürücü Yöneticisi her zaman bu öznitelik için SQL_TRUE döndürür. SQL_ATTR_OUTPUT_NTS yalnızca SQLSetEnvAttr çağrısıyla SQL_TRUE olarak ayarlanabilir.
İlgili Fonksiyonlar
| Hakkında bilgi için | Bkz: |
|---|---|
| Bağlantı özniteliğinin ayarını döndürme | SQLGetConnectAttr İşlevi |
| Deyim özniteliğinin ayarını döndürme | SQLGetStmtAttr İşlevi |
| Bağlantı özelliği ayarı | SQLSetConnectAttr İşlevi |
| Bir ortam özniteliği ayarlama | SQLSetEnvAttr Function |
| Deyim özniteliğini ayarlama | SQLSetStmtAttr İşlevi |