Jegyzet
Az oldalhoz való hozzáférés engedélyezést igényel. Próbálhatod be jelentkezni vagy könyvtárat váltani.
Az oldalhoz való hozzáférés engedélyezést igényel. Megpróbálhatod a könyvtár váltását.
A katalógusfüggvények egyes argumentumai( például az SQLTables TableNameargumentuma) elfogadják a keresési mintákat. Ezek az argumentumok akkor fogadják el a keresési mintákat, ha a SQL_ATTR_METADATA_ID utasítás attribútuma SQL_FALSE; ezek olyan azonosító argumentumok, amelyek nem fogadnak el keresési mintát, ha ez az attribútum SQL_TRUE van beállítva.
A keresési minta karakterei a következők:
Aláhúzás (_), amely egyetlen karaktert jelöl.
Százalékjel (%), amely nulla vagy több karakterből álló sorozatot jelöl.
Egy menekülő karakter, amely illesztőprogram-specifikus, és arra szolgál, hogy aláhúzásjeleket, százalékjeleket és a menekülési karaktert literálként tartalmazza. Ha a feloldó karakter nem speciális karaktert előz meg, a feloldó karakternek nincs különleges jelentése. Ha a feloldó karakter egy speciális karaktert előz meg, akkor a speciális karaktert elkerüli. A "\a" karaktert például két karakter, "\" és "a" karakterként kezeli a rendszer, de a "\%" nem speciális egyetlen karakterként "%" lesz kezelve.
Az escape karakter az SQLGetInfo SQL_SEARCH_PATTERN_ESCAPE opciójával érhető el. Az argumentumban, amely elfogadja a keresési mintákat, minden aláhúzásjelet, százalékjelet vagy feloldó karaktert meg kell előznie, hogy ezek a karakterek literális formában legyenek szerepeltetve. Példák az alábbi táblázatban láthatók.
| Keresési minta | Description |
|---|---|
| %A% | Az A betűt tartalmazó összes azonosító |
| ABC_ | Mind a négy karakterazonosító az ABC-től kezdve |
| ABC\_ | Az azonosító ABC_, feltéve, hogy az escape karakter a fordított perjel (\) |
| \\% | Minden azonosító fordított perjellel (\) kezdődik, feltéve, hogy a feloldó karakter fordított perjel. |
Különös figyelmet kell fordítva arra, hogy elkerülje a keresési minta karaktereit olyan argumentumokban, amelyek elfogadják a keresési mintákat. Ez különösen igaz az aláhúzásjelre, amelyet gyakran használnak az azonosítókban. Az alkalmazásokban gyakori hiba, hogy lekér egy értéket az egyik katalógusfüggvényből, és ezt az értéket átadja egy másik katalógusfüggvény keresési mintájának argumentumának. Tegyük fel például, hogy egy alkalmazás lekéri a tábla nevét MY_TABLE az SQLTables eredménykészletéből, és átadja az SQLColumnsnak , hogy lekérje a MY_TABLE oszloplistáját. Ahelyett, hogy az alkalmazás a MY_TABLE oszlopait kérné le, az összes olyan tábla oszlopait kérdezi le, amely illeszkedik a keresési mintára, mint például a MY_TABLE, MY1TABLE, MY2TABLE stb.
Megjegyzés:
ODBC 2. Az x illesztőprogramok nem támogatják az SQLTables CatalogName argumentumának keresési mintáit. Az ODBC 3*.x* illesztőprogramok keresési mintákat fogadnak el ebben az argumentumban, ha a SQL_ATTR_ ODBC_VERSION környezeti attribútum SQL_OV_ODBC3; nem fogadnak el keresési mintákat ebben az argumentumban, ha az SQL_OV_ODBC2 van beállítva.
Ha null mutatót ad egy keresési minta argumentumának, az nem korlátozza az argumentum keresését; vagyis a null mutató és a keresési minta % (bármilyen karakter) egyenértékű. A nulla hosszúságú keresési minta – azaz egy érvényes mutató egy nulla hosszúságú sztringre – azonban csak az üres sztringnek ("") felel meg.