質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

88.33%

データベースを使用して、SQLのデータを上書き

受付中

回答 1

投稿

  • 評価
  • クリップ 0
  • VIEW 1,156

kawanobe

score 8

データベースを使用して、SQLのデータを上書きしたいのですが、

『m_control』テーブルの「controlid」にある同名データ('PRIMARY')があるため、エラーになります。

どうしたら上書きできるのか、対応方法を教えてください。
サーバーは、ロリポップを使っています。

発生している問題・エラーメッセージ

エラーメッセージ

該当のソースコード

ここにご自身が実行したソースコードを書いてください

試したこと

課題に対してアプローチしたことを記載してください

補足情報(言語/FW/ツール等のバージョンなど)

より詳細な情報

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 過去に投稿した質問と同じ内容の質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

質問への追記・修正、ベストアンサー選択の依頼

  • KiyoshiMotoki

    2016/06/12 17:21

    これだけでは、何がやりたいのか分かりません。以下を一読したうえでご質問を修正すると、回答がつきやすくなると思います。 https://teratail.com/help/question-tips#questionTips3

    キャンセル

  • 退会済みユーザー

    2016/06/12 23:03

    こちらの質問が他のユーザから「問題・課題が含まれていない質問」という指摘を受けました
    teratailでは、漠然とした興味から票を募るような質問や、意見の主張をすることを目的とした投稿は推奨していません。
    「編集」ボタンから編集を行い、質問の意図や解決したい課題を明確に記述していただくと回答が得られやすくなります。

  • 退会済みユーザー

    2016/06/13 09:55

    こちらの質問が他のユーザから「やってほしいことだけを記載した丸投げの質問」という指摘を受けました
    「質問を編集する」ボタンから編集を行い、調査したこと・試したことを記入していただくと、回答が得られやすくなります。

回答 1

0

