| Autor | Zpráva | ||
|---|---|---|---|
| Nedy Profil |
#1 · Zasláno: 22. 2. 2005, 17:17:40
Potřebuji zjistit flags sloupců (jestli je to primary_key nebo enum atd..)
Dělal jsem to přez mysql_field_flags a to šlo v pohodě, ale v mysqli nic takového nevidím. Je tady akorát mysqli_fetch_field s vlastností flags - An integer representing the bit-flags for the field. Jenže to mi vyhodí číslo, a já nevím co znamená. Nevíte někdo jak z toho čísla zjistit jaké flags ten sloupec má? dík moc |
||
| Jakub Vrána Profil * |
#2 · Zasláno: 23. 2. 2005, 20:06:01
Řekl bych, že nějak takhle:
$primary = ($flags & MYSQLI_PRI_KEY_FLAG) Ostatní konstanty jsou na http://php.net/manual/en/ref.mysqli.php#mysqli.constants. |
||
| Nedy Profil |
#3 · Zasláno: 24. 2. 2005, 15:19:31 · Upravil/a: Nedy
Jo dík, akorát v tom mám ještě pár nejasností:
Když dám echo $primary; tak u sloupce, který je primary key teď vrací '2' a u sloupce, který není vrací '0'. Jestli to správně chápu tak nenulová_hodnota=flag_nastavena a nulová_hodnota=flag_nenastavena. Nebo je to nějak jinak -> jak? |
||
| Nedy Profil |
#4 · Zasláno: 24. 2. 2005, 16:03:50 · Upravil/a: Nedy
Ještě něco. Když chci zjistit, je-li sloupec typu enum, udělám to podobným způsobem, akorát využiji vlastnosti type:
$type = $col -> type; $enum = ($type & MYSQLI_TYPE_ENUM); Když je teď sloupec typu enum, vrací '246' a když ne tak vrací '3' nebo '1'. Nevíte někdo kde zjistit kdy to vrací jaké číslo? (ať už jde o vlastnost flags nebo type) V té tabulce předdefinovaných konstant jsou sice všechny předdefinované konstanty :-) ale co znamenají hodnoty, které po jejich použití získám se už nedozvím.. |
||
|
Časová prodleva: 21 let
|
|||
Toto téma je uzamčeno. Odpověď nelze zaslat.
0