簡體   English   中英

從表中刪除列

[英]Drop columns from a table

我有一個.csv文件數據正在導入到mysql表中。 每次運行代碼時,我想做的是我想刪除所有列和數據,並用更新的.csv內容替換它。

   $affectedRows = $pdo->exec("
     //HERE I do need additional code to drop column data from $databasetable similar to following
  /*------------------------------------------*/
    DROP TABLE IF EXISTS '$databasetable'

    CREATE TABLE IF NOT EXISTS `$databasetable` (
          Column names1
          Column name 2
          .
     ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
  /*------------------------------------------*/


     LOAD DATA LOCAL INFILE ".$pdo->quote($csvfile)." INTO TABLE `$databasetable`
     FIELDS TERMINATED BY ".$pdo->quote($fieldseparator)."
     LINES TERMINATED BY ".$pdo->quote($lineseparator));

我認為您想要做的是截斷有問題的表。 那就是刪除表中的所有數據,而不是刪除表本身,對嗎? 因此,這里有1條提示:

<?php 
    //FIRST TRUNCATE (REMOVE OLD DATA IN THE TABLE $databasetable
    $stmt      = $db->prepare("TRUNCATE TABLE {$databasetable}");
    $tblEmpty  = $stmt->execute();

    //NOW, ONCE THE TABLE'S BEEN TRUNCATED; YOU MAY CONTINUE WITH THE NEW "INSERTS"...
    if($tblEmpty){
        // INSERT THE DATA FROM THE CSV...
    }

    //...
    //...
    // MORE CODE HERE...
 $affectedRows = $pdo->exec("
 //HERE I do need additional code to drop column data from $databasetable similar to following
 /*------------------------------------------*/
/* I REMOVED THE SINGLE QUOTESFROM $databasetable and I was able to drop the table. Once the table was dropped then I was able to create the $databasetable which solved the problem. 
DROP TABLE IF EXISTS $databasetable;
CREATE TABLE IF NOT EXISTS `$databasetable` (
      Column names1
      Column name 2
      .
 ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
/*------------------------------------------*/


 LOAD DATA LOCAL INFILE ".$pdo->quote($csvfile)." INTO TABLE `$databasetable`
 FIELDS TERMINATED BY ".$pdo->quote($fieldseparator)."
 LINES TERMINATED BY ".$pdo->quote($lineseparator));

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM