我試圖找到這個問題的答案,但沒有一個答案合適。如何使用PHP檢查做了SQL數據庫已經有
我有兩個數據庫,一個有15.000.000條目,我想提取必要的數據,並將其與周圍33.000條目存儲在一個更小的數據庫。兩個數據庫同時打開。或者至少他們應該是。
雖然具有很大的數據庫打開並從中提取的條目,是可以檢查該值是否已經存在於數據庫較小某個表?我只需要一些通用的方法來檢查。
在我的代碼,我第一次打開這兩個數據庫(大者oddsnavi_push,小的是oddsnavi_baby):
$database = "oddsnavi_push";
$db_handle = mysql_connect($server, $user_name, $password);
$db_found = mysql_select_db($database, $db_handle);
$database_baby = "oddsnavi_baby";
$db_handle_baby = mysql_connect($server, $user_name, $password);
$db_found_baby = mysql_select_db($database_baby, $db_handle_baby);
然後我開始閱讀和計算oddsnavi_push數據:
$SQL_SELECT_ALL = "...giant query...";
$result_select_all = mysql_query($SQL_SELECT_ALL);
while($db_field_all = mysql_fetch_assoc($result_select_all)) {
$SQL_INSERT="INSERT INTO oddsnavi_baby.calc (id, one, two) VALUES ('$id', '$one', '$two')";
它一直工作到這一點。它將讀取的數據(id,one,two)插入到名爲calc的oddsnavi_baby表的適當列中。它在oddsnavi_baby完全爲空時正確執行。
不過,我需要如果一個條目(基於一定的「身份證」是否存在)不存在,只更新數據庫。
編輯:我會重組我的問題。從查詢結果(大數據庫),我得到字符串,爲每一行。例如$ string。如何打開第二個數據庫並檢查oddsnavi_baby.calc表是否在列事件中具有$ string值?
很難說,不知道你的代碼,你有什麼嘗試。 – kapa 2012-04-06 17:26:52
你可以創建一個presvent視圖? – dynamic 2012-04-06 17:39:19