Guest User

Untitled

a guest
Jun 18th, 2018
81
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.45 KB | None | 0 0
  1. $tableNames = Schema::getConnection()->getDoctrineSchemaManager()->listTableNames();
  2.  
  3. foreach ($tableNames as $name) {
  4. //if you don't want to truncate migrations
  5. if ($name == 'migrations') {
  6. continue;
  7. }
  8. DB::table($name)->truncate();
  9. }
  10.  
  11. // set tables don't want to trucate here
  12. $excepts = ['migrations'];
  13. $tables = DB::connection()
  14. ->getPdo()
  15. ->query("SHOW FULL TABLES")
  16. ->fetchAll();
  17. $tableNames = [];
  18.  
  19. $keys = array_keys($tables[0]);
  20. $keyName = $keys[0];
  21. $keyType = $keys[1];
  22.  
  23. foreach ($tableNames as $name) {
  24. //if you don't want to truncate migrations
  25. if (in_array($name[$keyName], $excepts))
  26. continue;
  27.  
  28. // truncate tables only
  29. if('BASE TABLE' !== $name[$keyType])
  30. continue;
  31.  
  32. DB::table($name)->truncate();
  33. }
  34.  
  35. DB::statement("SET foreign_key_checks=0");
  36. $databaseName = DB::getDatabaseName();
  37. $tables = DB::select("SELECT * FROM information_schema.tables WHERE table_schema = '$databaseName'");
  38. foreach ($tables as $table) {
  39. $name = $table->TABLE_NAME;
  40. //if you don't want to truncate migrations
  41. if ($name == 'migrations') {
  42. continue;
  43. }
  44. DB::table($name)->truncate();
  45. }
  46. DB::statement("SET foreign_key_checks=1");
  47.  
  48. // Get db name
  49. $db = DB::connection()->getDatabaseName();;
  50. // Delete db
  51. DB::statement('DROP DATABASE `'.$db.'`');
  52. // Create db
  53. DB::statement('CREATE DATABASE `'.$db.'`');
Add Comment
Please, Sign In to add comment