1. 程式人生 > >phpl判斷mysq資料庫中的某個資料表是否存在的方法總結

phpl判斷mysq資料庫中的某個資料表是否存在的方法總結

注意:以下都是在ThinkPHP框架中進行測試

方式1

通過查詢MySQL的配置表資訊

//TABLE_SCHEMA:表示資料庫名 , TABLE_NAME : 表示表名  
$sql = "SELECT count(*) FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA='database_name' and TABLE_NAME = 'table_name'";   
$model = new \Think\Model();  
$res = $model->query($sql);
$isExist = $res[0];

方式2

查詢指定資料中的所有資料表,然後比較查詢的資料表是否存在

//檢測表是否存在
function tableExist($tableName){
    if(empty($tableName)) return false;
    $tableName = C('DB_PREFIX').$tableName;
    $model = new \Think\Model();
    $tableArr = $model->query('SHOW TABLES');
    $_fName = 'tables_in_'.C('DB_NAME');
    return in_array($tableName, array_column($tableArr, $_fName));
}

相關推薦

phpl判斷mysq資料庫某個資料是否存在的方法總結

注意:以下都是在ThinkPHP框架中進行測試 方式1 通過查詢MySQL的配置表資訊 //TABLE_SCHEMA:表示資料庫名 , TABLE_NAME : 表示表名 $sql = "SEL

『PHP學習筆記』系列七:讀取MySQL資料庫資料

資料表結構: 資料表資料:  從 MySQL 資料庫讀取資料:  SELECT 語句用於從資料表中讀取資料: SELECT column_name(s) FROM table_name 我們可以使用 * 號來讀取所有資料表中的欄位: SEL

孤荷凌寒自學python第四十七天通用跨資料庫同一資料庫複製資料函式

孤荷凌寒自學python第四十七天通用跨資料庫同一資料庫中複製資料表函式   (完整學習過程螢幕記錄視訊地址在文末) 今天繼續建構自感覺用起來順手些的自定義模組和類的程式碼。 今天打算完成的是通用的(至少目前操作四種資料庫)在同一資料庫內複製資料表的方法函式。   此設想最初我

孤荷凌寒自學python第四十八天通用同一資料庫複製資料函式最終完成

孤荷凌寒自學python第四十八天通用同一資料庫中複製資料表函式最終完成   (完整學習過程螢幕記錄視訊地址在文末) 今天繼續建構自感覺用起來順手些的自定義模組和類的程式碼。 今天經過反覆折騰,最終基本上算是比較好地完成了這個在同一資料庫中複製資料表的函式,且同一函式支援目前研究的四種資料庫

MySQL資料庫資料的操作命令

檢視當前資料庫中所有表 show tables; 查看錶結構 desc 表名; 建立表 auto_increment表示自動增長 CREATE TABLE table_name( column1 datatype contrai, column2 da

SQL 讀取資料庫所有資料的所有約束型別名稱和預設值

--設計初衷:轉換簡體版本的資料表到繁體版本--使用遊標查詢所有使用者資料表Declare @CurrentTableName nvarchar(250)Declare UserTableCursor Cursor For    --宣告遊標Select name From

C判斷Mysql資料庫是否存在

先佔位,以後編輯 有四種方式進行判斷: 1. SHOW TABLES LIKE 'testtable';  這種方法在程式碼中不易實現.2. select TABLE_NAME from INFORMATION_SCHEMA.TABLES whereTABLE_SCHEMA

java實現k-means演算法(用的鳶尾花iris的資料集,從mysq資料庫讀取資料

k-means演算法又稱k-均值演算法,是機器學習聚類演算法中的一種,是一種基於形心的劃分方法,其中每個簇的中心都用簇中所有物件的均值來表示。其思想如下: 輸入: k:簇的數目;D:包含n個物件的資料集。輸出:k個簇的集合。 方法: 從D中隨機選擇幾個物件作為起始質心

資料庫資料之間的關係

主鍵:能夠唯一表示資料表中的每個記錄的欄位或者欄位的組合就稱為主鍵。一個主鍵是唯一識別一個表的每一行記錄,但這只是其作用的一療分,主鍵的主要作用是將記錄和存放在其他表中的資料進行關聯,在這一點上,主鍵是不同表中各記錄間的簡單指標,主鍵約整就是確定表中的每一條記錄,主鍵不能是

用sql獲取資料庫所有的名的方法

1、oracle下:select table_name from all_tables; 2、MySQL下:select table_name from information_schema.tables where table_schema='csdb' and table_type='base

例項介紹刪除資料庫重複資料的幾個方法

作者: ddvip,  出處:IT專家網論壇, 責任編輯: 陳子琪, 2009-09-24 07:00   例項介紹刪除資料庫中重複資料的兩個方法:   第一個方法:   declare @max integer ,@id integer   declare c

資料庫某個某個欄位的值是用逗號隔開的多個值,根據逗號拆分並從另一個查出資料返回

有兩個表A,B,表結構如下: A表 B表 關聯關係說明如下: (1)A.hospital_catalog=B.id (2)A表中hospital_catalog欄位的值是以 逗號 “,” 隔開,且兩邊用中括號“[ ]”包起,

更改oracle資料庫某個某個欄位的資料型別和長度

不廢話需求:在plsql中更改oracle資料庫中的info_agency表中的county欄位的資料型別 為varchar 長度為255實現:alter TABLE INFO_AGENCY MODIFY (county VARCHAR(255));親用 則 可用

mysql如何查詢某個資料時間最新的多條資料

通過t_test表的time欄位來比較。 SELECT a.* FROM t_test a WHERE NOT EXISTS(SELECT 1 FROM t_test b WHERE b.tim

【gp資料庫】查詢函式引用資料資訊

函式指令碼寫得多了,再想統計整理用到的表資訊十分麻煩。甚至存在歷史資料表不再使用的情況,所以需要根據條件對函式引用表資訊進行統計。本篇介紹我常用的指令碼。 1. 查詢某資料表在哪些函式中引用過  select  proname from pg_proc  w

如何遍歷資料庫資料(在不知道資料庫名和名的情況下)

    玩轉資料庫的元資訊操作,主要是兩個類:  * 1) DatabaseMetaData類: 包含驅動資訊、資料庫名、表名(檢視、儲存過程等)  *     通過con.getMetaData()可獲得一個DatabaseMetaData類物件  * 2) ResultS

通過 mysq + 連線池 來獲取資料庫資料的模組

var pool = require('mysql').createPool({ port:'3306', user:'root', //登入名 一般為root password:'root', //登入密碼 一般為root database:'cfp', //

資料庫兩張之間的資料同步實現思路(增加、刪除、更新)Mysql、sqlserver

分別建立增加、刪除、更新的觸發器(Trigger)來達到兩張表之間資料同步的目的。 1:資料同步增加:如有兩張表——A表和B表,建立觸發器使當A表插入資料後B表也同步插入資料。其中B表插入資料的欄位需要同A表中的欄位相對應。 CREATE TRIGGER 觸發器名稱 ON A表 AFTER INSERT

統計各個資料庫的各個資料的總數,然後寫入到excel

package com.fline.aic.excel; import java.io.File; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException

SQLSERVER查詢整個資料庫某個特定值所在的和欄位的方法

做專案中前些天要手動改資料庫中的一些欄位的值,但發現這個欄位可能會被資料庫中其他的很多張表引用,於是就得想辦法查詢出該條記錄的所有引用的表和欄位,下面的儲存過程可以查詢出整個資料庫中某個特定值所在的表和欄位。 ↓雙擊程式碼段選中複製↓注意修改資料型別xtype 1