1

現在、YoutubeOAuthトークンの1対1の関係を含むユーザーテーブルがあります。しかし、私は今、複数のビデオサイトをサポートし、これを1対多の関係に分割したいと考えています。

新しいテーブルを設定しました。

トークン-列:id、site、username(Youtubeでのユーザーのユーザー名)、oauth_token、oauth_secret

user_tokens-cols:id、user_id、token_id

現在のユーザーのテーブルからこれらのテーブルにSELECTして、user_tokensテーブルに適切なIDを設定しながら、username、oauth_token、およびoauth_secret列をインポートする方法はありますか?

過去に私はこれを行うための短いPHPスクリプトを作成しましたが、MySQLで直接実行できるかどうかについて常に興味がありました。

4

2 に答える 2

2

1対多の関係には関係テーブルは必要ありません。必要なのは、トークンテーブルのuser_idフィールドだけです。これにより、テーブルを簡単に作成することもできます。

insert into tokens (site, user_id, username, oauth_token, oauth_secret)
select site, user_id, username, oauth_token, oauth_secret
from users

(ユーザーテーブルの内容とフィールド名が正確にわからないため、調整が必要になる場合があります。)

于 2010-02-27T20:37:37.663 に答える
-1

MySQLのドキュメントをチェックアウトします。私はそれがあなたを助けるべきだと思います。

于 2010-02-27T20:33:56.577 に答える