Inhaltsverzeichnis
php导入sql文件
Heim php教程 php手册 php导入sql文件

php导入sql文件

Jun 13, 2016 am 09:26 AM
文件

php导入sql文件

php导入sql文件

sql php


php导入sql文件

基本思路

1.打开sql文件,放入一个变量(字符串类型)当中

2.使用正则替换掉当中的注释(“--”与“/**/”)

3.使用explode分割成为一个数组并去除每行的空格

4.链接数据库之后使用my_query()执行sql

代码

<ol class="linenums"><li class="L0"><code class="language-php"><?php</code><li class="L1"><code class="language-php"></code><li class="L2"><code class="language-php">// &#43;------------------------------------------------------------------------------------------</code><li class="L3"><code class="language-php">// | Author: longDD <longdd_love@163.com></code><li class="L4"><code class="language-php">// &#43;------------------------------------------------------------------------------------------</code><li class="L5"><code class="language-php">// | There is no true,no evil,no light,there is only power.</code><li class="L6"><code class="language-php">// &#43;------------------------------------------------------------------------------------------</code><li class="L7"><code class="language-php">// | Description: import sql Dates: 2014-08-07</code><li class="L8"><code class="language-php">// &#43;------------------------------------------------------------------------------------------</code><li class="L9"><code class="language-php"></code><li class="L0"><code class="language-php"></code><li class="L1"><code class="language-php">class ImportSql </code><li class="L2"><code class="language-php">{</code><li class="L3"><code class="language-php"></code><li class="L4"><code class="language-php">    /** @var $content 数据库连接 */</code><li class="L5"><code class="language-php">    protected $connect = null;</code><li class="L6"><code class="language-php">    /** @var $db 数据库对象 */</code><li class="L7"><code class="language-php">    protected $db = null;</code><li class="L8"><code class="language-php">    /** @var $sqlFile sql文件 */</code><li class="L9"><code class="language-php">    public $sqlFile = "";</code><li class="L0"><code class="language-php">    /** @array @sqlArr sql语句数组 */</code><li class="L1"><code class="language-php">    public $sqlArr = array();</code><li class="L2"><code class="language-php"></code><li class="L3"><code class="language-php">    /** </code><li class="L4"><code class="language-php">     * 构造函数</code><li class="L5"><code class="language-php">     * </code><li class="L6"><code class="language-php">     * @param string $host 主机地址</code><li class="L7"><code class="language-php">     * @param string $user 用户名</code><li class="L8"><code class="language-php">     * @param string $pw 密码</code><li class="L9"><code class="language-php">     * @param $db_name 数据库名称</code><li class="L0"><code class="language-php">     * @return void</code><li class="L1"><code class="language-php">     */</code><li class="L2"><code class="language-php">    public function __construct($host, $user, $pw, $db_name) </code><li class="L3"><code class="language-php">    {</code><li class="L4"><code class="language-php">        /** 连接数据库 */</code><li class="L5"><code class="language-php">        $this->connect = mysql_connect($host, $user, $pw) or die("Could not connect: " . mysql_error());</code><li class="L6"><code class="language-php">        /** 选中数据库 */</code><li class="L7"><code class="language-php">        $this->db = mysql_select_db($db_name, $this->connect) or die("Yon can not select the table:" . mysql_error());</code><li class="L8"><code class="language-php">    }</code><li class="L9"><code class="language-php"></code><li class="L0"><code class="language-php">    /** </code><li class="L1"><code class="language-php">     * 导入sql文件</code><li class="L2"><code class="language-php">     * </code><li class="L3"><code class="language-php">     * @param string $url 文件路径</code><li class="L4"><code class="language-php">     * @return true 导入成返回true</code><li class="L5"><code class="language-php">     */</code><li class="L6"><code class="language-php">    public function Import($url) </code><li class="L7"><code class="language-php">    {</code><li class="L8"><code class="language-php">        if(!file_exists($url))</code><li class="L9"><code class="language-php">        {</code><li class="L0"><code class="language-php">            exit("文件不存在!");</code><li class="L1"><code class="language-php">        }</code><li class="L2"><code class="language-php"></code><li class="L3"><code class="language-php">        $this->sqlFile = file_get_contents($url);</code><li class="L4"><code class="language-php"></code><li class="L5"><code class="language-php">        if (!$this->sqlFile) </code><li class="L6"><code class="language-php">        {</code><li class="L7"><code class="language-php">            exit("打开文件错误!");</code><li class="L8"><code class="language-php">        } </code><li class="L9"><code class="language-php">        else </code><li class="L0"><code class="language-php">        {</code><li class="L1"><code class="language-php">            $this->GetSqlArr();</code><li class="L2"><code class="language-php"></code><li class="L3"><code class="language-php">            if ($this->Runsql()) </code><li class="L4"><code class="language-php">            {</code><li class="L5"><code class="language-php">                return true;</code><li class="L6"><code class="language-php">            }</code><li class="L7"><code class="language-php">        }</code><li class="L8"><code class="language-php">    }</code><li class="L9"><code class="language-php"></code><li class="L0"><code class="language-php">    /**</code><li class="L1"><code class="language-php">     * 获取sql语句数组</code><li class="L2"><code class="language-php">     * </code><li class="L3"><code class="language-php">     * @return void</code><li class="L4"><code class="language-php">     */</code><li class="L5"><code class="language-php">    public function GetSqlArr() </code><li class="L6"><code class="language-php">    {</code><li class="L7"><code class="language-php">        /** 去除注释 */</code><li class="L8"><code class="language-php">        $str = $this->sqlFile;</code><li class="L9"><code class="language-php">        $str = preg_replace('/--.*/i', '', $str);</code><li class="L0"><code class="language-php">        $str = preg_replace('/\/\*.*\*\/(\;)?/i', '', $str);</code><li class="L1"><code class="language-php"></code><li class="L2"><code class="language-php">        /** 去除空&#26684; 创建数组 */</code><li class="L3"><code class="language-php">        $str = explode(";\n", $str);</code><li class="L4"><code class="language-php"></code><li class="L5"><code class="language-php">        foreach ($str as $v) </code><li class="L6"><code class="language-php">        {</code><li class="L7"><code class="language-php">            $v = trim($v);</code><li class="L8"><code class="language-php"></code><li class="L9"><code class="language-php">            if (empty($v)) </code><li class="L0"><code class="language-php">            {</code><li class="L1"><code class="language-php">                continue;</code><li class="L2"><code class="language-php">            } </code><li class="L3"><code class="language-php">            else </code><li class="L4"><code class="language-php">            {</code><li class="L5"><code class="language-php">                $this->sqlArr[] = $v;</code><li class="L6"><code class="language-php">            }</code><li class="L7"><code class="language-php">        }</code><li class="L8"><code class="language-php">    }</code><li class="L9"><code class="language-php"></code><li class="L0"><code class="language-php">    /**</code><li class="L1"><code class="language-php">     * 执行sql文件</code><li class="L2"><code class="language-php">     * </code><li class="L3"><code class="language-php">     * @return true 执行成功返回true</code><li class="L4"><code class="language-php">     */</code><li class="L5"><code class="language-php">    public function RunSql() </code><li class="L6"><code class="language-php">    {</code><li class="L7"><code class="language-php">        /** 开启事务 */</code><li class="L8"><code class="language-php">        if (mysql_query('BEGIN'))</code><li class="L9"><code class="language-php">        {</code><li class="L0"><code class="language-php">            foreach ($this->sqlArr as $k => $v)</code><li class="L1"><code class="language-php">            {</code><li class="L2"><code class="language-php">                if (!mysql_query($v)) </code><li class="L3"><code class="language-php">                {</code><li class="L4"><code class="language-php">                    /** 回滚 */</code><li class="L5"><code class="language-php">                    mysql_query('ROLLBACK');</code><li class="L6"><code class="language-php"></code><li class="L7"><code class="language-php">                    exit("sql语句错误:第" . $k . "行" . mysql_error());</code><li class="L8"><code class="language-php">                }</code><li class="L9"><code class="language-php">            }</code><li class="L0"><code class="language-php"></code><li class="L1"><code class="language-php">            /** 提交事务 */</code><li class="L2"><code class="language-php">            mysql_query('COMMIT');</code><li class="L3"><code class="language-php">            return true;</code><li class="L4"><code class="language-php">        }</code><li class="L5"><code class="language-php">        else</code><li class="L6"><code class="language-php">        {</code><li class="L7"><code class="language-php">            exit('无法开启事务!');</code><li class="L8"><code class="language-php">        }</code><li class="L9"><code class="language-php">    }</code><li class="L0"><code class="language-php"></code><li class="L1"><code class="language-php">}</code><li class="L2"><code class="language-php"></code><li class="L3"><code class="language-php">// &#43;------------------------------------------------------------------------------------------</code><li class="L4"><code class="language-php">// | End of ImportSql class</code><li class="L5"><code class="language-php">// &#43;------------------------------------------------------------------------------------------</code><li class="L6"><code class="language-php"></code><li class="L7"><code class="language-php"></code><li class="L8"><code class="language-php">/**</code><li class="L9"><code class="language-php">* This is a example.</code><li class="L0"><code class="language-php">*/</code><li class="L1"><code class="language-php"></code><li class="L2"><code class="language-php">header("Content-type:text/html;charset=utf-8");</code><li class="L3"><code class="language-php"></code><li class="L4"><code class="language-php">$sql = new ReadSql("localhost", "root", "", "log_db");</code><li class="L5"><code class="language-php"></code><li class="L6"><code class="language-php">$rst = $sql->Import("./log_db.sql");</code><li class="L7"><code class="language-php"></code><li class="L8"><code class="language-php">if ($rst) </code><li class="L9"><code class="language-php">{</code><li class="L0"><code class="language-php">   echo "Success!";</code><li class="L1"><code class="language-php">}</code><li class="L2"><code class="language-php"></code><li class="L3"><code class="language-php">// &#43;------------------------------------------------------------------------------------------</code><li class="L4"><code class="language-php">// | End of file ImportSql.php</code><li class="L5"><code class="language-php">// &#43;------------------------------------------------------------------------------------------</code><li class="L6"><code class="language-php">// | Location: ./ImportSql.php</code><li class="L7"><code class="language-php">// &#43;------------------------------------------------------------------------------------------</code>
Nach dem Login kopieren
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)
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Repo: Wie man Teamkollegen wiederbelebt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Abenteuer: Wie man riesige Samen bekommt
4 Wochen 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)

