mysql使⽤命令⾏执⾏存储过程编写存储过程sql
以给brand表添加phone字段为例:
DROP PROCEDURE IF EXISTS UpdateColum;
CREATE PROCEDURE UpdateColum()
BEGIN
SELECT database() INTO @dbName;
SET @tablename = 'brand';
SET @column_name = 'phone';
SELECT
CONCAT(
'select count(*) into @colName from lumns where table_name = ''',
@tablename,
''' and column_name = ''',
@column_name,
''' and table_schema=''',
@dbName,
''';'
)
INTO
@ckstring;
PREPARE SQLStr1 FROM @ckstring;
EXECUTE SQLStr1;
DEALLOCATE PREPARE SQLStr1;
IF @colName = 0 THEN
ALTER TABLE
brand
ADD
mysql存储过程使用phone varchar(255) NOT NULL DEFAULT '';
END IF;
END;
CALL UpdateColum();
DROP PROCEDURE IF EXISTS UpdateColum;
命令⾏⽅式执⾏存储过程
执⾏以下命令:
命令1:选择操作的数据库
user dbname ;
命令2:修改⾏分割符
delimiter ;;
命令3:执⾏sql⽂件
source /root/xxx.sql
命令4:恢复⾏分割符
delimiter ;
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论