Título: MYSQL. Crear un campo en una table si no existe Publicado por: OssoH en 4 Marzo 2011, 10:47 am Hola,
Quiero crear un nuevo campo en un tabla siempre que no exista previsamente evitando de esta forma el error que daría por campo existente. Se que podría hacerlo con un sencillo PHP pero me gustaría tenerlo en forma de sentencias SQL a lanzar desde el phpmyadmin. He probado con : Código: IF NOT EXISTS (SELECT active FROM ps_marcas) y el error que me devuelve es: #1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'IF NOT EXISTS (SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = `ps_' at line 1 Alguien sabe que puede estar pasando? Gracias. Título: Re: MYSQL. Crear un campo en una table si no existe Publicado por: Novlucker en 4 Marzo 2011, 11:36 am http://www.cryer.co.uk/brian/mysql/howto_add_column_unless_exists.htm
Saludos Título: Re: MYSQL. Crear un campo en una table si no existe Publicado por: el-brujo en 4 Marzo 2011, 17:17 pm cómo bien te dice Novlucker tienes que crear un "stored procedure" si es para mirar campo de una tabla, pero si es para crear una tabla "si no existe" basta con el IF NOT EXISTS
Código: CREATE TABLE IF NOT EXISTS message_icons Citar MySQL 5.0 soporta las palabras IF NOT EXISTS para que no ocurra un error si la tabla existe. Tenga en cuenta que no hay verificación que la tabla existente tenga una estructura idéntica a la indicada por el comando CREATE TABLE . Nota: Si usa IF NOT EXISTS en un comando CREATE TABLE ... SELECT ,cualquier registro seleccionado por la parte SELECT se inserta si la tabla existe o no. Título: Re: MYSQL. Crear un campo en una table si no existe Publicado por: OssoH en 4 Marzo 2011, 17:50 pm Que grandes que sois!!!
Problema solucionado!! Gracias. |