Wie kann man abgelaufene WeChat-Dateien wiederherstellen? Können abgelaufene WeChat-Dateien wiederhergestellt werden? Wie kann man abgelaufene WeChat-Dateien wiederherstellen? Können abgelaufene WeChat-Dateien wiederhergestellt werden? Feb 22, 2024 pm 02:46 PM

Öffnen Sie WeChat, wählen Sie „Einstellungen“ in „Ich“, wählen Sie „Allgemein“ und dann „Speicherplatz“, wählen Sie „Verwaltung“ unter „Speicherplatz“, wählen Sie die Konversation aus, in der Sie Dateien wiederherstellen möchten, und wählen Sie das Ausrufezeichen-Symbol aus. Tutorial Anwendbares Modell: iPhone13 System: iOS15.3 Version: WeChat 8.0.24 Analyse 1 Öffnen Sie zunächst WeChat und klicken Sie auf der Seite „Mein“ auf die Option „Einstellungen“. 2 Suchen Sie dann auf der Einstellungsseite nach „Allgemeine Optionen“ und klicken Sie darauf. 3Klicken Sie dann auf der allgemeinen Seite auf Speicherplatz. 4 Klicken Sie anschließend auf der Seite „Speicherplatz“ auf „Verwalten“. 5Wählen Sie abschließend die Konversation aus, in der Sie Dateien wiederherstellen möchten, und klicken Sie rechts auf das Ausrufezeichen-Symbol. Ergänzung: WeChat-Dateien verfallen in der Regel nach einigen Tagen. Wenn die von WeChat empfangene Datei nicht angeklickt wurde, löscht das WeChat-System sie nach 72 Stunden.

