mysql 批量修改字段方法

2022-03-30 10:04:29 字數 1363 閱讀 8412

一、正式環境操作注意事項:

1、關閉應用訪問或者設定資料庫唯讀

mysql設為唯讀方法:

開啟唯讀:

mysql> show global variables like "

%read_only%

"; #檢視相關引數,off為關,on為開,預設為off

mysql> flush tables with read lock

;mysql> set

global read_only=1

;關閉唯讀:

mysql>unlock tables;

mysql> set

global read_only=0

;mysql> show global variables like "

%read_only%";

2、操作前備份資料庫

3、開始及結束檢查外來鍵引用引數

4、操作時間為晚間

二、批量修改字段型別流程

#未防止字段進行了外來鍵關聯,批量操作前臨時關閉mysql外來鍵引用,mysql內執行

mysql> set foreign_key_checks = 0

; #獲得修改語句並儲存到臨時表

mysql>use db;

mysql> create temporary table xiugai select concat( '

alter table

',table_name,'

modify column

',column_name, '

datetime(3) ;

' ) as col from information_schema.columns a where table_schema = '

ofbiz

' and data_type in ('

datetime

') ;

#檢視獲得的語句

mysql> select *from xiugai;

#mysql外執行,匯出表內容,-n不帶列名 -e執行語句

mysql -uroot -p -n -e "

select * from xiugai

" db>/home/abc/xiugai.sql

#mysql外執行,通過指令碼批量執行alter語句

mysql -uroot -p db xiugai.sql

#恢復外來鍵引用關係,mysql內執行

mysql> set foreign_key_checks = 1

;#核對外鍵引用是否開啟,mysql內執行,1代表開啟,0代表關閉

mysql> select @@foreign_key_checks;

MySQL 批量修改表和字段

mysql 的 information schema 資料庫中包含了大量的元資料,通過這些資料可以方便的獲取表和字段的資訊,通過組合這些資訊可以生成操作表和字段的 sql。本文只是為了方便自己的記錄。由於發現系統多個資料庫使用的字符集和排序方式有誤,因此要修改錯誤的這部分表,由於修改表無法直接影響 ...

mysql批量修改表字段的屬性

目的 將所有表中的 created by 欄位和 changed by 欄位的長度改為varchar 255 第一步 查出所有表中需要同時修改的字段,並且拼接出修改的sql select concat alter table table name,modify column name,varchar...

MySQL新增欄位和修改欄位的方法

2010 11 23 15 27 佚名 網際網路 字型大小 t t mysql資料庫系統相信大家都比較熟悉了,下文對新增欄位和修改欄位的方法作了詳細的說明,供您參考學習之用。ad mysql新增欄位的方法並不複雜,下面將為您詳細介紹mysql新增欄位和修改欄位等操作的實現方法,希望對您學習mysql...