sql >> データベース >  >> RDS >> Mysql

mysqlテーブル列が存在するかどうかを確認するにはどうすればよいですか?

    PHPの場合:

    $fields = mysql_list_fields('database_name', 'table_name');
    $columns = mysql_num_fields($fields);
    for ($i = 0; $i < $columns; $i++) {$field_array[] = mysql_field_name($fields, $i);}
    
    if (!in_array('price', $field_array))
    {
    $result = mysql_query('ALTER TABLE table_name ADD price VARCHAR(10)');
    }
    

    これも役立つはずです:

    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
    

    または、次のことができます:

    Show columns from table like 'string';
    

    SO here 前。



    1. ランダムな結果を返します(rand()による順序)

    2. ASP.NET Core MVC、Entity Framework Core、およびSQLServerを使用したCRUD操作

    3. LOAD DATA INFILEを使用してMySQLテーブルにインポートするときにCSVファイルの列をスキップするにはどうすればよいですか?

    4. Oracle集合演算子