Autor Zpráva
BuGeR
Profil
Zdravím.
Chtěl bych se zeptat, našel / udělal by mi někdo nějakou podmínku (script),
který by zjistil jestli existuje v dané mysql tabulce určitý sloupec, a pokud ne, vytvořil by ho?
Byl bych moc vděčný :). Děkuji :)
Majkl578
Profil
Ber to jako inspiraci, musíš si změnit dotazy (jak select, tak alter) tak, aby ti vyhovovaly:
<?php
mysql_connect('localhost', 'root', '');
mysql_select_db('test');

//check if the column exist
mysql_query('SELECT `c` FROM `foo` LIMIT 1');

//if the column does not exist
if (mysql_errno() === 1054) {
	mysql_query('ALTER TABLE `foo` ADD `c` INT NOT NULL');
}
Jan Tvrdík
Profil
IF NOT EXISTS (SELECT * FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_NAME = ‘TEST’ AND COLUMN_NAME = ‘TEST_DATE’)
BEGIN
   ALTER TABLE TEST ADD TEST_DATE DATETIME
END

(zdroj: http://snippets.dzone.com/posts/show/4663)
Jan Tvrdík
Profil
$tableFields = mysql_list_fields("databasename", "tablename");
        
$columns = mysql_num_fields($fields);
        
for ($i = 0; $i < $columns; $i++) {
    $field_array[] = mysql_field_name($fields, $i);
}
        
if (!in_array(‘list_id’, $field_array)) {
    mysql_query("ALTER TABLE `tablename` ADD `fieldname` INT(11) NOT NULL DEFAULT ‘1′;");
}

(zdroj: www.lost-in-code.com/programming/mysql/mysql-check-if-field-exists/)
BuGeR
Profil
děkuji moc :)

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: