Heim PHP-Framework Denken Sie an PHP Das thinkPHP5-Framework implementiert mehrere Datenbankverbindungen

Das thinkPHP5-Framework implementiert mehrere Datenbankverbindungen

May 31, 2021 am 09:59 AM
thinkphp5

Die folgende thinkphp-Framework-Tutorial-Kolumne stellt Ihnen das thinkPHP5-Framework vor, um Multi-Datenbank-Verbindungen und datenübergreifende Verbindungsabfragevorgänge zu realisieren. Ich hoffe, dass es für Freunde in Not hilfreich sein wird!

Die Details sind wie folgt:

1. Verbindung mit mehreren Datenbanken

Methode 1: Wenn Sie eine Verbindung zu anderen Datenbanken herstellen müssen, verwenden Sie den Db::connect() Methode zum dynamischen Herstellen einer Verbindung mit der Datenbank. Zum Beispiel: Db::connect()方法动态连接数据库,方法参数为数据库配置的数组或字符串例如:

字符串参数:

Db::connect('mysql://root:1234@127.0.0.1:3306/thinkphp#utf8');
Nach dem Login kopieren

配置数组参数:

Db::connect([
  // 数据库类型
  'type'    => 'mysql',
  // 数据库连接DSN配置
  'dsn'     => '',
  // 服务器地址
  'hostname'  => '127.0.0.1',
  // 数据库名
  'database'  => 'thinkphp',
  // 数据库用户名
  'username'  => 'root',
  // 数据库密码
  'password'  => '',
  // 数据库连接端口
  'hostport'  => '',
  // 数据库连接参数
  'params'   => [],
  // 数据库编码默认采用utf8
  'charset'   => 'utf8',
  // 数据库表前缀
  'prefix'   => 'think_',
]);
Nach dem Login kopieren

详细用法参考thinkphp5完全开发手册:https://www.kancloud.cn/manual/thinkphp5/118059

方法2:在应用配置文件里面添加多个数据库配置,例如:

'database1' => []//数据库配置数组 
'database2' => []//数据库配置数组
Nach dem Login kopieren

在需要连接时,使用Db::connect("database1")连接指定数据库,执行数据库操作时直接在连接后链式写函数,例如:

$db = Db::connect("database1");
$db->name("table")->select();
Nach dem Login kopieren

2. 跨数据库连接查询

方法1:利用Db::query("sql")方法执行sql语句,在sql语句中使用database.table

String-Parameter:

select * from database1.table1 as t1 inner join database2.table2 as t2 where t1,id=t2.id
Nach dem Login kopieren
Eine detaillierte Verwendung finden Sie in der vollständigen Entwicklung von thinkphp5 Handbuch: https://www.kancloud.cn/manual/thinkphp5/118059

Methode 2:

Fügen Sie mehrere Datenbankkonfigurationen in der Anwendungskonfigurationsdatei hinzu, zum Beispiel:

rrreee

Wenn Sie eine Verbindung herstellen müssen, verwenden Sie Db::connect( "database1")Stellen Sie eine Verbindung zur angegebenen Datenbank her und schreiben Sie Funktionen direkt nach der Verbindung, wenn Sie Datenbankoperationen ausführen, zum Beispiel:

rrreee🎜🎜 🎜2. Datenbankübergreifende Verbindungsabfrage🎜🎜🎜🎜🎜Methode 1:🎜Verwenden Sie die Methode Db::query("sql"), führen Sie die SQL-Anweisung aus und verwenden Sie database.table um die Datenbank und die Tabelle in der SQL-Anweisung anzugeben, zum Beispiel: 🎜🎜Verbinden, um Datenbank Datenbank1 abzufragen. Daten mit derselben ID in Tabelle Tabelle1 und Tabelle2 in Datenbank Datenbank2🎜rrreee🎜🎜Methode 2:🎜Verwenden Sie Schleifen, um jeweils verschiedene Datenbanken abzufragen 🎜🎜Fragen Sie nun die Daten in Datenbank1 ab, durchlaufen Sie die Abfrageergebnismenge und fragen Sie die Daten, die die Bedingungen in Datenbank2 erfüllen, separat ab.🎜🎜ps: Wenn die Beschreibung nicht korrekt ist, stellen Sie bitte Fragen🎜

Das obige ist der detaillierte Inhalt vonDas thinkPHP5-Framework implementiert mehrere Datenbankverbindungen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
Will R.E.P.O. Crossplay haben?
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Was soll ich tun, wenn ich beim Bereitstellen von thinkphp5 in Pagoda eine Fehlermeldung erhalte? Was soll ich tun, wenn ich beim Bereitstellen von thinkphp5 in Pagoda eine Fehlermeldung erhalte? Dec 19, 2022 am 11:04 AM

Lösung für den bei der Bereitstellung von thinkphp5 in Pagoda gemeldeten Fehler: 1. Öffnen Sie den Pagoda-Server, installieren Sie die PHP-Pathinfo-Erweiterung und aktivieren Sie sie. 2. Konfigurieren Sie die Datei „.access“ mit dem Inhalt „RewriteRule ^(.*)$ index.php ?s=/$1 [QSA ,PT,L]“; 3. Aktivieren Sie in der Website-Verwaltung einfach die Pseudostatik von thinkphp.

Was soll ich tun, wenn das Umschreiben der thinkphp5-URL fehlschlägt? Was soll ich tun, wenn das Umschreiben der thinkphp5-URL fehlschlägt? Dec 12, 2022 am 09:31 AM

Lösung dafür, dass das Umschreiben von thinkphp5-URLs nicht funktioniert: 1. Überprüfen Sie, ob das Modul mod_rewrite.so in der Konfigurationsdatei httpd.conf geladen ist. 2. Ändern Sie None in AllowOverride None in All. 3. Ändern Sie die Apache-Konfigurationsdatei .htaccess in „RewriteRule ^“. (.*)$ index.php [L,E=PATH_INFO:$1]“ und speichern Sie es.

So erhalten Sie die angeforderte URL in thinkphp5 So erhalten Sie die angeforderte URL in thinkphp5 Dec 20, 2022 am 09:48 AM

Methoden für thinkphp5 zum Abrufen der angeforderten URL: 1. Verwenden Sie die Methode „$request = Request::instance();“ der Klasse „\think\Request“, um die aktuellen URL-Informationen abzurufen Funktion „$request->url()“, um die vollständige URL-Adresse einschließlich des Domainnamens zu erhalten.

Was soll ich tun, wenn thinkphp5 post den Wert nicht abrufen kann? Was soll ich tun, wenn thinkphp5 post den Wert nicht abrufen kann? Dec 06, 2022 am 09:29 AM

thinkphp5-Beitrag kann keinen Wert abrufen, da TP5 die strpos-Funktion verwendet, um den app/json-String im Inhaltstypwert des Headers zu finden. Die Lösung besteht darin, den Inhaltstypwert des Headers auf app/json zu setzen.

So entfernen Sie das Titelleistensymbol von thinkphp5 So entfernen Sie das Titelleistensymbol von thinkphp5 Dec 20, 2022 am 09:24 AM

So entfernen Sie das thinkphp5-Titelleistensymbol: 1. Suchen Sie die Datei favicon.ico unter dem öffentlichen thinkphp5-Framework. 2. Löschen Sie die Datei oder wählen Sie ein anderes Bild aus, um sie in favicon.ico umzubenennen und die ursprüngliche Datei favicon.ico zu ersetzen.

Was soll ich tun, wenn thinkphp5 meldet, dass der Controller nicht existiert? Was soll ich tun, wenn thinkphp5 meldet, dass der Controller nicht existiert? Dec 06, 2022 am 10:43 AM

Lösung für die Meldung thinkphp5, dass der Controller nicht existiert: 1. Überprüfen Sie, ob der Namespace im entsprechenden Controller korrekt geschrieben ist, und ändern Sie ihn in den richtigen Namespace. 2. Öffnen Sie die entsprechende tp-Datei und ändern Sie den Klassennamen.

So fragen Sie die Daten von gestern in ThinkPHP5 ab So fragen Sie die Daten von gestern in ThinkPHP5 ab Dec 05, 2022 am 09:20 AM

So fragen Sie die Daten von gestern in ThinkPHP5 ab: 1. Öffnen Sie ThinkPHP5-bezogene Dateien. 2. Fragen Sie die Daten von gestern über den Ausdruck „db('table')->whereTime('c_time', 'yesterday')->select();“ ab .

So legen Sie Fehlermeldungen in thinkphp5 fest So legen Sie Fehlermeldungen in thinkphp5 fest Dec 07, 2022 am 10:31 AM

So legen Sie Fehleraufforderungen in thinkphp5 fest: 1. Geben Sie den öffentlichen Ordner im Projektstammverzeichnis ein und öffnen Sie die Eintragsdatei index.php. 2. Sehen Sie sich die Kommentare zum Debug-Modus-Schalter an. 3. Passen Sie den Wert der Konstante „APP_DEBUG“ an auf „true“ setzen, um eine Fehlermeldung anzuzeigen.

See all articles