重慶分公司,新征程啟航
為企業提供網站建設、域名注冊、服務器等服務
為企業提供網站建設、域名注冊、服務器等服務
mysql的字段是不能再分的
目前創新互聯公司已為上千多家的企業提供了網站建設、域名、網頁空間、成都網站托管、企業網站設計、昭通網站維護等服務,公司將堅持客戶導向、應用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協力一起成長,共同發展。
不過對于你這樣的要求,mysql還是有支持的機制的
字段值用英文逗號分隔,比如‘未分組,VIP會員,廣東客'
查詢時select * from `table_a` where id=20 and find_in_set('未分組', group_name);
因為是原生支持的做法,mysql會對其進行優化
不知道你的時間是什么格式入庫的,我一般習慣直接$_SERVER['REQUEST_TIME']或者time(),然后讀的時候再格式化;
隨便寫一個你參考
$nowdate=date("Y-m-d");
select * from table where time='$nowdate' order by time desc limit 100
---------------------------------------
你可以做兩個text,指定天數范圍,然后循環提取
分卷導出思路:統計sql語句變量的長度,按1個字符當成1
字節比較,如果大于設定分卷大小,則寫入一個sql文件(我也不知道這樣統計是否穩當,這也是借鑒其他的人的)。
分卷導入思路:按行讀取sql文件,將每一行當作完整的sql語句存到數組再循環執行插入數據庫就可以了,但是在創建表語句分了多行,這個需要單獨處理(就這個花了我好長時間的);
?php
//宋正河
轉載請注明出處
set_time_limit(0);
header('content-type:text/html;charset=utf-8');
mysql_connect('localhost','root','root');
mysql_select_db('test');
$table_array=get_tables('test');
mysql_query('set
names
utf8');
$filesize=1024*1024*4;
$start=$_GET['start']?$_GET['start']:0;
$part=$_GET['part']?$_GET['part']:'1';
$table_index=$_GET['table_index']?$_GET['table_index']:'0';
$table=$table_array[$table_index];
$num=200000000;//這個數要足夠大,可以是總記錄數
$backupdata='';
if($start=='0'){
$query="SHOW
CREATE
TABLE
`{$table}`";
$result
=
mysql_query($query);
$row
=
mysql_fetch_row($result);
$backupdata
.=
"DROP
TABLE
IF
EXISTS
`{$table}`;\n"
.
$row[1]
.
";\n\n";
}
$limit=($start=='0')?'':"
limit
$start,$num
";
$query="select
*
from
`{$table}`
$limit
";
$result=mysql_query($query);
$numfields
=
mysql_num_fields($result);
//統計字段數
while($row=mysql_fetch_row($result)){
$comma
=
'';
//存儲逗號
$backupdata_tmp
=
"INSERT
INTO
`{$table}`
VALUES
(";
for($i=0;
$i$numfields;
$i++){
$backupdata_tmp
.=
$comma
.
"'"
.
mysql_escape_string($row[$i])
.
"'";
$comma
=
',';
}
$backupdata_tmp
.=
");\n";
if(strlen($backupdata)+strlen($backupdata_tmp)
$filesize){
//寫入文件并跳轉
$file='data/'.$table.'-'.$part.'.sql';
file_put_contents($file,$backupdata);
echo
$file.'
備份完成,程序繼續進行!';
$part++;
//分段
//表名
//起點
//跳轉
sleep(3);
echo
"scriptlocation.href='?start={$start}table_index={$table_index}part={$part}';/script";
exit;
}
$backupdata.=$backupdata_tmp;
$start++;
}
if($backupdata){
$file='data/'.$table.'-'.$part.'.sql';
file_put_contents($file,$backupdata);
}
echo
$table.'備份完成!br
/';
sleep(2);
$table_index++;
if($table_array[$table_index]){
echo
"scriptlocation.href='?table_index={$table_index}';/script";
exit;
}else{
echo
'恭喜你,數據庫備份完畢!';
}
function
get_tables($db){
$tq
=
mysql_list_tables($db);
while($tr
=
mysql_fetch_row($tq)){
$arrtb[]
=
$tr[0];
}
return
$arrtb;
}
?
以上所述就是本文的全部內容了,希望大家能夠喜歡。
用的這個版本的話,可以從phpadmin中將sql語句導出!選擇當前數據庫,在有“瀏覽,插入,導出…”等操作中選擇導出,將sql語句復制到記事本中保存,以后直接打開phpadmin頁面,將sql語句復制到sql工具欄的操作中,執行就可以了!另外你可以換版本呀!
你可以分段導入,就是把sql里的代碼分開為幾個文件(注意保持sql語句的完整性),然后一個個導入,這種方法適合本地或者服務器(畢竟服務器的配置無法隨意更改的),如果你只用于本地,那可以照樓上的方法更改配置
這個需要你在你所申請的空間內的mysql選項內
設置
自己的
數據庫用戶名稱
和
數據庫用戶名和密碼
這些數據都是需要自己填寫的。寫好后,
把
你這個用戶名賦予權限
把那些勾都打上。如果不賦予權限
你就無法安裝php程序
因為權限不夠。
數據庫的主機名稱一般式固定的
如果不知道
建議咨詢空間服務商。
字符編碼是
你的程序支持的字符
比如gbk
也就是顯示什么字體
比如
簡體中文
wordpress
數據庫表前綴,你直接更改就行
但是也可以不用更改,這個你可以到數據庫內找到wp_option這個表
注意有時候名稱可能不太一樣啊,打開這個文件,找到第1項和第40個項,把它改成你現在的路徑
就行了。