Die Vorbereitung zur Entfernung dauert unter Windows 11/10 lange Die Vorbereitung zur Entfernung dauert unter Windows 11/10 lange Feb 19, 2024 pm 07:42 PM

In diesem Artikel stellen wir vor, wie Sie das Problem der Meldung „Bereit zum Löschen“ beim Löschen von Dateien oder Ordnern im Windows-System lösen können. Diese Eingabeaufforderung bedeutet, dass das System einige Hintergrundvorgänge ausführt, z. B. die Überprüfung der Dateiberechtigungen, die Überprüfung, ob die Datei von anderen Programmen belegt ist, die Berechnung der Größe des zu löschenden Elements usw. Wir stellen Ihnen einige Problemumgehungen zur Verfügung, um sicherzustellen, dass Sie Ihre Dateien erfolgreich löschen können, ohne zu lange warten zu müssen. Warum dauert es so lange, bis Windows Dateien löscht? Die Zeit, die Windows benötigt, um eine Datei zum Löschen vorzubereiten, wird von einer Vielzahl von Faktoren beeinflusst, darunter Dateigröße, Geschwindigkeit des Speichergeräts und Hintergrundprozesse. Eine lange oder hängengebliebene Eingabeaufforderung „Löschen wird vorbereitet“ kann auf unzureichende Systemressourcen, Festplattenfehler oder Dateisystemprobleme hinweisen. existieren