まず言葉が逆ですよね。
「SQLを使用して、データベースのデータを上書きしたい」
で、上書き(更新)するSQLはUPDATEです。
構文はマニュアルを参照してください。
https://dev.mysql.com/doc/refman/5.6/ja/update.html

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2016/06/13 09:51

    ありがとうございます。
    ですが、私はパソコンに詳しくないので、下記の中で、
    どこを、どう変えたら良いのかを教えてくださるとうれしいです!
    ※1万文字以内と言う制限がありますので、複数回に分けて送ります。
    -- --------------------------------------------------------

    --
    -- テーブルの構造 `m_account`
    --

    CREATE TABLE IF NOT EXISTS `m_account` (
    `accountcd` int(11) NOT NULL default '0',
    `accname` varchar(128) default NULL,
    `twitterid` varchar(128) default NULL,
    `oauth_token` varchar(128) default NULL,
    `oauth_token_secret` varchar(128) default NULL,
    `tweettime` varchar(128) default NULL,
    `mirrortime` varchar(128) default NULL,
    `dayflwnum` int(11) default '0',
    `minflwnum` int(11) default '0',
    `sort` int(11) default '0',
    `delflg` smallint(6) default '0',
    PRIMARY KEY (`accountcd`),
    KEY `i_account_delflg` (`delflg`)
    ) ENGINE=MyISAM DEFAULT CHARSET=utf8;

    -- --------------------------------------------------------

    --
    -- テーブルの構造 `m_control`
    --

    CREATE TABLE IF NOT EXISTS `m_control` (
    `controlid` varchar(64) NOT NULL default '',
    `ctrlgrpcd` int(11) default '0',
    `controlname` text,
    `serialno` int(11) default '0',
    `ctrlval` text,
    `ctrltype` text,
    `ctrlhelp` text,
    `bikou01` text,
    `bikou02` text,
    `bikou03` text,
    `bikou04` text,
    `bikou05` text,
    PRIMARY KEY (`controlid`),
    KEY `i_control_esp16` (`ctrlgrpcd`,`serialno`)
    ) ENGINE=MyISAM DEFAULT CHARSET=utf8;

    --
    -- テーブルのデータをダンプしています `m_control`
    --

    INSERT INTO `m_control` (`controlid`, `ctrlgrpcd`, `controlname`, `serialno`, `ctrlval`, `ctrltype`, `ctrlhelp`, `bikou01`, `bikou02`, `bikou03`, `bikou04`, `bikou05`) VALUES
    ('system_datasavepath', 10000001, 'データ保存パス', 10, '/home/[ハッスルサーバID]/public/www/pic/', '0:1:60:256:', '', '', '', '', '', ''),
    ('system_picwwwpath', 10000001, 'ファイル公開パス', 20, '/pic/', '0:1:256:60:', '', '', '', '', '', ''),
    ('system_error_mail', 10000001, 'システム責任者メールアドレス', 30, 'twitter-brain@yahoo.co.jp', '6:', '', '', '', '', '', ''),
    ('exhibit_fsz_max', 10000001, '商品写真アップロード可能ファイルサイズ', 40, '2048', '3:2048:1', '単位はKB', '', '', '', '', ''),
    ('day_flw_num', 10000002, '一日のフォロー数', 10, '20', '3:99999:0', '初期値', '', '', '', '', ''),
    ('min_flw_num', 10000002, '最低フォロワー数', 20, '0', '3:99999:0', '初期値', '', '', '', '', ''),
    ('flw_limit_num', 10000002, 'フォロー規定数', 30, '1000', '3:9999:0', '', '', '', '', '', ''),
    ('flw_max_per', 10000002, 'フォロー割合', 40, '1.1', '4:10:0:2', '規定数以上フォローする場合のフォロー数/フォロワー数の値', '', '', '', '', ''),
    ('flw_rel_hours', 10000002, 'フォロー解除時間', 15, '48', '3:9999:0', 'フォロー返しがなかった場合、フォローを解除するまでの時間', '', '', '', '', ''),
    ('flw_chk_days', 10000002, 'フォローチェック間隔', 17, '7', '3:9999:0', 'フォローアカウントからフォローされているかどうかチェックする間隔(日)', '', '', '', '', ''),
    ('neg_word', 10000002, '除外キーワード', 5, 'お断り 禁止', '0:0:60:256:', 'フォロー対象で除外するキーワード', '', '', '', '', ''),
    ('consumer_key', 10000003, 'API key', 10, '', '0:1:60:256:', '', '', '', '', '', ''),
    ('consumer_secret', 10000003, 'API secret', 20, '', '0:1:60:256:', '', '', '', '', '', '');

    -- --------------------------------------------------------

    --
    -- テーブルの構造 `m_ctrlgrp`
    --

    CREATE TABLE IF NOT EXISTS `m_ctrlgrp` (
    `ctrlgrpcd` int(11) NOT NULL default '0',
    `ctrlgrpname` varchar(128) default NULL,
    `ctrlgrpspl` varchar(64) default NULL,
    `bikou01` text,
    `bikou02` text,
    `bikou03` text,
    `bikou04` text,
    `bikou05` text,
    PRIMARY KEY (`ctrlgrpcd`),
    KEY `i_ctrlgrp_ctrlgrpspl` (`ctrlgrpspl`)
    ) ENGINE=MyISAM DEFAULT CHARSET=utf8;

    --
    -- テーブルのデータをダンプしています `m_ctrlgrp`
    --

    INSERT INTO `m_ctrlgrp` (`ctrlgrpcd`, `ctrlgrpname`, `ctrlgrpspl`, `bikou01`, `bikou02`, `bikou03`, `bikou04`, `bikou05`) VALUES
    (10000001, '画像設定', '2000', '', '', '', '', ''),
    (10000002, 'フォロー設定', '1000', '', '', '', '', ''),
    (10000003, 'システム設定', '9999', '', '', '', '', '');

    -- --------------------------------------------------------

    --

    キャンセル

  • 2016/06/13 09:52

    下記、後半です。

    -- テーブルの構造 `m_program`
    --

    CREATE TABLE IF NOT EXISTS `m_program` (
    `pgno` int(11) NOT NULL default '0',
    `pgname` varchar(128) default NULL,
    `pgfilename` varchar(128) default NULL,
    `pglvl` int(11) default '0',
    `bikou01` text,
    `bikou02` text,
    `bikou03` text,
    `bikou04` text,
    `bikou05` text,
    PRIMARY KEY (`pgno`)
    ) ENGINE=MyISAM DEFAULT CHARSET=utf8;

    --
    -- テーブルのデータをダンプしています `m_program`
    --

    INSERT INTO `m_program` (`pgno`, `pgname`, `pgfilename`, `pglvl`, `bikou01`, `bikou02`, `bikou03`, `bikou04`, `bikou05`) VALUES
    (100000, 'TOPページ', 'main/main.php', 1, '', '', '', '', ''),
    (101110, 'アカウント一覧', 'main/acc_lst.php', 10, '', '', '', '', ''),
    (101120, 'アカウント更新', 'main/acc_upd.php', 50, '', '', '', '', ''),
    (101210, 'ツイート一覧', 'main/twt_list.php', 10, '', '', '', '', ''),
    (101220, 'ツイート更新', 'main/twt_upd.php', 50, '', '', '', '', ''),
    (900100, 'MAIN MENU', 'menu/mainmenu.php', 1, '', '', '', '', ''),
    (900200, 'MASTER MENU', 'menu/mstmnt.php', 1, '', '', '', '', ''),
    (900900, 'MANAGEMENT MENU', 'menu/datamn.php', 1, '', '', '', '', ''),
    (901010, 'システム設定', 'main/control_list.php', 50, '', '', '', '', ''),
    (901020, 'システム設定', 'main/control_update.php', 50, '', '', '', '', ''),
    (902010, 'ユーザー管理', 'main/user_list.php', 99, '', '', '', '', ''),
    (902020, 'ユーザー管理', 'main/user_update.php', 99, '', '', '', '', ''),
    (902030, 'ユーザー管理', 'main/user_update.php', 99, '', '', '', '', ''),
    (902040, 'ユーザー管理', 'main/user_update.php', 99, '', '', '', '', ''),
    (903010, 'プログラム管理', 'main/program_list.php', 99, '', '', '', '', ''),
    (903020, 'プログラム管理', 'main/program_update.php', 99, '', '', '', '', ''),
    (903030, 'プログラム管理', 'main/program_update.php', 99, '', '', '', '', ''),
    (903040, 'プログラム管理', 'main/program_update.php', 99, '', '', '', '', ''),
    (905010, 'システム設定グループ管理', 'main/ctrlgrp_list.php', 99, '', '', '', '', ''),
    (905020, 'システム設定グループ管理', 'main/ctrlgrp_update.php', 99, '', '', '', '', ''),
    (905030, 'システム設定グループ管理', 'main/ctrlgrp_update.php', 99, '', '', '', '', ''),
    (905040, 'システム設定グループ管理', 'main/ctrlgrp_update.php', 99, '', '', '', '', ''),
    (906010, 'システム設定定義', 'main/ctrldef_list.php', 99, '', '', '', '', ''),
    (906020, 'システム設定定義', 'main/ctrldef_detail.php', 99, '', '', '', '', ''),
    (906030, 'システム設定定義', 'main/ctrldef_update.php', 99, '', '', '', '', ''),
    (906040, 'システム設定定義', 'main/ctrldef_update.php', 99, '', '', '', '', ''),
    (906050, 'システム設定定義', 'main/ctrldef_update.php', 99, '', '', '', '', ''),
    (907010, 'データバックアップ', 'system/data_backup.php', 99, '', '', '', '', ''),
    (907020, 'データバックアップ', 'system/data_backup2.php', 99, '', '', '', '', ''),
    (907030, 'データベース最適化', 'system/data_vacuum.php', 99, '', '', '', '', ''),
    (907040, 'データベース最適化', 'system/data_vacuum2.php', 99, '', '', '', '', ''),
    (907050, 'インデックス再作成', 'system/data_reindex.php', 99, '', '', '', '', ''),
    (907060, 'インデックス再作成', 'system/data_reindex2.php', 99, '', '', '', '', ''),
    (105010, '画像アップロード', 'common/img_upload1.php', 50, '', '', '', '', ''),
    (105020, '画像アップロード', 'common/img_upload2.php', 50, '', '', '', '', ''),
    (101310, 'ツイートコメント一覧', 'main/twtcmt_list.php', 10, '', '', '', '', ''),
    (101320, 'ツイートコメント更新', 'main/twtcmt_upd.php', 50, '', '', '', '', ''),
    (101200, 'ツイート検索', 'main/twt_sch.php', 10, '', '', '', '', ''),
    (101400, 'フォロー先設定一覧', 'main/flwget_list.php', 10, '', '', '', '', ''),
    (101410, 'フォロー先設定更新', 'main/flwget_upd.php', 50, '', '', '', '', ''),
    (101500, 'ツイート取得', 'main/twtget_frm.php', 50, '', '', '', '', ''),
    (101510, 'ツイート取得', 'main/twtget_cnf.php', 50, '', '', '', '', ''),
    (101600, 'ミラーツイート', 'main/twtnow_list.php', 10, '', '', '', '', ''),
    (101610, 'ミラーツイート', 'main/twtnow_upd.php', 50, '', '', '', '', ''),
    (101700, 'フォロワー推移', 'main/flwnum_list.php', 20, '', '', '', '', ''),
    (101520, 'ツイート取得', 'main/twtget_upd.php', 50, '', '', '', '', ''),
    (101230, 'ツイート更新', 'main/twt_upload.php', 50, '', '', '', '', ''),
    (101530, 'ツイート取得履歴', 'main/twtget_his.php', 10, '', '', '', '', ''),
    (101240, 'ツイートダウンロード', 'main/twt_dl.php', 50, '', '', '', '', '');

    -- --------------------------------------------------------

    --
    -- テーブルの構造 `m_user`
    --

    CREATE TABLE IF NOT EXISTS `m_user` (
    `loginid` varchar(32) NOT NULL default '',
    `password` varchar(256) default NULL,
    `username` varchar(128) default NULL,
    `userspl` varchar(64) default NULL,
    `userlvl` int(11) default '0',
    `bikou01` text,
    `bikou02` text,
    `bikou03` text,
    `bikou04` text,
    `bikou05` text,
    `delflg` smallint(6) default '0',
    PRIMARY KEY (`loginid`),
    KEY `i_user_userspl` (`userspl`),
    KEY `i_user_delflg` (`delflg`)
    ) ENGINE=MyISAM DEFAULT CHARSET=utf8;

    --
    -- テーブルのデータをダンプしています `m_user`
    --

    INSERT INTO `m_user` (`loginid`, `password`, `username`, `userspl`, `userlvl`, `bikou01`, `bikou02`, `bikou03`, `bikou04`, `bikou05`, `delflg`) VALUES
    ('guest', 'guVeRgi5kAY4k', '', '', 99, '', '', '', '', '', 0);

    -- --------------------------------------------------------

    --
    -- テーブルの構造 `t_flwget`
    --

    CREATE TABLE IF NOT EXISTS `t_flwget` (
    `flwgetcd` int(11) NOT NULL default '0',
    `accountcd` int(11) default '0',
    `andword` text NOT NULL,
    `orword` text NOT NULL,
    `minflwnum` int(11) default '0',
    `kbnflg` smallint(6) NOT NULL,
    `delflg` smallint(6) default '0',
    PRIMARY KEY (`flwgetcd`),
    KEY `i_flwget_accountcd` (`accountcd`),
    KEY `i_flwget_delflg` (`delflg`)
    ) ENGINE=MyISAM DEFAULT CHARSET=utf8;


    -- --------------------------------------------------------

    --
    -- テーブルの構造 `t_flwnum`
    --

    CREATE TABLE IF NOT EXISTS `t_flwnum` (
    `accountcd` int(11) NOT NULL default '0',
    `regtime` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
    `frdnum` int(11) default '0',
    `flwnum` int(11) default '0',
    `frdnumadd` int(11) default '0',
    `flwnumadd` int(11) default '0',
    PRIMARY KEY (`accountcd`,`regtime`)
    ) ENGINE=MyISAM DEFAULT CHARSET=utf8;

    --
    -- テーブルの構造 `t_friend`
    --

    CREATE TABLE IF NOT EXISTS `t_friend` (
    `accountcd` int(11) NOT NULL default '0',
    `followid` varchar(128) NOT NULL default '',
    `reltime` timestamp NULL default NULL,
    `regtime` timestamp NOT NULL default '0000-00-00 00:00:00',
    PRIMARY KEY (`accountcd`,`followid`),
    KEY `i_friend_reltime` (`reltime`),
    KEY `i_friend_regtime` (`regtime`)
    ) ENGINE=MyISAM DEFAULT CHARSET=utf8;

    -- --------------------------------------------------------

    --
    -- テーブルの構造 `t_tweet`
    --

    CREATE TABLE IF NOT EXISTS `t_tweet` (
    `tweetcd` int(11) NOT NULL default '0',
    `accountcd` int(11) default '0',
    `tweet` text,
    `picname` varchar(200) default NULL,
    `delflg` smallint(6) default '0',
    PRIMARY KEY (`tweetcd`),
    KEY `i_tweet_accountcd` (`accountcd`),
    KEY `i_tweet_delflg` (`delflg`)
    ) ENGINE=MyISAM DEFAULT CHARSET=utf8;


    -- --------------------------------------------------------

    --
    -- テーブルの構造 `t_twtcmt`
    --

    CREATE TABLE IF NOT EXISTS `t_twtcmt` (
    `twtcmtcd` int(11) NOT NULL default '0',
    `accountcd` int(11) default '0',
    `cmt` text,
    `pos` smallint(6) default '0',
    `delflg` smallint(6) default '0',
    PRIMARY KEY (`twtcmtcd`),
    KEY `i_twtcmt_accountcd` (`accountcd`),
    KEY `i_twtcmt_delflg` (`delflg`)
    ) ENGINE=MyISAM DEFAULT CHARSET=utf8;

    -- --------------------------------------------------------

    --
    -- テーブルの構造 `t_twthis`
    --

    CREATE TABLE IF NOT EXISTS `t_twthis` (
    `twthiscd` int(11) NOT NULL default '0',
    `accountcd` int(11) default '0',
    `tweetid` varchar(128) default NULL,
    `prandword` varchar(128) default NULL,
    `prorword` varchar(128) default NULL,
    `twandword` varchar(128) default NULL,
    `tworword` varchar(128) default NULL,
    `minretnum` int(11) default '0',
    `getcnt` int(11) default '0',
    `gettime` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
    `delflg` smallint(6) default '0',
    PRIMARY KEY (`twthiscd`),
    KEY `i_twthis_accountcd` (`accountcd`),
    KEY `i_twthis_gettime` (`gettime`),
    KEY `i_twthis_delflg` (`delflg`)
    ) ENGINE=MyISAM DEFAULT CHARSET=utf8;

    -- --------------------------------------------------------

    --
    -- テーブルの構造 `t_twtnow`
    --

    CREATE TABLE IF NOT EXISTS `t_twtnow` (
    `twtnowcd` int(11) NOT NULL default '0',
    `accountcd` int(11) default '0',
    `andword` text NOT NULL,
    `orword` text NOT NULL,
    `minretnum` int(11) default '0',
    `tweetid` varchar(128) default NULL,
    `kbnflg` smallint(6) NOT NULL,
    `delflg` smallint(6) default '0',
    PRIMARY KEY (`twtnowcd`),
    KEY `i_twtnow_accountcd` (`accountcd`),
    KEY `i_twtnow_delflg` (`delflg`)
    ) ENGINE=MyISAM DEFAULT CHARSET=utf8;


    -- --------------------------------------------------------

    --
    -- テーブルの構造 `t_wkpic`
    --

    CREATE TABLE IF NOT EXISTS `t_wkpic` (
    `wkpiccd` int(11) NOT NULL default '0',
    `wkpicymd` int(11) default '0',
    `regfilename` varchar(128) default NULL,
    `orgfilename` varchar(128) default NULL,
    `flsize` bigint(20) default '0',
    `fltype` varchar(8) default NULL,
    PRIMARY KEY (`wkpiccd`),
    KEY `i_wkpic_wkpicymd` (`wkpicymd`)
    ) ENGINE=MyISAM DEFAULT CHARSET=utf8;

    キャンセル

  • 2016/06/13 09:57

    提示いただいたコードで関連しそうなところは、
    INSERT INTO `m_control`
    のところですが、ここで追加しているデータにcontrolidの重複はないようですので、別の箇所になるのではと思います。

    キャンセル

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 88.33%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る