當前位置:首頁 » 編程語言 » php生成sql

php生成sql

發布時間: 2022-06-08 22:03:03

❶ 如何實現php自動創建資料庫

你做好程序以後,把資料庫導出成sql文件
1、連接資料庫
2、讀取這個sql文件里的sql語句,並執行
3、生成一個資料庫連接參數的php文件
<?php
$con=mysql_connect("localhost","peter","abc123");
if(!$con)
{
die('Couldnotconnect:'.mysql_error());
}

if(mysql_query("CREATEDATABASEmy_db",$con))
{
echo"Databasecreated";
}
else
{
echo"Errorcreatingdatabase:".mysql_error();
}

mysql_close($con);
?>

<?php
classReadSql{
//資料庫連接
protected$connect=null;
//資料庫對象
protected$db=null;
//sql文件
public$sqlFile="";
//sql語句集
public$sqlArr=array();
publicfunction__construct($host,$user,$pw,$db_name){
$host=empty($host)?C("DB_HOST"):$host;
$user=empty($user)?C("DB_USER"):$user;
$pw=empty($pw)?C("DB_PWD"):$pw;
$db_name=empty($db_name)?C("DB_NAME"):$db_name;
//連接資料庫
$this->connect=mysql_connect($host,$user,$pw)ordie("Couldnotconnect:".mysql_error());
$this->db=mysql_select_db($db_name,$this->connect)ordie("Yoncannotselectthetable:".mysql_error());
}
//導入sql文件
publicfunctionImport($url){
$this->sqlFile=file_get_contents($url);
if(!$this->sqlFile){
exit("打開文件錯誤");
}else{
$this->GetSqlArr();
if($this->Runsql()){
returntrue;
}
}
}
//獲取sql語句數組
publicfunctionGetSqlArr(){
//去除注釋
$str=$this->sqlFile;
$str=preg_replace('/--.*/i','',$str);
$str=preg_replace('//*.**/(;)?/i','',$str);
//去除空格創建數組
$str=explode("; ",$str);
foreach($stras$v){
$v=trim($v);
if(empty($v)){
continue;
}else{
$this->sqlArr[]=$v;
}
}
}
//執行sql文件
publicfunctionRunSql(){
foreach($this->sqlArras$k=>$v){
if(!mysql_query($v)){
exit("sql語句錯誤:第".$k."行".mysql_error());
}
}
returntrue;
}
}
//範例:
header("Content-type:text/html;charset=utf-8");
$sql=newReadSql("localhost","root","","log_db");
$rst=$sql->Import("./log_db.sql");
if($rst){
echo"Success!";
}
?>

❷ sql如何生成sql文件

材料/工具:

1、打開資料庫

❸ php 數組分行插入sql

//判斷數組數量是否大於0
if(count($result)>0){
//合並數組值
$values=implode(")', ('",$result);
//生成SQL語句
$sql="INSERTINTO`jilu`(`id`,`num`)VALUES ('".$values."')";
//顯示SQL語句
echo$sql;
}

❹ php中的sql語句

1、很多時候我們在開發時需要將字元串與變數連接起來顯示,在PHP中,字元串之間使用 「點」 來連接,也就是英文中的半形句號" . " , " . " 是字元串連接符,可以把兩個或兩個以上的字元串鏈接成一個字元串。例如:

<?php
$name="網路知道:";
$url=".";
echo$name.$url.".com";
?>

輸出結果為:

網路知道:..com

2、php在進行資料庫查詢時,如果對象是字元串,則需要使用引號將字元串區分開,這就是上面你的第一個問題,例如,你通過POST接受到的$username值是"zhanagsan",那麼:

mysqli_query($conn,"SELECT*FROMuserWhereusername='".$username."'");

php在進行解析時就是

mysqli_query($conn,"SELECT*FROMuserWhereusername='zhangsan'");

如果你覺得這樣會讓你有點看不過來,還可以這樣寫:

mysqli_query($conn,"SELECT*FROMuserWhereusername='{$username}'");

這里的{}也是起到連接的作用。

3、應用字元串連接符號有時候沒有辦法實現大量字元串的連接,PHP允許程序員在雙引號中直接包含字元串變數,當echo語句後面使用的是 雙引號 (" ")時,可以使用下面的格式來達到相同的效果(這是你的第二個問題)。例如:

<?php
$name="網路知道:";
$url=".";
echo"$name$url.com";//雙引號里的變數同一般的字元串自動進行區分
?>

但是單引號(' ')就不可以了,這樣如果不加連接符,解析後還是字元串,例如:

<?php
$name="網路知道:";
$url=".";
echo'$name$url.com';//單引號里的變數不會同一般的字元串自動進行區分
?>

最終的輸出結果就變成了

$name$url.com//最終只是輸出變數名,是字元串

❺ php 中寫 sql語句

php中利用數組用mysql_query批量執行sql語句。
參考示例如下:
思路:這里採用一個數組.用explode
函數,將$query語句按照」;」炸開,然後循環執行即可:
$query
=
'delete
from
ecs_goods_attr
where
attr_id=11
and
goods_id=22;
insert
into
ecs_goods_attr
(goods_attr_id,goods_id,attr_id,attr_value,attr_price)values(null,33,138,"膽略",0);
update
ecs_goods
set
goods_number=10,shop_price=55
where
goods_id=33;'
$query_e
=
explode(';','$query');
foreach
($query_e
as
$k
=>$v)
{
mysql_query($query_e[$k]);
}
這樣
$query語句就被批量的執行了。

❻ mysql,php。網站要上線,要上傳資料庫數據,我現在用mysqlmp命令生成了一個.sql

