當前位置:首頁 » 編程語言 » 怎麼執行sql文件

怎麼執行sql文件

發布時間: 2023-07-08 17:53:36

A. 如何利用php執行.sql文件

本篇文章是對使用PHP執行 SQL文件的實現代碼進行了詳細的分析介紹 需要的朋友參考下

demo php:

復制代碼 代碼如下: <?php /** * 讀取 sql 文件並寫入資料庫 * @version demo php */ class DBManager { var $dbHost = ; var $dbUser = ; var $dbPassword = ; var $dbSchema = ; function __construct($host $user $password $schema) { $this >dbHost = $host; $this >dbUser = $user; $this >dbPassword = $password; $this >dbSchema = $schema; } function createFromFile($sqlPath $delimiter = (;/n)|((;/r/n))|(;/r) $prefix = $menter = array( # )) { //判斷文件是否存在 if(!file_exists($sqlPath)) return false; $handle = fopen($sqlPath rb ); $sqlStr = fread($handle filesize($sqlPath)); //通過sql語法的語句分割符進行分割 $segment = explode(";" trim($sqlStr)); //var_mp($segment); //去掉注釋和多餘的空行 foreach($segment as & $statement) { $sentence = explode("/n" $statement); $newStatement = array(); foreach($sentence as $subSentence) { if( != trim($subSentence)) { //判斷是會否是注釋 $isComment = false; foreach($menter as $er) { if(eregi("^(" $er ")" trim($subSentence))) { $isComment = true; break; } } //如果不是注釋 則認為是sql語句 if(!$isComment) $newStatement[] = $subSentence; } } $statement = $newStatement; } //對表名加前綴 if( != $prefix) { //只有表名在第一行出現時才有效 例如 CREATE TABLE talbeName $regxTable = "^[/`/ /"]{ }[/_a zA Z]+[/_a zA Z ]*[/`/ /"]{ }$";//處理表名的正則表達式 $regxLeftWall = "^[/`/ /"]{ }"; $sqlFlagTree = array( "CREATE" => array( "TABLE" => array( "$regxTable" => ) ) "INSERT" => array( "INTO" => array( "$regxTable" => ) ) ); foreach($segment as & $statement) { $tokens = split(" " $statement[ ]); $tableName = array(); $this >findTableName($sqlFlagTree $tokens $tableName); if(empty($tableName[ leftWall ])) { $newTableName = $prefix $tableName[ name ]; } else{ $newTableName = $tableName[ leftWall ] $prefix substr($tableName[ name ] ); } $statement[ ] = str_replace($tableName[ name ] $newTableName $statement[ ]); } } //組合sql語句 foreach($segment as & $statement) { $newStmt = ; foreach($statement as $sentence) { $newStmt = $newStmt trim($sentence) "/n"; } $statement = $newStmt; } //用於測試 //var_mp($segment); //writeArrayToFile( data txt $segment); // self::saveByQuery($segment); return true; } private function saveByQuery($sqlArray) { $conn = mysql_connect($this >dbHost $this >dbUser $this >dbPassword); mysql_select_db($this >dbSchema); foreach($sqlArray as $sql) { mysql_query($sql); } mysql_close($conn); } private function findTableName($sqlFlagTree $tokens $tokensKey= & $tableName = array()) { $regxLeftWall = "^[/`/ /"]{ }"; if(count($tokens)<=$tokensKey) return false; if( == trim($tokens[$tokensKey])) { return self::findTableName($sqlFlagTree $tokens $tokensKey+ $tableName); } else { foreach($sqlFlagTree as $flag => $v) { if(eregi($flag $tokens[$tokensKey])) { if( ==$v) { $tableName[ name ] = $tokens[$tokensKey]; if(eregi($regxLeftWall $tableName[ name ])) { $tableName[ leftWall ] = $tableName[ name ]{ }; } return true; } else{ return self::findTableName($v $tokens $tokensKey+ & $tableName); } } } } return false; } } function writeArrayToFile($fileName $dataArray $delimiter="/r/n") { $handle=fopen($fileName "wb"); $text = ; foreach($dataArray as $data) { $text = $text $data $delimiter; } fwrite($handle $text); } //測試 $dbM = new DBManager( localhost w f test ); $dbM >createFromFile( data sql null fff_ ); ?> lishixin/Article/program/PHP/201311/21281

B. mysql 怎麼導入/執行.SQL(存儲過程)文件

方法一 進入命令行
mysql –u用戶名 –p密碼 –D資料庫<【sql腳本文件路徑全名】,示例:
mysql –uroot –p123456 -Dtest < /home/zj/create_table.sql
注意:
如果在sql腳本文件中使用了use 資料庫,則-D資料庫選項可以忽略

方法二 進入mysql的控制台後,使用source命令執行
Mysql>source 【sql腳本文件的路徑全名】 或 Mysql>\. 【sql腳本文件的路徑全名】,示例:
source /home/zj/create_table.sql

C. gbase8a如何在linux系統執行sql文件

通過gccli命令行工具客戶端,執行gccli -u用戶名 -p密碼 -Ddatabasename <sql.sql 的方式執行。

D. 如何執行大sql文件

你的電腦上裝了SQL
server
2000沒有?要是安了就用查詢分析器,在界面中打開那個文件,按F5執行,就能出結果,不過那個語言必須有對應的資料庫文件。注釋是用\*......*\加的,不是用--的方式。

E. sql 查詢分析器如何執行.sql文件

查詢分析器,
菜單-
文件-
打開,
打開你的
sql文件
即可,然後再執行。
或者
直接
使用
工具欄

打開按鈕,來裝置sql文件到查詢分析器,然後執行。

F. plsql如何執行.sql文件

plsql執行.sql文件步驟如下:

G. 怎樣執行.sql文件

執行.sql文件,可以在mysql命令行裡面執行,步驟如下:

1.使用cmd命令執行(windows下,unix或linux在的其控制台下)

2.【Mysql的bin目錄】mysql –u用戶名 –p密碼 –D資料庫<【sql腳本文件路徑全名】,示例:

D:mysqlinmysql –uroot –p123456 -Dtest

注意:

A、如果在sql腳本文件中使用了use 資料庫,則-D資料庫選項可以忽略

B、如果【Mysql的bin目錄】中包含空格,則需要使用「」包含,如:「C:Program Filesmysqlinmysql」 –u用戶名 –p密碼 –D資料庫<【sql腳本文件路徑全名】

熱點內容
ftp壓縮包怎麼導入 發布:2025-05-07 06:30:15 瀏覽:459
歐姆龍plc編程技巧 發布:2025-05-07 06:09:28 瀏覽:386
linux大寫轉小寫 發布:2025-05-07 06:09:27 瀏覽:749
怎麼識別是不是伺服器ip 發布:2025-05-07 06:00:18 瀏覽:852
壓縮榨菜 發布:2025-05-07 05:54:39 瀏覽:52
北京java招聘 發布:2025-05-07 05:51:06 瀏覽:54
網上報名參軍賬號和密碼什麼意思 發布:2025-05-07 05:48:10 瀏覽:988
壓縮機發燙原因 發布:2025-05-07 05:46:37 瀏覽:660
資料庫的範式詳解 發布:2025-05-07 05:28:48 瀏覽:76
geo數據上傳 發布:2025-05-07 05:22:30 瀏覽:653