Fotos können diese Datei nicht öffnen, da das Format nicht unterstützt wird oder die Datei beschädigt ist Fotos können diese Datei nicht öffnen, da das Format nicht unterstützt wird oder die Datei beschädigt ist Feb 22, 2024 am 09:49 AM

Unter Windows ist die Fotos-App eine bequeme Möglichkeit, Fotos und Videos anzuzeigen und zu verwalten. Über diese Anwendung können Benutzer problemlos auf ihre Multimediadateien zugreifen, ohne zusätzliche Software installieren zu müssen. Allerdings kann es bei Benutzern manchmal zu Problemen kommen, wie z. B. der Fehlermeldung „Diese Datei kann nicht geöffnet werden, da das Format nicht unterstützt wird“ bei der Verwendung der Fotos-App oder einer Dateibeschädigung beim Versuch, Fotos oder Videos zu öffnen. Diese Situation kann für Benutzer verwirrend und unbequem sein und erfordert einige Untersuchungen und Korrekturen, um die Probleme zu beheben. Benutzern wird die folgende Fehlermeldung angezeigt, wenn sie versuchen, Fotos oder Videos in der Fotos-App zu öffnen. Fotos können diese Datei leider nicht öffnen, da das Format oder die Datei derzeit nicht unterstützt wird

Können Dateien im Tmp-Format gelöscht werden? Können Dateien im Tmp-Format gelöscht werden? Feb 24, 2024 pm 04:33 PM

TMP-Formatdateien sind ein temporäres Dateiformat, das normalerweise von einem Computersystem oder Programm während der Ausführung generiert wird. Der Zweck dieser Dateien besteht darin, temporäre Daten zu speichern, um die ordnungsgemäße Ausführung des Programms zu unterstützen oder die Leistung zu verbessern. Sobald die Programmausführung abgeschlossen ist oder der Computer neu gestartet wird, werden diese tmp-Dateien häufig nicht mehr benötigt. Daher sind Dateien im Tmp-Format grundsätzlich löschbar. Darüber hinaus kann das Löschen dieser tmp-Dateien Festplattenspeicher freigeben und den normalen Betrieb des Computers gewährleisten. Bevor wir jedoch Dateien im Tmp-Format löschen, müssen wir dies tun

Wie übertrage ich Dateien von Quark Cloud Disk auf Baidu Cloud Disk? Wie übertrage ich Dateien von Quark Cloud Disk auf Baidu Cloud Disk? Mar 14, 2024 pm 02:07 PM

Quark Netdisk und Baidu Netdisk sind derzeit die am häufigsten verwendete Netdisk-Software zum Speichern von Dateien. Wenn Sie die Dateien in Quark Netdisk auf Baidu Netdisk speichern möchten, wie gehen Sie vor? In dieser Ausgabe hat der Herausgeber die Tutorial-Schritte zum Übertragen von Dateien vom Quark Network Disk-Computer auf die Baidu Network Disk zusammengestellt. Werfen wir einen Blick auf die Bedienung. Wie speichere ich Quark-Netzwerkfestplattendateien auf einer Baidu-Netzwerkfestplatte? Um Dateien von Quark Network Disk auf Baidu Network Disk zu übertragen, müssen Sie zunächst die erforderlichen Dateien von Quark Network Disk herunterladen, dann den Zielordner im Baidu Network Disk-Client auswählen und ihn öffnen. Ziehen Sie dann die von Quark Cloud Disk heruntergeladenen Dateien per Drag & Drop in den vom Baidu Cloud Disk-Client geöffneten Ordner oder verwenden Sie die Upload-Funktion, um die Dateien zu Baidu Cloud Disk hinzuzufügen. Überprüfen Sie nach Abschluss des Uploads unbedingt, ob die Datei erfolgreich in Baidu Cloud Disk übertragen wurde. Das ist es

