日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

mysql初始化脚本建表_mysql新建表修改表sql脚本

發布時間:2025/3/15 数据库 19 豆豆
生活随笔 收集整理的這篇文章主要介紹了 mysql初始化脚本建表_mysql新建表修改表sql脚本 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

新建表語句:

-- -----------------------------------------------

-- 全量腳本

-- -----------------------------------------------

-- 創建表 compet_info(大賽信息)的當前表

SELECT 'Create Table compet_info-大賽信息...';

DROP TABLE IF EXISTS compet_info;

CREATE TABLE compet_info

(

serial_no ? ? ? ? ? ? ? ? ? ? ?int ? ? ? ? ? ? NOT NULL AUTO_INCREMENT,

compet_id ? ? ? ? ? ? ? ? ? ? ?varchar(100) ? ?DEFAULT ' ' ? ? ? ?,

compet_out_id ? ? ? ? ? ? ? ? ?varchar(100) ? ?DEFAULT ' ' ? ? ? ?,

create_datetime ? ? ? ? ? ? ? ?timestamp ? ? ? DEFAULT '0000-00-00 00:00:00' ,

modi_datetime ? ? ? ? ? ? ? ? ?timestamp ? ? ? DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP ,

compet_name ? ? ? ? ? ? ? ? ? ?varchar(100) ? ?DEFAULT ' ' ? ? ? ?,

compet_logo ? ? ? ? ? ? ? ? ? ?varchar(100) ? ?DEFAULT ' ' ? ? ? ?,

compet_content ? ? ? ? ? ? ? ? varchar(4000) ? DEFAULT ' ' ? ? ? ?,

compet_reward_content ? ? ? ? ?varchar(4000) ? DEFAULT ' ' ? ? ? ?,

compet_begin_time ? ? ? ? ? ? ?datetime ? ? ? ?DEFAULT sysdate() ?,

compet_end_time ? ? ? ? ? ? ? ?datetime ? ? ? ?DEFAULT sysdate() ?,

signup_begin_time ? ? ? ? ? ? ?datetime ? ? ? ?DEFAULT sysdate() ?,

signup_end_time ? ? ? ? ? ? ? ?datetime ? ? ? ?DEFAULT sysdate() ?,

is_share ? ? ? ? ? ? ? ? ? ? ? char(1) ? ? ? ? DEFAULT 0 ? ? ? ? ?,

remark ? ? ? ? ? ? ? ? ? ? ? ? varchar(2000) ? DEFAULT ' ' ? ? ? ?,

send_companyid ? ? ? ? ? ? ? ? varchar(100) ? ?DEFAULT ' ' ? ? ? ?,

target_companyid ? ? ? ? ? ? ? varchar(100) ? ?DEFAULT ' ' ? ? ? ?,

compet_status ? ? ? ? ? ? ? ? ?char(1) ? ? ? ? DEFAULT 0 ? ? ? ? ?,

businsys_no ? ? ? ? ? ? ? ? ? ?varchar(10) ? ? DEFAULT ' ' ? ? ? ?,

compet_type ? ? ? ? ? ? ? ? ? ?char(1) ? ? ? ? DEFAULT 2 ? ? ? ? ?,

archive_date ? ? ? ? ? ? ? ? ? int ? ? ? ? ? ? DEFAULT 0 ? ? ? ? ?,

archive_status ? ? ? ? ? ? ? ? char(1) ? ? ? ? DEFAULT 0 ? ? ? ? ?,

inner_send_companyid ? ? ? ? ? varchar(100) ? ?DEFAULT 10001 ? ? ?,

is_add ? ? ? ? ? ? ? ? ? ? ? ? char(1) ? ? ? ? DEFAULT 0 ? ? ? ? ?,

is_hot ? ? ? ? ? ? ? ? ? ? ? ? char(1) ? ? ? ? DEFAULT 0 ? ? ? ? ?,

rank_model ? ? ? ? ? ? ? ? ? ? char(1) ? ? ? ? DEFAULT 2 ? ? ? ? ?,

PRIMARY KEY(serial_no)

);

CREATE UNIQUE INDEX idx_competinfo ON compet_info(serial_no ASC ,compet_id ASC );

-- -----------------------------------------------

-- 升級腳本

-- -----------------------------------------------

-- 修改表的腳本,添加字段,存儲過程,后面可以配合刪除存儲過程

-- begin --1.0.3.1 數據表compet_info,添加了表字段(suffix) liusn19096

DROP PROCEDURE IF EXISTS sp_db_mysql;

DELIMITER $$

CREATE PROCEDURE sp_db_mysql()

BEGIN

declare v_rowcount int;

select count(1) into v_rowcount from information_schema.columns where table_name='compet_info' and column_name='suffix';

if v_rowcount = 0 then

ALTER TABLE compet_info ADD suffix ? ? ? ? ? ? ? ? ? ? ? ? varchar(24) ? ? DEFAULT ' ' ? ? ? ?;

end if;

END$$

DELIMITER ;

call sp_db_mysql(); -- end --1.0.3.1 數據表compet_info,添加了表字段(suffix) liusn19096

-- 修改表的腳本,

刪除字段,存儲過程,后面可以配合刪除存儲過程

-- begin --1.0.3.2 數據表compet_info,刪除了表字段(suffix)

DROP PROCEDURE IF EXISTS sp_db_mysql;

DELIMITER $$

CREATE PROCEDURE sp_db_mysql()

