Mysql 常用SQL语句

本文汇总了MySQL数据库的各种实用技巧,包括表查询语句查看、字符型时间转换为Unix时间戳、动态执行SQL、表和字段操作、游标使用、定时任务设置、存储过程管理、用户查看及权限修改等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  1. SHOW CREATE TABLE 表名;    -- 查看表查询语句,包括字段说明

  2.  select unix_timestamp(now()),UNIX_TIMESTAMP('2015-07-30 09:00');    -- 字符型的时间,转成unix时间戳

  3.  动态执行SQL

    SET v_sqls = CONCAT('SELECT meet_summaryfile FROM ig_meetsummary WHERE meet_id = ''',p_meet_id,'''');

    SET @v_sql=v_sqls;

    PREPARE stmt FROM @v_sql;  -- 预处理需要执行的动态SQL,其中stmt是一个变量

    EXECUTE stmt;      -- 执行SQL语句

    DEALLOCATE PREPARE stmt;     -- 释放掉预处理

  4. truncate table 表名;  -- AUTO_INCREMENT 列 会清0,重新叠加

  5. 修改表名

  6. alter table 原表名 rename to 现表名;  -- 修改表名

  7. 添加字段

    ALTER TABLE table_name ADD field_name  varchar(30) default '' comment '注释';  -- 添加列

  8. 创建临时表

    CREATE TEMPORARY TABLE IF NOT EXISTS temp_table_name(          

         col_name_1 VARCHAR(50) NOT NULL DEFAULT '',        

         col_name_2 VARCHAR(50) NOT NULL DEFAULT ''    

        );

   4. 游标

    -- 定义存放游标查询的变量

    DECLARE v_meet_id VARCHAR(256);

    -- 遍历数据结束标志

    DECLARE done INT DEFAULT FALSE;

    -- 游标

    DECLARE cur CURSOR FOR   SELECT meet_id FROM ig_business_meet

    WHERE  reminder_times != '1';

    -- 将结束标志绑定到游标

    DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE;

    -- 循环游标

    OPEN cur;

    read_loop: LOOP

    FETCH cur INTO v_meet_id;

    -- 声明结束的时候

    IF done THEN

    LEAVE read_loop;

    END IF;

    END LOOP;

    CLOSE cur;

   5.  定时任务

    -- 查看定时任务

    SHOW EVENTS;

    -- 查看定时器是否开启

    SHOW VARIABLES LIKE 'event_scheduler';

    -- 开启定时器 0:off 1:on

    SET GLOBAL event_scheduler = 1; .

    -- 删除

    drop  EVENT *_event;

    -- 创建任务

    CREATE EVENT `task_3` ON SCHEDULE EVERY 15 MINUTE ON COMPLETION PRESERVE ENABLE DO CALL pro_meetSmsSend();

6. 查看MYSQL存储过程详细信息

    -- 包含存储过程创建、修改时间

    SHOW PROCEDURE STATUS

    select name,db,definer from proc where definer='root@%';  -- 查看存储过程 名称,所属数据库名,定义者

 7. 用户查看

   select host,user,password from user;  -- 查看用户

   update user set host = '1.1.1.1' where host='%';  -- 修改访问IP,%:所有IP都可访问 1.1.1.1:指定IP可访问

   flush privileges;  -- 刷新权限表,使其生效

 7.查看MYSQL表详细信息

    -- 包含表创建时间

    SHOW TABLE STATUS  

 8.查看列详细信息

   -- 不包括表创建时间

   SHOW FULL COLUMNS FROM 表名 

SELECT COLUMN_NAME,column_comment,column_type,
    data_type,CHARACTER_MAXIMUM_LENGTH,NUMERIC_PRECISION,NUMERIC_SCALE
FROM INFORMATION_SCHEMA.Columns
WHERE table_name='表名' AND table_schema='数据库名';

9.  查看Mysql版本号

   select version();

10. 存储过程异常处理

        DECLARE EXIT HANDLER FOR SQLEXCEPTION

        BEGIN

        END;

  1. if else 语句

    if a='01' then

    ----------

    elseif a='02' then

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

    else

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

    end if;

11. 修改字段

       ALTER TABLE da_allocation_plan MODIFY V_SPEC VARCHAR(128) DEFAULT NULL COMMENT '规格';

 

        

 

 

转载于:https://my.oschina.net/u/1179666/blog/482049

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值