Was tun, wenn der Fehlercode 0x80004005 angezeigt wird? Der Editor zeigt Ihnen, wie Sie den Fehlercode 0x80004005 beheben können. Was tun, wenn der Fehlercode 0x80004005 angezeigt wird? Der Editor zeigt Ihnen, wie Sie den Fehlercode 0x80004005 beheben können. Mar 21, 2024 pm 09:17 PM

Wenn Sie einen Ordner auf Ihrem Computer löschen oder dekomprimieren, wird manchmal das Dialogfeld „Fehler 0x80004005: Nicht spezifizierter Fehler“ angezeigt. Wie können Sie diese Situation lösen? Es gibt tatsächlich viele Gründe, warum der Fehlercode 0x80004005 angezeigt wird, aber die meisten davon werden durch Viren verursacht. Wir können die DLL erneut registrieren, um das Problem zu lösen. Nachfolgend erklärt Ihnen der Editor die Erfahrung beim Umgang mit dem Fehlercode 0x80004005 . Einige Benutzer erhalten bei der Verwendung ihres Computers den Fehlercode 0X80004005. Der Fehler 0x80004005 wird hauptsächlich dadurch verursacht, dass der Computer bestimmte Dynamic Link Library-Dateien nicht korrekt registriert oder dass eine Firewall keine HTTPS-Verbindungen zwischen dem Computer und dem Internet zulässt. Wie wäre es also?

Hochladen fehlgeschlagen, Datei darf nicht leer sein, inkonsistenter Fehler Hochladen fehlgeschlagen, Datei darf nicht leer sein, inkonsistenter Fehler Feb 19, 2024 pm 01:21 PM

Discorde ist eine beliebte Dateifreigabeplattform, aber beim Hochladen von Dateien kann es bei Benutzern zu Fehlern wie einem Upload-Fehler und der Meldung kommen, dass die Datei nicht leer sein darf. Obwohl es noch keine eindeutige Erklärung gibt, können diese Fehler zufällig auftreten und das Hochladen bestimmter Dateien oder sogar das erneute Hochladen zuvor gesendeter Dateien verhindern. Fehler beim Hochladen fehlgeschlagen, Datei darf nicht leer sein: Inkonsistenzfehler Es kann frustrierend sein, wenn beim Hochladen ein Fehler auftritt, wenn ein Upload fehlschlägt. Hier sind einige Lösungsvorschläge, von denen wir hoffen, dass sie Ihnen helfen. Funktioniert für iOS- und Android-Benutzer. Dateien überprüfen. Dateien vor der Freigabe komprimieren. Inkonsistenz aktualisieren/neu installieren. 1] Funktioniert für iOS- und Android-Benutzer. Bei iPhone- und Android-Benutzern schlägt das Hochladen von Dateien mit einer Fehlermeldung fehl

Was ist die Datei hiberfil.sys? Kann hiberfil.sys gelöscht werden? Was ist die Datei hiberfil.sys? Kann hiberfil.sys gelöscht werden? Mar 15, 2024 am 09:49 AM

Vor kurzem haben viele Internetnutzer den Herausgeber gefragt: Was ist die Datei hiberfil.sys? Kann hiberfil.sys viel Speicherplatz auf Laufwerk C beanspruchen und gelöscht werden? Der Editor kann Ihnen mitteilen, dass die Datei hiberfil.sys gelöscht werden kann. Werfen wir einen Blick auf die Details unten. hiberfil.sys ist eine versteckte Datei im Windows-System und auch eine System-Ruhezustandsdatei. Es wird normalerweise im Stammverzeichnis des Laufwerks C gespeichert und seine Größe entspricht der Größe des installierten Speichers des Systems. Diese Datei wird verwendet, wenn sich der Computer im Ruhezustand befindet, und enthält die Speicherdaten des aktuellen Systems, damit dieser bei der Wiederherstellung schnell wieder in den vorherigen Zustand versetzt werden kann. Da seine Größe der Speicherkapazität entspricht, nimmt er möglicherweise mehr Festplattenspeicher ein. hiber

See all articles