. 檢視所有的資料表
-- 檢視所有資料表;
show
tables
;
2. 檢視某個資料表的所有的字段
-- 檢視表student的所有字段
describe tb_watch_back;
show
columns
from tb_watch_back;
3. 查詢資料庫中某個字段以及所在的表
-- 使用 information_schema.columns查詢所有的表以及字段
select table_name,column_name from information_schema.
columns
where table_schema =
'super_star'
and column_name =
'imei'
;4. 使用儲存過程更新資料庫中某個欄位的值
-- 如果儲存過程存在就刪除
drop
procedure
ifexists update_imei;
create
procedure update_imei(
in oldimei char(15
),in newimei char(15
))begin
-- 定義迴圈條件
declare flag int
default0;
-- 儲存表名
declare tname varchar(50
);-- 查詢資料庫super_star中含有imei列的表,如果區分大小寫使用binary column_name = 'imei'
declare result cursor
forselect table_name from information_schema.
columns
where table_schema =
'super_star'
and column_name =
'imei'
;-- 退出迴圈
declare
continue
handler
for sqlstate '02000'
set flag =1;
-- 開啟游標
open result;
while flag <>1do
-- 游標指向下乙個位置,可以有多個資料,比如fetch result into tname,ttype,...;
fetch result into tname;
-- 拼接字串表名sql,根據需要使用concat函式連線
-- set @execsql = concat('select * from ',tname,' where imei = ',oldimei,' ;');
set@execsql
= concat(
'update '
,tname,
' set imei = '
,newimei,
' where imei = '
,oldimei,
' ;');
prepare stmt from
@execsql
;execute stmt;
endwhile
;end
;-- 呼叫儲存過程更新資料
call update_imei(
'888888888888888'
,'864773030025354'
);
5. 參考文章連線
select結果賦值:
字串表名轉換:
如何同時更新資料庫中所有表的相同字段
之前在做專案的過程中,有時候需要重置一下資料庫中所有表中都存在的一些相同字段,如果表少的話還可以手動更新一下,一旦表的數量過多就會變得麻煩,因此自己寫了乙個適用於oracle資料庫的sql指令碼,可以先迴圈遍歷出資料庫中的所有表,然後拿著表名迴圈,進行動態sql的執行。我這裡需要進行的操作是將所有表...
查詢資料庫中所有列名
如何從整個資料庫所有表中查詢出乙個列名?比如想要查詢乙個名為 name 的列名,但是忘記了這一列是在那乙個表中,需要從整個資料庫的所有表中進行查詢。oracle 資料庫 select from user col comments s where s.column name like name mys...
如何獲取Mysql資料庫中所有表名
歡迎加入bim行業開發交流1群 群號 711844216 小夥伴們在使用資料庫時,有時候不止需要訪問其中的乙個表,而是多個表,這個時候就需要首先獲取資料庫中的表名,然後迴圈讀取表了。sql語句 show tables from 資料庫名 using system using system.colle...