20211126220400-pali_sent_index-upgrade.php 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. <?php
  2. require_once __DIR__."/../../app/config.php";
  3. define("_PG_DB_PALI_SENTENCE_", _DB_ENGIN_.":host="._DB_HOST_.";port="._DB_PORT_.";dbname="._DB_NAME_.";user="._DB_USERNAME_.";password="._DB_PASSWORD_.";");
  4. define("_PG_TABLE_PALI_SENT_", "pali_sentences");
  5. $dest_db = _PG_DB_PALI_SENTENCE_;#目标数据库
  6. $dest_table = _TABLE_PALI_SENT_INDEX_;#目标表名
  7. echo "migarate pali_sent_index".PHP_EOL;
  8. #打开目标数据库
  9. $PDO_DEST = new PDO($dest_db,_DB_USERNAME_,_DB_PASSWORD_,array(PDO::ATTR_PERSISTENT=>true));
  10. $PDO_DEST->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
  11. echo "open dest".PHP_EOL;
  12. #删除目标表中所有数据
  13. fwrite(STDOUT,"deleting date".PHP_EOL) ;
  14. try{
  15. $query = "DELETE FROM ".$dest_table;
  16. $stmt = $PDO_DEST->prepare($query);
  17. $stmt->execute();
  18. }catch(PDOException $e){
  19. fwrite(STDERR,"error:".$e->getMessage());
  20. exit;
  21. }
  22. fwrite(STDOUT,"deleted date".PHP_EOL) ;
  23. #插入数据
  24. $query = "INSERT INTO ".$dest_table." (book, para, strlen ) SELECT book,paragraph,sum(length) FROM "._PG_TABLE_PALI_SENT_." group by book,paragraph;";
  25. try{
  26. $stmt = $PDO_DEST->prepare($query);
  27. $stmt->execute();
  28. }catch(PDOException $e){
  29. fwrite(STDERR,"error:".$e->getMessage());
  30. exit;
  31. }
  32. echo "insert dest".PHP_EOL;
  33. echo "done".PHP_EOL;