MySQLで「The used SELECT statements have a different number of columns」となる場合の対処

March 30,2021 11:55 PM
Category:[MySQL]
Tag:[MySQL]
Permalink

MySQLで「The used SELECT statements have a different number of columns」となる場合の対処について紹介します。

1.問題点

MySQLで2つのテーブルを作りました、

mysql> create table foo ( id int, name varchar(32) );
 
Query OK, 0 rows affected (0.20 sec)
 
mysql> create table bar ( id int, name1 varchar(32), name2 varchar(32) );
Query OK, 0 rows affected (0.18 sec)
  :
(略)
  :
mysql> select * from foo;
+------+------+
| id   | name |
+------+------+
|    1 | aaa  |
|    2 | bbb  |
+------+------+
2 rows in set (0.00 sec)
 
mysql> select * from bar;
+------+-------+-------+
| id   | name1 | name2 |
+------+-------+-------+
|    1 | xxx1  | xxx2  |
|    2 | yyy1  | yyy2  |
+------+-------+-------+
2 rows in set (0.00 sec)

UNIONを使って2つのテーブルを結合し、表示させようとすると、「The used SELECT statements have a different number of columns」というエラーになります。

ということで、MySQLで「The used SELECT statements have a different number of columns」となる場合の対処方法を紹介します。

2.原因

エラーメッセージの内容より、SELECTで表示させるカラム数が異なっていることが原因です。

3.対処

SELECTで表示させるカラム数を一致させます。

(クリックで拡大)

Comments [0] | Trackbacks [0]

Movable TypeのDataAPIで「403 Forbidden」になる場合の対処

March 22,2021 11:55 PM
Category:[DataAPI]
Tag:[DataAPI, MovableType]
Permalink

Movable TypeのDataAPIで「403 Forbidden」になる場合の対処方法を紹介します。

1.問題点

MTから記事のタイトル一覧を取得するスクリプトを作成しました。

<script src="http://.../mt-static/data-api/v3/js/mt-data-api.min.js"></script>
<script type="text/javascript" src="http://.../mt-static/jquery/jquery.min.js?v=7.1.4"></script>
<script>
var api = new MT.DataAPI({
    clientId: 'foo',
    baseUrl: 'http://.../cgi-bin/mt/mt-data-api.cgi',
    format: 'json',
    async: true,
});
siteId=1;
api.listEntries(siteId, function(response) {
  if (response.error) {
    // エラー処理
    jQuery('#result').append($('<li>').append(response.error.code + ":" + response.error.message));
    return;
  }
 
  for (var i = 0; i < response.items.length; i++) {
      var entry = response.items[i];
      jQuery('#result').append($('<li>').append(response.items[i].title));
  }
});
</script>
<div id="result"></div>

が、実行すると、

403:Forbidden

となります。

スクリプトは問題ないと思いますが原因が分かりません。

ということで、DataAPIで「403 Forbidden」になる場合の対処方法を紹介します。

2.原因

MTでDataAPIの利用が有効になっていないのが原因として考えられます。

3.対処

DataAPIを利用したいサイトの「設定」→「Webサービス」をクリック。

「Data API のアクセスを許可する。」をチェックして「変更を保存」をクリック。

これで冒頭のスクリプトが正常に動作するようになります。

4.その他

システム関連のデータにアクセスする場合は、システム管理画面の「設定」→「Webサービス」をクリックして、「システム全般での Data API の利用を許可する。」をチェックして「変更を保存」をクリック。

これでシステム関連のデータにアクセスできるようになります。

なお、認証が必要なデータにアクセスする場合は「Movable Type Data APIの使い方:authenticate()」の設定を追加してください。

Comments [0] | Trackbacks [0]

Adobe Premiereで動画の一部にモザイクをかける方法

March 12,2021 11:55 PM
Category:[Premiere Pro]
Tag:[Adobe, Premiere]
Permalink

Adobe Premiere Proで動画の一部にモザイクをかけてトラッキングする方法を紹介します。

1.動画全体にモザイクを適用

メニューから「ウィンドウ」→「エフェクト」を選択。

「エフェクト」ウインドウから「ビデオエフェクト」→「スタイライズ」→「モザイク」を選択。

適用したいクリップにドラッグ&ドロップ。

(クリックで拡大)

2.モザイクの粒度を調整

エフェクトコントロールの「モザイク」にある、「水平ブロック」と「垂直ブロック」の値を80にします。値を大きくするとモザイクが細かくなります。

適用された動画は下のようになります。

(クリックで拡大)

3.モザイクを特定の箇所に適用

エフェクトコントロールの「モザイク」のアイコンをクリック。ここでは矩形のアイコンをクリックします。

動画に矩形のマスクが表示されます。

(クリックで拡大)

四隅をドラッグして位置を調整します。調整が完了したらリターン押下。

(クリックで拡大)

レンダリングが開始します。

4.モザイクのトラッキング

エフェクトコントロールの「モザイク」→「マスク(1)」の下にある再生アイコンをクリックすれば、モザイクのトラッキング(追尾)が開始します。

ただ、トラッキングの精度はいまひとつのようなので、フレームごとに微調整が必要かもしれません。

Comments [0] | Trackbacks [0]
 1  |  2  |  3  |  4  |  5  | All pages