免費提供紙箱及拆裝、24H全省服務
合約保障、提供您平價又專業的搬家服務
搬家公司精做高難度防水抓漏/壁癌/油漆等工程
責任施工、合約保固!
J2H流行雜誌J2h論壇程式設計討論   
交友配對個人設定加入會員會員說明重新登入


[php] PHP把A資料庫Select到的資料Insert到B資料庫

房東:阿擺
發表時間:2011-07-14
[檢舉]


利用select_db是可以切換資料庫,

但如果想要用一行sql語法就可以,把A資料庫Select到的資料Insert到B資料庫之中,

請問該如何做呀?





  • J2H贊助網站            在此刊登廣告

    廣利不動產-新板特區指名度最高、值得您信賴的好房仲
    您的托付,廣利用心為您服務
    廣利不動產-板橋在地生根最實在--新板特區指名度最高、值得您信賴的好房仲
    完整房訊,房屋、店面熱門精選物件,廣利不動產 優質仲介,房屋租賃、買賣資訊透明,交易真安心!

  • 1 樓住戶:小K
    發表時間:2011-07-14
    [檢舉]

    寫入的欄位可依序指定內容..

    例如...
    A資料庫的資料表A的欄位分別是 A1 A2 A3 A4 A5 A6 A7
    B資料庫的資料表B的欄位分別是 B1 B2 B3
    假設要把 資料表A的 A3 A6 A7 欄位內容分別撈到資料表B的 B1 B2 B3

    可以這樣寫..
    INSERT INTO B資料庫.資料表B SELECT A3,A6,A7 FROM A資料庫.資料表A WHERE 條件..


    2 樓住戶:小蛙
    發表時間:2011-07-14
    [檢舉]

    SELECT * INTO [ToTable] FROM [FromTable]

    3 樓住戶:藍天
    發表時間:2011-07-14
    [檢舉]

    一般而言,兩個資料庫如果是建在同一台機器上,當連線完成後,就可以直接對兩個資料庫進行操作,只要語法上有明確的說明是對哪個資料庫的哪個資料表動作,就可以完成請求...
    例如要把三個不同的 database 中的資料表合併查詢...
    SELECT * FROM db_a.table_a LEFT JOIN db_b.table_b USING(id) LEFT JOIN db_c.table_c USING(id) WHERE id=1;
    像這樣也是可行的...
    所以連線的動作是對機器連線,然後資料庫再依照語法完成請求的動作..

    除非你的資料庫分別建在不同的機器上,那就必須個別連線了..
    個別連線的話..通常使用物件的方式會比較好處理..
    已經很久沒使用 mysql_connect() 這一類 php 的 MySQL 函式庫了..
    建議可以改用PDO (PHP Data Object)會更方便些..
    直接到 PHP 原文官網搜尋 pdo 可以查看到很多相關說明和範例..



    4 樓住戶:jack
    發表時間:2017-12-16
    [檢舉]

    <?php
    // 定義資料庫相關變數
    define('dbHost','localhost');
    define('dbUser','root'); // 資料庫連線帳號
    define('dbPass',''); // 資料庫連線密碼
    define('dbName','sourceDB'); // 資料庫名稱

    // 連結資料庫
    $db = mysql_connect(dbHost,dbUser,dbPass) or die('Connect to database failed');
    mysql_select_db(dbName,$db);

    // 抓取並寫入資料
    // test.login_log = 目的地資料庫.目的地資料表
    // sourceDB.login_log = 來源資料庫.來源資料表
    $insStr = 'insert into test.login_log select * from sourceDB.login_log';
    $res = mysql_query($insStr,$db) or die("Action failed. Error = ".mysql_error());

    5 樓住戶:呱呱
    發表時間:2017-12-19
    [檢舉]

    <?php
    $dbhostname = "localhost";// host
    $dbusername = "test"; //user
    $dbuserpass = "1234";// //password
    $dbname = "decorator"; //database


    $limit = 20;


    $conID = @mysql_pconnect($dbhostname, $dbusername, $dbuserpass) or die ("資料連結錯誤");

    mysql_select_db( "$dbname",$conID);


    /////把原本資料移至其他資料庫
    /////duty.updatetime 資料庫.資料表
    /////decorator.updatetime 資料庫.資料表
    ////資料表的變數排序必須一致資料才不會亂掉
    $query= " insert into duty.updatetime select * from decorator.updatetime ";

    if(mysql_query($query)){


    echo"<H1> 資料已經審核過去</h1> ";
    exit;
    }else{echo"bad";}


    ?>



     共 5 人回應  選擇頁數 【第1 頁】 

    回應主題
    ※注意 
    1. 抱歉,您的網頁未支援Cookie,此網頁將無法正常執行請檢查您電腦瀏覽器關於cookie的設定。設定方法說明
    2. 必須由首頁登入 J2H 流行雜誌