BEGIN

declare v_rowcount int;

select count(1) into v_rowcount from information_schema.columns where table_name='compet_info' and column_name='suffix';

if v_rowcount = 1 then

ALTER TABLE compet_info DROP COLUMN suffix;

end if;

END$$

DELIMITER ;

call sp_db_mysql();

-- end --1.0.3.2 數據表compet_info,刪除了表字段(suffix)

-- 重命名表字段,rank_model->suffix,存儲過程,用過之后可刪除

-- begin --1.0.3.3 數據表compet_info,重命名了表字段(rank_model->suffix)

DROP PROCEDURE IF EXISTS sp_db_mysql;

DELIMITER $$

CREATE PROCEDURE sp_db_mysql()

BEGIN

declare v_rowcount int;

declare v_rowcount2 int;

select count(1) into v_rowcount from information_schema.columns where table_name='compet_info' and column_name='rank_model';

select count(1) into v_rowcount2 from information_schema.columns where table_name='compet_info' and column_name='suffix';

if v_rowcount = 1 and v_rowcount2 = 0 then

ALTER TABLE compet_info CHANGE rank_model suffix char(1) DEFAULT 2;

end if;

END$$

DELIMITER ;

call sp_db_mysql();

-- end --1.0.3.3 數據表compet_info,重命名了表字段(rank_model->suffix)

-- 增加索引,這里增加的是唯一索引,不唯一的話,就把UNIQUE去掉

-- begin --1.0.3.3 數據表compet_info,增加索引( idx_compet_info:[compet_id,compet_out_id])

DROP PROCEDURE IF EXISTS sp_db_mysql;

DELIMITER $$

CREATE PROCEDURE sp_db_mysql()

BEGIN

declare v_rowcount int;

SELECT

count(1) INTO v_rowcount

FROM

information_schema.INNODB_SYS_TABLES a,

information_schema.INNODB_SYS_INDEXES b

WHERE

a.TABLE_ID = b.TABLE_ID

AND a.`NAME` = lower('fz_compet/compet_info'); ? ?-- fz_compet 指的是scheme的名稱,idx_compet_info是索引的名稱

AND b.`NAME` = lower('idx_compet_info');

if v_rowcount = 0 then

CREATE UNIQUE INDEX idx_compet_info ON compet_info(compet_id ASC ,compet_out_id ASC );

end if;

END$$

DELIMITER ;

call sp_db_mysql();

-- end --1.0.3.3 數據表compet_info,增加索引( idx_compet_info:[compet_id,compet_out_id])

-- 刪除索引

-- begin --1.0.3.4 數據表compet_info,刪除了表索引(idx_compet_info)

DROP PROCEDURE IF EXISTS sp_db_mysql;

DELIMITER $$

CREATE PROCEDURE sp_db_mysql()

BEGIN

declare v_rowcount int;

SELECT

count(1) INTO v_rowcount

FROM

information_schema.INNODB_SYS_TABLES a,

information_schema.INNODB_SYS_INDEXES b

WHERE

a.TABLE_ID = b.TABLE_ID

AND a.`NAME` = lower('fz_compet/compet_info')

AND b.`NAME` = lower('idx_compet_info');

if v_rowcount = 1 then

DROP INDEX idx_compet_info on compet_info;

end if;

END$$

DELIMITER ;

call sp_db_mysql();

-- end --1.0.3.4 數據表compet_info,刪除了表索引(idx_compet_info)

-- begin --1.0.3.5 數據表compet_info,修改了表字段類型(compet_name)

DROP PROCEDURE IF EXISTS sp_db_mysql;

DELIMITER $$

CREATE PROCEDURE sp_db_mysql()

BEGIN

declare v_rowcount int;

select count(1) into v_rowcount from information_schema.columns where table_name='compet_info' and column_name='compet_name';

if v_rowcount = 1 then

ALTER TABLE compet_info MODIFY COLUMN compet_name int DEFAULT 0;

end if;

END$$

DELIMITER ;

call sp_db_mysql();

-- end --1.0.3.5 數據表compet_info,修改了表字段類型(compet_name)

-- 修改表字段允許空

-- begin --1.0.3.5 數據表compet_info,修改了表字段允許空(compet_name)

ALTER TABLE compet_info MODIFY compet_name varchar(100);

-- end --1.0.3.5 數據表compet_info,修改了表字段允許空(compet_name)

--?增加表字段主鍵

-- begin --1.0.3.5 數據表compet_info,增加了表字段主鍵(compet_id) ?? DROP PROCEDURE IF EXISTS sp_db_mysql; DELIMITER $$ CREATE PROCEDURE sp_db_mysql() BEGIN declare v_rowcount int; SELECT count(1) INTO v_rowcount FROM information_schema.INNODB_SYS_TABLES a, information_schema.INNODB_SYS_INDEXES b WHERE a.TABLE_ID = b.TABLE_ID AND a.`NAME` = lower('stockbattle/compet_info') AND b.`NAME` = 'PRIMARY'; if v_rowcount = 0 then ALTER TABLE compet_info ADD CONSTRAINT compet_info_pk PRIMARY KEY(compet_id); end if; END$$ DELIMITER ; call sp_db_mysql(); -- end --1.0.3.5 數據表compet_info,增加了表字段主鍵(compet_id)

創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎

總結

以上是生活随笔為你收集整理的mysql初始化脚本建表_mysql新建表修改表sql脚本的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。