2017-11-07 4 views
0

私の要件は、MySQLテーブルのテーブルの列サイズを変更することです。これを達成するためにALTER文を使用します。しかし、その前に私はテーブルが存在するかどうかをチェックする必要があります。テーブルが存在する場合にのみ、私はALTER文を使用します。MySQLでIF CondtionでALTERテーブルクエリを使用する方法

私は非常に多くの方法を試みました。しかし、これを達成することはできません。これをMySQLで達成する方法はありますか?

これを達成するために手伝ってください。

+0

あなたはテーブルが存在するかどうかを確認するために、テーブル名の制限1から選択1のようなクエリを実行する必要があります。 https://stackoverflow.com/questions/8829102/mysql-check-if-table-exists-without-using-select-from –

+0

こちらもご覧ください:https://stackoverflow.com/questions/972922/add -column-to-mysql-table-if-does-does-exist-existは、71 upvotes(2番目の答え)で答えを見てください。 – Nic3500

答えて

0

MySQLにはこれを行うための方法が組み込まれていません。

1つのオプションは、単にALTER TABLEステートメントを実行し、テーブルが存在しない場合はTable ... doesn't existエラーを無視します。

別のオプション(common_schemaをインストールしたい場合)は、QueryScriptを使用してALTER TABLEコマンドをtry catchにラップし、そのテーブルが存在しない場合はエラーを無視することです。

このような何かがうまくいく

call common_schema.run(" 
    try 
    { 
     alter table sakila.film modify column title varchar(100) not null; 
    } 
    catch {} 
    "); 
関連する問題