Heim > PHP-Framework > Laravel > Hauptteil

Wie stellt Laravel5 über Freetds (Code) eine Verbindung zu SQL Server her?

不言
Freigeben: 2018-07-31 16:22:44
Original
3125 Leute haben es durchsucht

Dieser Artikel stellt Ihnen die Verbindung von Laravel5 mit SQL Server über Freetds vor. Ich hoffe, dass er Freunden in Not helfen kann.

Verwandte Versionen

Das System ist Ubuntu 16.04, die verwendete PHP-Version ist 7.0.30, SQLServer 2012, Freetds ist 0.92, Laravel5.5 und 5.4 wurden getestet

PHP-Treiber installieren

sudo apt-get install php7.0-odbc 
sudo apt install php7.0-sybase
Nach dem Login kopieren

Freetds installieren

sudo apt-get install freetds-bin freetds-common tdsodbc odbcinst unixodbc unixodbc-dev  
sudo mv /etc/odbcinst.ini /etc/odbcinst.ini.bak  
sudo cp /usr/share/tdsodbc/odbcinst.ini /etc/
Nach dem Login kopieren

Freetds konfigurieren

 sudo vim /etc/freetds/freetds.conf
Nach dem Login kopieren

Konfiguration ändern

[global]
    tds version = 8.0 # TDS version, ref <a href="http://www.freetds.org/userguide/choosingtdsprotocol.htm" target="_blank">this</a>.
    client charset = UTF-8
    text size = 20971520
[Server2012] #自定义名称,后面需要使用
    host = {yourdomain}.database.windows.net // ip地址或域名
    port = 1433
    tds version = 8.0 #8.0为2012其他自行测试
Nach dem Login kopieren

SQLSERVER testen

 TDSVER=8.0 tsql -H my_server_host -p 1433 -U my_user -P my_password -D my_database
Nach dem Login kopieren

Laravel5 konfigurieren

Öffnen config/database.phpKonfiguration in connections hinzufügen, mit sqlsrv fahren

   'mssql' => [
        'driver' => 'sqlsrv',
        'host' => 'Server2012', // 这个对应freetds.conf的配置名称
        'port' => '1433',
        'database' => env('DB_DATABASE', '数据库'),
        'username' => env('DB_USERNAME', '用户'),
        'password' => env('DB_PASSWORD', '密码'),
        'charset' => 'utf8',
        'collation' => 'utf8_unicode_ci',
        'prefix' => '',
        'strict' => false,
        'engine' => null,
    ],
Nach dem Login kopieren

Mehrere Datenbanken

Wenn Sie MySQL verwenden und einige Informationen von SQLServer für ein persönliches Projekt verwenden möchten Gründe, aber der allgemeine Ansatz besteht darin, dass das SQL-Server-System eine API schreibt, die das MySQL-System aufruft, aber dieses Mal war ich faul und habe beide
zusammen zum Modell hinzugefügt und protected $connection = 'mssql'; zur Angabe verwendet Es ist nicht erforderlich, jedes Mal eine Verbindung in den Controller zu schreiben. protected $table = 'EMPLOYEE';

Verwandte Empfehlungen:

Implementierung des Laravel-Frameworks in der Datenstatistikzeichnung

Laravel-Framework So verwenden Sie Echo

Das obige ist der detaillierte Inhalt vonWie stellt Laravel5 über Freetds (Code) eine Verbindung zu SQL Server her?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage