`

mysql升级表结构的存储过程

阅读更多
DROP PROCEDURE IF EXISTS add_field;
CREATE PROCEDURE add_field(db_name VARCHAR(50),table_name VARCHAR(50),field_name VARCHAR(50),data_type VARCHAR(50),allow_null VARCHAR(50))
BEGIN
        DECLARE m_count int DEFAULT 0;
	DECLARE v_sql VARCHAR(500);
	SET v_sql= CONCAT_WS( ' ','alter table ',table_name,' add ',field_name,data_type,allow_null);

	#whether the table has this filed
	SELECT count(*) INTO m_count 
	FROM information_schema.COLUMNS
	WHERE TABLE_SCHEMA = db_name
	AND TABLE_NAME = table_name
	AND COLUMN_NAME = field_name;

	#if does't has this filed,then add it 
	IF(m_count=0)THEN
	    	SET @sqlcmd = v_sql;
    		PREPARE stmt FROM @sqlcmd;
	    	EXECUTE stmt;
    		DEALLOCATE PREPARE stmt;
	END IF;
END;

call add_field('dbname','tablename','fieldname','datatype','not null');
分享到:
评论

相关推荐

    Mysql数据库表结构差异性对比工具

    MySQL数据库在进行系统升级、迁移或者版本切换时,可能会遇到表结构不一致的问题,这将导致数据无法正确读取或写入,甚至可能引发错误。为了解决这个问题,"Mysql数据库表结构差异性对比工具"应运而生。这款工具能够...

    MySQL技术内幕 InnoDB存储引擎.pdf

    3.5 表结构定义文件 3.6 InnoDB存储引擎文件 4. 表 4.1 索引组织表 4.2 InnoDB逻辑存储结构 4.3 行记录格式 4.4 InnoDB数据页结构 5. 索引与算法 5.1 概述 5.2 数据结构与算法 5.3 B+树索引 5.4 B+树索引...

    Go-mysql-schema-sync是一款使用Go开发跨平台的MySQL表结构自动同步工具

    4. **高性能**:基于Go语言的并发处理能力,Go-mysql-schema-sync在处理大量表结构同步时表现出优秀的性能,减少了同步过程中的等待时间。 5. **配置灵活**:用户可以通过配置文件灵活设定同步规则,比如选择特定的...

    mysql升级教程文档

    - **sys**: 提供了一组预定义的视图和存储过程,帮助分析服务器性能。 #### 三、MySQL升级的方式 MySQL提供了两种不同的升级方式: ##### 1. In-place Upgrade(就地升级) - **适用场景**: 小版本之间的升级。 - ...

    mysql5.1升级mysql5.5操作步骤

    - **执行升级工具**:最后一步是使用 `mysql_upgrade` 工具来检查并更新数据库表结构和权限表。这一步非常重要,因为它能够确保所有数据和配置都与新版本兼容。 通过以上步骤,您可以顺利完成从 MySQL 5.1 到 MySQL...

    mysql4升级5说明

    本文将详述从MySQL 4升级至5的过程,重点解决可能出现的问题,如乱码问题和1067错误,同时介绍如何正确安装MySQL 5.16驱动包。 一、升级准备 在开始升级之前,确保你已经备份了所有重要的数据,以防在升级过程中...

    Node.js-mysql数据库表机构对比工具

    标题中的“Node.js-mysql数据库表结构对比工具”是指一个基于Node.js开发的应用程序,用于比较MySQL数据库中的不同表结构,包括存储过程和函数。这个工具可以帮助开发者在数据库升级、迁移或版本控制时,轻松地识别...

    MySql 和Oracle 数据库结构导出Word

    MySQL的数据库结构包括表、视图、存储过程、触发器等,通过SQL语句可以轻松创建、修改和查看这些结构。 Oracle数据库则是由甲骨文公司开发的一款企业级数据库系统,它支持大型复杂应用,提供了高度的可扩展性和安全...

    mysql数据表导出生成xml文件和树形结构

    MySQL 数据表导出生成 XML 文件是一项常见的数据转换任务,它允许我们把数据库中的结构化数据转化为一种便于交换和处理的格式。XML(eXtensible Markup Language)是一种标记语言,常用于存储、传输和表示数据,尤其...

    数据库快速备份表结构

    除了手动编写SQL语句,还可以利用各种数据库管理工具,如MySQL Workbench、phpMyAdmin或SQL Server Management Studio,这些工具通常提供一键备份表结构的功能,简化了操作流程。 在"EasyBackUp"这样的工具中,可能...

    两个数据库表结构比较(C#)

    在IT行业中,数据库是存储和管理数据的核心工具,而数据库表结构则是定义这些数据如何组织和存储的关键元素。本文将深入探讨如何使用C#进行两个数据库表结构的比较,并解析描述中提到的知识点。 首先,我们要理解...

    2.0升级到2.0.2版本操作指南(MYSQL)--国聿软件

    DDL语句负责创建、修改或删除数据库对象,如表、视图或存储过程;DML语句则用于插入、更新或删除具体的数据记录。这些脚本经过精心设计,能够按顺序执行一系列操作,确保升级过程中数据的完整性和系统的稳定性。 ##...

    自动对比2个数据库表结构差异

    在IT行业中,数据库是存储和管理数据的核心工具,而数据库表结构则是数据组织的基础。有时候,我们可能需要对比两个数据库的表结构差异,比如在升级系统、迁移数据或进行数据库同步时。本篇将深入探讨如何自动对比两...

    易语言edb库到mysql表相互转换

    然后,根据解析出的信息,在MySQL中创建对应的表结构,接着将edb中的数据逐条导入到MySQL表中。这可能涉及到数据类型转换,因为edb和MySQL的数据类型可能不完全匹配,需要进行适配。 2. **mysql表到edb库转换**: ...

    MySQL军规升级版

    - **禁止使用存储过程、视图、触发器和Event**:这些数据库层面的功能会降低性能,且调试和维护困难,建议在应用程序层面实现。 2. **命名规范**: - **库名、表名、列名**:全部使用小写字母,用下划线分隔,...

    MySql体系结构

    - data目录用于存储数据库文件,比如表的结构文件和数据文件。 - docs包含了文档资料,便于用户了解和使用MySQL。 - include目录存放了用于开发的C/C++语言头文件。 - lib目录包含库文件,为MySQL提供运行时所需的...

    存储过程代码生成器

    1. **自动代码生成**:根据数据库中的表结构,自动生成CRUD(创建、读取、更新、删除)操作的存储过程代码,包括但不限于INSERT、SELECT、UPDATE、DELETE等基本操作。 2. **参数处理**:智能识别输入参数和返回值,...

    将MySQL从旧的版本升级为新的版本

    首先,MySQL 4.10引入了一个重要的新特性,即支持事务处理和存储过程。事务处理提供了数据一致性保证,允许数据库操作在一组操作中完成,如果其中任何一部分失败,整个事务可以被回滚,以保持数据的一致状态。存储...

    数据库结构比较工具,支持MySql, Oracle, Sql Server三种数据库

    数据库结构比较工具是一款实用的应用程序,它专门设计用于对比不同数据库实例之间的结构差异,包括模式、表、索引、视图等元素。该工具支持三种主流的关系型数据库管理系统:MySql、Oracle和Sql Server,这使得它在...

Global site tag (gtag.js) - Google Analytics