是可能的。如果沒有,你應該是正確的做法。
您的關鍵字來搜索與「MYSQL備份」數據的話會非常多。來看看一些可能的,並不困難。或者去網上查找一個特定的酒吧。如果領先時錯誤根據錯誤信息去搜索,大部分問題在網上直接回答。搜索引擎是最好的老師。

如果是的話,用phpmyadmin PHP的網站可以在電腦

,然後去C:\文件和設置\所有用戶\應用數據\ MySQL或自定義數據的整個文件夾裡面資料庫文件

或備份出來使用SQL命令。 mysqlmp的

一切OK。這里是mysqlmp的使用情況,以供參考。

導出整個資料庫在MySQL資料庫中。

1導出整個資料庫

的mysqlmp-u用戶名-p資料庫名>導出的文件名

的mysqlmp-U WCNC-P smgp_apps_wcnc> wcnc.sql

2。導出表

的mysqlmp-u用戶名-p資料庫名表名>導出的文件名

的mysqlmp-U WCNC-P smgp_apps_wcnc用戶> wcnc_users。 SQL

3導出資料庫結構

的mysqlmp-U WCNC-PD - 分插表smgp_apps_wcnc> D:。 wcnc_db.sql

-D無數據 - 附加下拉表中的每個create語句前4加一滴表

。導入資料庫

常見source命令mysql資料庫到控制台,

因為MySQL-U根P 的mysql>使用資料庫

然後使用source命令,其次是該腳本文件
的mysql>源D的參數(這里使用SQL。):wcnc_db.sql

❼ php查詢資料庫生成數組,將數組拼接成sql形式

從資料庫查詢一整行取出來就是數組,沒明白你的將數組拼接成sql形式。如果你的意思是講數組轉換成字元串,這個函數是可以做到的impload()

❽ 將php語言 轉換成sql可執行語句

DROP TABLE IF EXISTS `fineness_article`;
CREATE TABLE `fineness_article` (

`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`weid` int(10) unsigned NOT NULL,
`title` varchar(100) NOT NULL DEFAULT '',
`musicurl` varchar(100) NOT NULL DEFAULT '' COMMENT '上傳音樂',
`content` mediumtext,
`credit` varchar(255) DEFAULT '0',
`pcate` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '一級分類',
`ccate` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '二級分類',
`template` varchar(300) NOT NULL DEFAULT '' COMMENT '內容模板目錄',
`templatefile` varchar(300) NOT NULL DEFAULT '' COMMENT '分類模板名稱',
`bg_music_switch` varchar(1) NOT NULL DEFAULT '1',
`kid` int(10) unsigned NOT NULL,
`rid` int(10) unsigned NOT NULL,
`type` varchar(10) NOT NULL,
`clickNum` int(10) unsigned NOT NULL DEFAULT '0',
`zanNum` int(10) unsigned NOT NULL DEFAULT '0',
`thumb` varchar(500) NOT NULL DEFAULT '' COMMENT '縮略圖',
`tel` varchar(15) NOT NULL DEFAULT '' COMMENT '縮略圖',
`description` varchar(500) NOT NULL DEFAULT '' COMMENT '簡介',
`createtime` int(10) unsigned NOT NULL DEFAULT '0',
`displayorder` tinyint(3) unsigned NOT NULL DEFAULT '0' COMMENT '排序',
`outLink` varchar(500) DEFAULT '0' COMMENT '外鏈',
`author` varchar(100) DEFAULT '' COMMENT '作者',
`iscomment` varchar(1) default '1' COMMENT '是否評論',
PRIMARY KEY (`id`),
KEY `idx_uniacid` (`weid`),
KEY `idx_pcate` (`pcate`),
KEY `idx_ccate` (`ccate`),
KEY `idx_createtime` (`createtime`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

❾ 如何利用PHP執行.SQL文件

其實很簡單,就是獲取sql文件中的內容,然後將每一句sql語句一次執行就行啦。
這是代碼

//讀取文件內容
$_sql = file_get_contents('test.sql');

$_arr = explode(';', $_sql);
$_mysqli = new mysqli(DB_HOST,DB_USER,DB_PASS);
if (mysqli_connect_errno()) {
exit('連接資料庫出錯');
}
//執行sql語句
foreach ($_arr as $_value) {
$_mysqli->query($_value.';');
}
$_mysqli->close();
$_mysqli = null;

上面text.sql是你需要執行的sql文件,DB_HOST主機名,DB_USER用戶名,DB_PASS密碼!
這只是最基本的自動執行sql文件,你還可以自定義生成資料庫的名稱,方法就是將sql文件中下面的代碼刪去

1
2
CREATE DATABASE IF NOT EXISTS 資料庫名 DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
USE 資料庫名

然後在text.php中執行所有的sql語句前添加代碼
$_mysqli->query("CREATE DATABASE IF NOT EXISTS 資料庫名 DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;");
$_mysqli->query("USE 資料庫名");

❿ 關於php中寫sql語句

是你的資料庫連接密碼不對或賬號沒填對。

熱點內容
雙子星腳本 發布:2024-05-02 12:26:01 瀏覽:141
域名如何將程序部署到伺服器 發布:2024-05-02 12:25:38 瀏覽:948
命令行編譯lex 發布:2024-05-02 12:17:25 瀏覽:60
linux讀u盤 發布:2024-05-02 11:49:37 瀏覽:782
android圖片點擊全屏 發布:2024-05-02 11:48:55 瀏覽:432
androidmvc和 發布:2024-05-02 11:48:49 瀏覽:656
兩位數密碼要試多少次能試出來 發布:2024-05-02 11:30:59 瀏覽:689
ae腳本插件表達式 發布:2024-05-02 11:26:45 瀏覽:267
手機電腦通用的伺服器 發布:2024-05-02 11:25:26 瀏覽:839
安卓b站賬號如何在ios登陸 發布:2024-05-02 11:20:29 瀏覽:198