91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

MySQL追加注釋或者大量修改注釋的方法

發布時間:2021-09-16 16:15:49 來源:億速云 閱讀:205 作者:chen 欄目:MySQL數據庫

這篇文章主要講解了“MySQL追加注釋或者大量修改注釋的方法”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“MySQL追加注釋或者大量修改注釋的方法”吧!

MySQL 5.6.14

之前一個項目比較倉促,開發給的建表語句沒有注釋.
現在要補全注釋信息.
但是MySQL后期追加注釋比較麻煩
需要使用modify語法。

只要不小心寫錯一點,就可能導致表結構的變更,而不是注釋的變更.

實驗表如下:

  1. create table t(  

  2.     c1 int primary key auto_increment,  

  3.     c2 char(20) not null default 'c2'  comment 'c2的注釋',  

  4.     c3 date default '2016-01-25' comment 'date類型測試',  

  5.     c4 varchar(20) not null default '' ,  

  6.     c5 bigint ,  

  7.     c6 text comment 'text測試',  

  8.     c7 timestamp not null default on update not null default now()  

  9. );  



通過如下的SQL,解析元數據信息,可以直接顯示modify的內容.
追加或者修改注釋之后,執行語句即可.
這樣可以避免人為的失誤.

  1. SELECT     

  2. concat(    

  3.     'alter table ',     

  4.     table_schema, '.', table_name,     

  5.     ' modify column ', column_name, ' ', column_type, ' ',     

  6.     if(is_nullable = 'YES', ' ', 'not null '),     

  7.     if(column_default IS NULL, '',     

  8.         if(    

  9.             data_type IN ('char', 'varchar')     

  10.             OR     

  11.             data_type IN ('date', 'datetime', 'timestamp') AND column_default != 'CURRENT_TIMESTAMP',     

  12.             concat(' default ''', column_default,''''),     

  13.             concat(' default ', column_default)    

  14.         )    

  15.     ),     

  16.     if(extra is null or extra='','',concat(' ',extra)),  

  17.     ' comment ''', column_comment, ''';'    

  18. ) s    

  19. FROM information_schema.columns    

  20. WHERE table_schema = 'test'    

  21.     AND table_name = 't'   



以實驗表為例,生成的modify語句如下.

  1. alter table test.t modify column c1 int(11) not null  auto_increment comment '';  

  2. alter table test.t modify column c2 char(20) not null  default 'c2' comment 'c2的注釋';  

  3. alter table test.t modify column c3 date   default '2016-01-25' comment 'date類型測試';  

  4. alter table test.t modify column c4 varchar(20) not null  default '' comment '';  

  5. alter table test.t modify column c5 bigint(20)   comment '';  

  6. alter table test.t modify column c6 text   comment 'text測試';  

  7. alter table test.t modify column c7 timestamp not null  default on update '';  

  8. alter table test.t modify column c8 datetime not null  default '';  

感謝各位的閱讀,以上就是“MySQL追加注釋或者大量修改注釋的方法”的內容了,經過本文的學習后,相信大家對MySQL追加注釋或者大量修改注釋的方法這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

梁平县| 晋城| 丹东市| 阳谷县| 房产| 高清| 大邑县| 土默特右旗| 中江县| 平湖市| 伊宁市| 延津县| 屏东市| 台州市| 武鸣县| 静乐县| 徐汇区| 棋牌| 高密市| 福清市| 遵义县| 互助| 益阳市| 当雄县| 施秉县| 景泰县| 三都| 宁晋县| 柞水县| 冷水江市| 高淳县| 深泽县| 宜兰县| 汨罗市| 灵璧县| 新源县| 余江县| 金塔县| 正蓝旗| 海口市| 南开区|