DB.php 8.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149
  1. <?php
  2. namespace Illuminate\Support\Facades;
  3. use Illuminate\Database\Console\Migrations\FreshCommand;
  4. use Illuminate\Database\Console\Migrations\RefreshCommand;
  5. use Illuminate\Database\Console\Migrations\ResetCommand;
  6. use Illuminate\Database\Console\Migrations\RollbackCommand;
  7. use Illuminate\Database\Console\WipeCommand;
  8. /**
  9. * @method static \Illuminate\Database\Connection connection(\UnitEnum|string|null $name = null)
  10. * @method static \Illuminate\Database\ConnectionInterface build(array $config)
  11. * @method static string calculateDynamicConnectionName(array $config)
  12. * @method static \Illuminate\Database\ConnectionInterface connectUsing(\UnitEnum|string $name, array $config, bool $force = false)
  13. * @method static void purge(\UnitEnum|string|null $name = null)
  14. * @method static void disconnect(\UnitEnum|string|null $name = null)
  15. * @method static \Illuminate\Database\Connection reconnect(\UnitEnum|string|null $name = null)
  16. * @method static mixed usingConnection(\UnitEnum|string $name, callable $callback)
  17. * @method static string getDefaultConnection()
  18. * @method static void setDefaultConnection(string $name)
  19. * @method static string[] supportedDrivers()
  20. * @method static string[] availableDrivers()
  21. * @method static void extend(string $name, callable $resolver)
  22. * @method static void forgetExtension(string $name)
  23. * @method static array getConnections()
  24. * @method static void setReconnector(callable $reconnector)
  25. * @method static \Illuminate\Database\DatabaseManager setApplication(\Illuminate\Contracts\Foundation\Application $app)
  26. * @method static void macro(string $name, object|callable $macro)
  27. * @method static void mixin(object $mixin, bool $replace = true)
  28. * @method static bool hasMacro(string $name)
  29. * @method static void flushMacros()
  30. * @method static mixed macroCall(string $method, array $parameters)
  31. * @method static void useDefaultQueryGrammar()
  32. * @method static void useDefaultSchemaGrammar()
  33. * @method static void useDefaultPostProcessor()
  34. * @method static \Illuminate\Database\Schema\Builder getSchemaBuilder()
  35. * @method static \Illuminate\Database\Query\Builder table(\Closure|\Illuminate\Database\Query\Builder|\Illuminate\Contracts\Database\Query\Expression|\UnitEnum|string $table, string|null $as = null)
  36. * @method static \Illuminate\Database\Query\Builder query()
  37. * @method static mixed selectOne(string $query, array $bindings = [], bool $useReadPdo = true)
  38. * @method static mixed scalar(string $query, array $bindings = [], bool $useReadPdo = true)
  39. * @method static array selectFromWriteConnection(string $query, array $bindings = [])
  40. * @method static array select(string $query, array $bindings = [], bool $useReadPdo = true)
  41. * @method static array selectResultSets(string $query, array $bindings = [], bool $useReadPdo = true)
  42. * @method static \Generator cursor(string $query, array $bindings = [], bool $useReadPdo = true)
  43. * @method static bool insert(string $query, array $bindings = [])
  44. * @method static int update(string $query, array $bindings = [])
  45. * @method static int delete(string $query, array $bindings = [])
  46. * @method static bool statement(string $query, array $bindings = [])
  47. * @method static int affectingStatement(string $query, array $bindings = [])
  48. * @method static bool unprepared(string $query)
  49. * @method static int|null threadCount()
  50. * @method static array[] pretend(\Closure $callback)
  51. * @method static mixed withoutPretending(\Closure $callback)
  52. * @method static void bindValues(\PDOStatement $statement, array $bindings)
  53. * @method static array prepareBindings(array $bindings)
  54. * @method static void logQuery(string $query, array $bindings, float|null $time = null)
  55. * @method static void whenQueryingForLongerThan(\DateTimeInterface|\Carbon\CarbonInterval|float|int $threshold, callable $handler)
  56. * @method static void allowQueryDurationHandlersToRunAgain()
  57. * @method static float totalQueryDuration()
  58. * @method static void resetTotalQueryDuration()
  59. * @method static void reconnectIfMissingConnection()
  60. * @method static \Illuminate\Database\Connection beforeStartingTransaction(\Closure $callback)
  61. * @method static \Illuminate\Database\Connection beforeExecuting(\Closure $callback)
  62. * @method static void listen(\Closure $callback)
  63. * @method static \Illuminate\Contracts\Database\Query\Expression raw(mixed $value)
  64. * @method static string escape(string|float|int|bool|null $value, bool $binary = false)
  65. * @method static bool hasModifiedRecords()
  66. * @method static void recordsHaveBeenModified(bool $value = true)
  67. * @method static \Illuminate\Database\Connection setRecordModificationState(bool $value)
  68. * @method static void forgetRecordModificationState()
  69. * @method static \Illuminate\Database\Connection useWriteConnectionWhenReading(bool $value = true)
  70. * @method static \PDO getPdo()
  71. * @method static \PDO|\Closure|null getRawPdo()
  72. * @method static \PDO getReadPdo()
  73. * @method static \PDO|\Closure|null getRawReadPdo()
  74. * @method static \Illuminate\Database\Connection setPdo(\PDO|\Closure|null $pdo)
  75. * @method static \Illuminate\Database\Connection setReadPdo(\PDO|\Closure|null $pdo)
  76. * @method static string|null getName()
  77. * @method static string|null getNameWithReadWriteType()
  78. * @method static mixed getConfig(string|null $option = null)
  79. * @method static string getDriverName()
  80. * @method static string getDriverTitle()
  81. * @method static \Illuminate\Database\Query\Grammars\Grammar getQueryGrammar()
  82. * @method static \Illuminate\Database\Connection setQueryGrammar(\Illuminate\Database\Query\Grammars\Grammar $grammar)
  83. * @method static \Illuminate\Database\Schema\Grammars\Grammar getSchemaGrammar()
  84. * @method static \Illuminate\Database\Connection setSchemaGrammar(\Illuminate\Database\Schema\Grammars\Grammar $grammar)
  85. * @method static \Illuminate\Database\Query\Processors\Processor getPostProcessor()
  86. * @method static \Illuminate\Database\Connection setPostProcessor(\Illuminate\Database\Query\Processors\Processor $processor)
  87. * @method static \Illuminate\Contracts\Events\Dispatcher getEventDispatcher()
  88. * @method static \Illuminate\Database\Connection setEventDispatcher(\Illuminate\Contracts\Events\Dispatcher $events)
  89. * @method static void unsetEventDispatcher()
  90. * @method static \Illuminate\Database\Connection setTransactionManager(\Illuminate\Database\DatabaseTransactionsManager $manager)
  91. * @method static void unsetTransactionManager()
  92. * @method static bool pretending()
  93. * @method static array[] getQueryLog()
  94. * @method static array getRawQueryLog()
  95. * @method static void flushQueryLog()
  96. * @method static void enableQueryLog()
  97. * @method static void disableQueryLog()
  98. * @method static bool logging()
  99. * @method static string getDatabaseName()
  100. * @method static \Illuminate\Database\Connection setDatabaseName(string $database)
  101. * @method static \Illuminate\Database\Connection setReadWriteType(string|null $readWriteType)
  102. * @method static string getTablePrefix()
  103. * @method static \Illuminate\Database\Connection setTablePrefix(string $prefix)
  104. * @method static mixed withoutTablePrefix(\Closure $callback)
  105. * @method static string getServerVersion()
  106. * @method static void resolverFor(string $driver, \Closure $callback)
  107. * @method static \Closure|null getResolver(string $driver)
  108. * @method static mixed transaction(\Closure $callback, int $attempts = 1)
  109. * @method static void beginTransaction()
  110. * @method static void commit()
  111. * @method static void rollBack(int|null $toLevel = null)
  112. * @method static int transactionLevel()
  113. * @method static void afterCommit(callable $callback)
  114. * @method static void afterRollBack(callable $callback)
  115. *
  116. * @see \Illuminate\Database\DatabaseManager
  117. */
  118. class DB extends Facade
  119. {
  120. /**
  121. * Indicate if destructive Artisan commands should be prohibited.
  122. *
  123. * Prohibits: db:wipe, migrate:fresh, migrate:refresh, migrate:reset, and migrate:rollback
  124. *
  125. * @param bool $prohibit
  126. * @return void
  127. */
  128. public static function prohibitDestructiveCommands(bool $prohibit = true)
  129. {
  130. FreshCommand::prohibit($prohibit);
  131. RefreshCommand::prohibit($prohibit);
  132. ResetCommand::prohibit($prohibit);
  133. RollbackCommand::prohibit($prohibit);
  134. WipeCommand::prohibit($prohibit);
  135. }
  136. /**
  137. * Get the registered name of the component.
  138. *
  139. * @return string
  140. */
  141. protected static function getFacadeAccessor()
  142. {
  143. return 'db';
  144. }
  145. }