精华内容
下载资源
问答
  • 整型的每一种都分无符号(unsigned)和有符号(signed)两种类型(float和double总是带符号的),默认情况下声明的整型变量都是有符号的类型(char有点特别),如果需声明无符号类型的话就需要类型前加上...

    [推荐]小程序版系统后台快速开发  推荐一个实时新闻接口:适合做新闻类APP、网站、小程序等

    [文字属于摘抄]

    符号就是“+”加号和“-”减号,+号是省略的,数据库表中存的是正数,默认是不显示“+”号,如果存的是负数,那么会显示“-”号。
    整型的每一种都分无符号(unsigned)和有符号(signed)两种类型(float和double总是带符号的),在默认情况下声明的整型变量都是有符号的类型(char有点特别),如果需声明无符号类型的话就需要在类型前加上unsigned。

    无符号版本和有符号版本的区别就是无符号类型能保存2倍于有符号类型的正整数数据,比如16位系统中一个smallint能存储的数据的范围为-32768~32767,而unsigned能存储的数据范围则是0~65535。

    由于在计算机中,整数是以补码形式存放的。根据最高位的不同,如果是1,有符号数的话就是负数;如果是无符号数,则都解释为正数。

    另外,unsigned若省略后一个关键字,大多数编译器都会认为是unsigned int。

    简而言之就是由于Int型占4字节,也就是16位,2^16 = 65535,如果有符号位就+ -两边均分,如果没有就全给+。

    01

     

     

     

    展开全文
  • Mysql view创建

    千次阅读 2015-06-02 15:39:52
    以下的文章主要是对MySQL视图的描述,其中包括MySQ视图L概述,以及创建MySQL视图—create view与修改MySQL视图——alter view等相关内容...但是,视图并不数据库以存储的数据值集形式存在。行和列数据来自由定义视

    以下的文章主要是对MySQL视图的描述,其中包括MySQ视图L概述,以及创建MySQL视图—create view与修改MySQL视图——alter view等相关内容的具体描述,以下就是文章的具体内容介绍。

    一. 视图概述

    MySQL视图是一个虚拟表,其内容由查询定义。同真实的表一样,视图包含一系列带有名称的列和行数据。但是,视图并不在数据库中以存储的数据值集形式存在。行和列数据来自由定义视图的查询所引用的表,并且在引用视图时动态生成。

    对其中所引用的基础表来说,MySQL视图的作用类似于筛选。定义视图的筛选可以来自当前或其它数据库的一个或多个表,或者其它视图。通过视图进行查询没有任何限制,通过它们进行数据修改时的限制也很少。

    视图是存储在数据库中的查询的sql 语句,它主要出于两种原因:安全原因,视图可以隐藏一些数据,如:社会保险基金表,可以用视图只显示姓名,地址,而不显示社会保险号和工资数等,另一原因是可使复杂的查询易于理解和使用。

    MySQL视图:查看图形或文档的方式。

    视图是从一个或多个表或视图中导出的表,其结构和数据是建立在对表的查询基础上的。和表一样,视图也是包括几个被定义的数据列和多个数据行,但就本质而言这些数据列和数据行来源于其所引用的表。

    所以MySQL视图不是真实存在的基础表而是一张虚表,视图所对应的数据并不实际地以视图结构存储在数据库中,而是存储在视图所引用的表中。

    视图一经定义便存储在数据库中,与其相对应的数据并没有像表那样又在数据库中再存储一份,通过视图看到的数据只是存放在基本表中的数据。对视图的操作与对表的操作一样,可以对其进行查询、修改(有一定的限制)、删除。

    当对通过视图看到的数据进行修改时,相应的基本表的数据也要发生变化,同时,若基本表的数据发生变化,则这种变化也可以自动地反映到视图中。

    视图有很多优点,主要表现在:

    视点集中

    简化操作

    定制数据

    合并分割数据

    安全性

    二. 创建MySQL视图——create view

    1. 语法

    create [or replace] [algorithm = {undefined | merge | temptable}] view [db_name.]view_name [(column_list)] as select_statement [with [cascaded | local] check option]通过该语句可以创建视图,若给定了[or replace],则表示当已具有同名的视图时,将覆盖原视图。select_statement是一个查询语句,这个查询语句可从表或其它的视图中查询。视图属于数据库,因此需要指定数据库的名称,若未指定时,表示在当前的数据库创建新视图。

    表和数据库共享数据库中相同的名称空间,因此,数据库不能包含相同名称的表和视图,并且,视图的列名也不能重复。

    2. 使用举例

    eg. 本例创建一个产品表(product)和一个购买记录表(purchase),再通过MySQL视图purchase_detail查询出购买的详细信息。

    create table product  
    (  
    product_id int not null,  
    name varchar(50) not null,  
    price double not null  
    );  
    insert into product values(1, 'apple ', 5.5);  
    create table purchase  
    (  
    id int not null,  
    product_id int not null,  
    qty int not null default 0,  
    gen_time datetime not null  
    );  
    insert into purchase values(1, 1, 10, now());  
    create view purchase_detail as select product.
    name as name, product .price as price, purchase.qty as qty, 
    product .price * purchase.qty as total_value from product, 
    purchase where product.product_id = purchase.product_id;  
    

    创建成功后,输入:select * from purchase_detail;

    运行效果如下:

    +-------+-------+-----+-------------+  
    | name | price | qty | total_value |  
    +-------+-------+-----+-------------+  
    | apple | 5.5 | 10 | 55 |  
    +-------+-------+-----+-------------+  
    1 row in set (0.01 sec)  
    

    3. 注意事项

    创建视图存在如下注意事项:

    (1) 运行创建视图的语句需要用户具有创建视图(crate view)的权限,若加了[or replace]时,还需要用户具有删除视图(drop view)的权限;

    (2) select语句不能包含from子句中的子查询;

    (3) select语句不能引用系统或用户变量;

    (4) select语句不能引用预处理语句参数;

    (5) 在存储子程序内,定义不能引用子程序参数或局部变量;

    (6)在定义中引用的表或视图必须存在。但是,创建了MySQL视图后,能够舍弃定义引用的表或视图。要想检查视图定义是否存在这类问题,可使用check table语句;

    (7) 在定义中不能引用temporary表,不能创建temporary视图;

    (8) 在视图定义中命名的表必须已存在;

    (9) 不能将触发程序与视图关联在一起;

    (10) 在视图定义中允许使用order by,但是,如果从特定视图进行了选择,而该视图使用了具有自己order by的语句,它将被忽略。

    三. 修改MySQL视图——alter view

    1. 语法

    alter [algorithm = {undefined | merge | temptable}] view view_name [(column_list)] as select_statement [with [cascaded | local] check option]该语句用于更改已有视图的定义。其语法与create view类似。

    2. 使用举例

    eg. 将上一小节中中创建的视purchase_detail进行修改,去掉qty列,语句如下:

    alter view purchase_detail as select product.
    name as name, product .price as price, product .
    price * purchase.qty as total_value from product, 
    purchase where product.product_id = purchase.product_id; 

     

    展开全文
  • MySQL中的常用基本数据类型

    千次阅读 2017-04-13 18:15:50
    MySQL中常用的数据类型:varchar :变长字符串,使用时我们必须设定其长度,最大值”理论值”65535个,实际上最大只能存65533个,但考虑到存储的字符编码的不同,也会有进一步的减少。比如: 如果存储从中文gbk,则...

    MySQL中常用的数据类型:

    varchar :

    变长字符串,使用时我们必须设定其长度,最大值”理论值”65535个,实际上最大只能存65533个,但考虑到存储的字符编码的不同,也会有进一步的减少。比如:

    • 如果存储从中文gbk,则最多是65533/2个;
    • 如果存储中文utf-8,则最多存储65533/3个

    此类型的实际长度是存储内容决定,而设定的值是最多可存储的字符个数。

    注意:这里的存储限制,其实都来源于一个表格的”一行”的数据存储的最大容量显示。

    char :

    定长字符串,使用时需要设定其长度,如果不设定,默认是1,最大理论值是255个。

    定长字符串,适用于存储的数据都是可遇见的明确的固定长度的字符,比如手机号,身份证号,但是在实际存储的时候,如果少于设定的值,也可以存储,但会使用空格填充空余部分。

    enum :

    单选项字符串数据类型。它非常适用于存储表单界面中的”单选项值”,它设定的时候,需要给定”固定的几个选项” 存储的时候就只存储其中的一个值。

    形式如下:

    enum("选项1","选项2","选项3"……)
    

    实际内部:

    这些字符串的选项值对应的是如下的数字值:1、2、3、4、5……最多65535个选项

    使用enum作为sex的数据类型:

     create table tab_test_enum (id int primary key auto_increment,name varchar(10),sex enum('boy','girl'));

    向表中插入数据:

    第一种方式:

     insert into tab_test_enum (name,sex)values('wangke','boy');

    第二种方式:

     insert into tab_test_enum (name,sex)values('xiaohong',2);

    注:由于在内部,每一个选项值都对应着一个数字,因此这里我们可以直接插入数字。

    当前表中内容:

    这里写图片描述

    set :

    多选字符串的数据类型。它非常适用于存储表单界面中的”多选项值“;它设定的时候,需要给定”固定的几个选项”,然后在存储的时候,就可以存储其中若干个值。

    形式如下:

    set("选项1","选项2","选项3"……)
    

    实际内部:

    这些字符串选项对应的是如下的数字值:1,2,4,8,16,……最多64个选项。

    创建表使用set作为hobby的数据类型:

    create table tab_test_set(id int primary key auto_increment,name varchar(10),hobbyset('coding','eat','play','sleep'));

    插入数据的两种方式:

    第一种方式:

     insert into tab_test_set(name,hobby)values('wangke','eat,play,sleep');

    第二种方式:

    insert into tab_test_set(name,hobby)values('xiaohong',14);

    两种方式插入的hobby的内容是一样的,第二种方式中的14是所有hobby选项值相加所得(2+4+8)。

    当前表中内容:

    这里写图片描述

    text :

    “长文本”字符类型,通常,其存储的类型不占距表格中行的数据容量限制,其本身不占距表中一行的数据容量的限制,其本身最长可存储65535个字符

    其他同类字符串类型:smalltext,tinytext,longtext

    其他:

    • binary类型: 定长二进制字符串类型,里面存储的是二进制值

    • varbinary类型: 变长二进制字符串类型,里面存储的是二进制值

    • blob类型: 二进制数据类型,里面存储的是二进制值,但其适用于存储”图片”,”其他文件”等,由于在数据库中操作的效率问题,极少使用。

    时间类型:

    • datetime(时间日期类型)

    • date(日期类型

    • time(时间类型)

    • year(年份类型)

    • timestamp(时间戳类型):就是指一个时间的”数据值”–本质其实就是一个数字。它的一个重要作用:能够自动获得时间戳的数据值–相当于”now()”(注:这个字段通常不需要插入数据)

      注:在应用中,时间日期类型,再我们自己给定的数据情形下,需要使用’单引号’引起来,跟字符串一样。

    演示时间日期类型的字段的使用:

    /*像表中插入时间*/
    insert into tab_time(my_datetime,my_date,my_time,my_year)value('2017-4-13 16:41:34','2017-4-13','16:41:34','2017');

    使用now()函数可以直接获取当前时间

    记录MySQL学习笔记 ^ - ^

    展开全文
  • 通过MySQL事件+存储过程实现业务的定时处理。

    因公司项目中有个赠送优惠券功能,此功能需求为:赠送出去的优惠券若24小时内没有被领取,则自动设置为赠送失败(过期未被领取),优惠券自动退换给赠送者。

    初步想法是:在MySQL中创建存储过程进行业务逻辑判断以及操作库,然后使用事件定时的调取存储过程,即可完成需求。

    一、创建事件

    1.、事件简单描述就是可以定时的执行一个任务,最大的优点是:一些定时操作不在依赖外部程序,而直接使用数据库的自身提供的功能完成,可以实现每秒钟执行一个任务,这对一些实时性要求很高的环境就非常实用。缺点是:不可以手动调用,定时触发。

    2、首先查看MySQL是否开始事件

    2.1 查看数据库是否开始事件

    SHOW VARIABLES LIKE "event_scheduler";
    查询结果如下:

    2.2 如果value = off 则需要通过如下任何一个命令进行事件的开启(若要关闭则为 0 或者 off)

    SET GLOBAL event_scheduler = ON;  
    SET @@global.event_scheduler = ON;  
    SET GLOBAL event_scheduler = 1;  
    SET @@global.event_scheduler = 1; 

    通过配置文件my.conf(若要关闭则为 0 或者 off)

    event_scheduler = 1 #或者ON


    3、创建事件event

    DELIMITER $$
    
    -- SET GLOBAL event_scheduler = ON$$     -- required for event to execute but not create    
    
    CREATE	/*[DEFINER = { user | CURRENT_USER }]*/	EVENT `weishop`.`e_return_conpon`
    
    ON SCHEDULE
    	 /* uncomment the example below you want to use */
    
    	-- scheduleexample 1: run once
    
    	   --  AT 'YYYY-MM-DD HH:MM.SS'/CURRENT_TIMESTAMP { + INTERVAL 1 [HOUR|MONTH|WEEK|DAY|MINUTE|...] }
    
    	-- scheduleexample 2: run at intervals forever after creation
    
    	   -- EVERY 1 [HOUR|MONTH|WEEK|DAY|MINUTE|...]
    
    	-- scheduleexample 3: specified start time, end time and interval for execution
    	   /*EVERY 1  [HOUR|MONTH|WEEK|DAY|MINUTE|...]
    
    	   STARTS CURRENT_TIMESTAMP/'YYYY-MM-DD HH:MM.SS' { + INTERVAL 1[HOUR|MONTH|WEEK|DAY|MINUTE|...] }
    
    	   ENDS CURRENT_TIMESTAMP/'YYYY-MM-DD HH:MM.SS' { + INTERVAL 1 [HOUR|MONTH|WEEK|DAY|MINUTE|...] } */
    
    /*[ON COMPLETION [NOT] PRESERVE]
    [ENABLE | DISABLE]
    [COMMENT 'comment']*/
    	EVERY 30 MINUTE 
    DO
    	BEGIN
    	    CALL p_return_coupon();
    	END$$
    
    DELIMITER ;


    4、名词解释: database_name:数据库名称

    event_name:事件名称(唯一性)

    on schedule:计划任务

    schedule:决定event的执行时间和频率(注意时间一定是将来的时间,过去的时间会报错),有两种形式AT 和 EVERY。

    [on completion [not] preserve]:可选项,默认是 on completion not preserve 即计划任务执行完毕自动 drop 该事

    件,on completion preserve 则不会 drop 掉。 

    [comment 'comment']: 可选项,注释。

    [enable||disable]:设定event的状态,默认 enable :表示系统尝试执行这个事件,disable:关闭改事件,可通过 

    alter:命令修改。

    do event_body:需要执行的sql语句,可以是复合sql,亦可以调用存储过程 procedure。

    我们在上面创建了一个event,每隔30分钟调用一次 p_return_coupon 存储过程。

    二、创建存储过程 p_return_coupon

    1、存储过程的介绍:简单来说,存储过程就是为以后的使用而保存的一条或者多条MySQL语句的集合,存储过程中有业务逻

    辑和流程的集合,可以在存储过程中创建表,更新数据,删除等等。

    2、为什么需要使用存储过程:

    2.1、通过把复杂的业务封装成一个单元,简化操作,程序中只需要 调用存储过程处理,比起单条 sql 执行,代码量和效

    率会有所改善。

    2.2、在生产环境可以直接修改存储过程来处理bug,不需要重启服务器(前提是修改的存储过程需要进行详细的测试)。

    2.3、方便业务的变更维护,如果表明和列名发生变化,只需要修改存储过程,不用改变任何代码。

    3、创建存储过程

    DELIMITER $$
    
    CREATE
        /*[DEFINER = { user | CURRENT_USER }]*/
        PROCEDURE `weishop`.`p_return_coupon`()
        /*LANGUAGE SQL
        | [NOT] DETERMINISTIC
        | { CONTAINS SQL | NO SQL | READS SQL DATA | MODIFIES SQL DATA }
        | SQL SECURITY { DEFINER | INVOKER }
        | COMMENT 'string'*/
        BEGIN
    	-- 声明一个标志done,用来判断游标是否遍历完成
    	DECLARE done INT DEFAULT 0;
    	-- 声明一个变量,用来存放从游标中提取的数据
    	DECLARE cid INT;
    	DECLARE ctime DATETIME;
    	-- 声明一个游标
    	DECLARE cur CURSOR FOR SELECT m.id FROM member_coupon m INNER JOIN given_record g ON m.id = g.coupon_Id WHERE m.status = 3 AND g.orders = 1 AND g.create_date IS NOT NULL;
    	-- 在游标循环到最后会将 done 设置为 1(如果不加该行  游标为空的时候  就会报错)
    	DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = 1;
    	-- 开启游标
    	OPEN cur;
    	-- 开始循环		
    	REPEAT
    		-- 游标的每一次循环值赋值给cid变量
    		FETCH cur INTO cid;
    		-- 如果游标没有结束
    		IF NOT done THEN
    			-- 根据cid将找到的create_date赋值给ctime变量
    			SELECT create_date INTO ctime FROM given_record WHERE orders = 1 AND coupon_Id = cid;
    			-- 如果ctime变量加上5分钟小于当前时间则进行更新操作
    			IF DATE_ADD(ctime, INTERVAL 5 MINUTE)< NOW() THEN
    				UPDATE member_coupon SET STATUS = 1 WHERE STATUS = 3 AND id = cid;
    				UPDATE given_record SET orders = 3 WHERE orders = 1 AND coupon_Id = cid;
    			END IF;
    		END IF;	
    	UNTIL done END REPEAT;
    	CLOSE cur;
        END$$
    
    DELIMITER ;
    

    4、其中使用到了游标 CURSOR 和 循环 REPEAT,我们下节进行描述。

    三、结束语:这样的话就可以通过事件每隔30分钟调用存储过程来处理若5分钟未被领取则归还赠送者业务!

    欢迎指正。


    展开全文
  • MYSQL 视图创建

    千次阅读 2011-12-06 14:20:15
    但是,视图并不数据库以存储的数据值集形式存在。行和列数据来自由定义视图的查询所引用的表,并且引用视图时动态生成。 对其中所引用的基础表来说,视图的作用类似于筛选。定义视图的筛选可以来自当前或...
  • MySQL-创建、修改和删除表

    千次阅读 2017-06-25 18:26:04
    表是数据库存储数据的基本单位。一个表包含若干个字段或记录。...MySql中创建表是通过SQL语句create table 实现的,其语法形式如下: create table 表名(属性名 数据类型[完整性约束条件],属性名 数据类型[完整
  • 图解MySql命令行创建存储过程

    千次阅读 2016-09-02 18:53:35
    一 操作实例 首先登录mysql; 使用source命令,从命令行执行sql脚本,创建表;...创建第一个存储过程;...事先用DELIMITER关键字申明当前段分隔符,这样MySQL才会将";"当做存储过程的代码;...先...
  • MySQL——在创建数据表时创建索引

    万次阅读 2018-05-15 18:53:58
     建立数据表时创建索引 在创建数据表时创建索引的基本语法结构: CREATE TABLE table_name( 属性名 数据类型[约束条件], …… 属性名 数据类型 [UNIQUE | FULLTEXT | SPATIAL ] INDEX | KEY ...
  • mysql创建存储过程

    万次阅读 2016-08-15 22:22:46
    一、变量的使用1....2.全局变量:定义时,以如下两种形式出现,set GLOBAL 变量名 或者 set @@global.变量名。show global variables; 对所有客户端生效。只有具有super权限才可以设置全局变量。 3.会话
  • MySQL创建外键的两种方式

    万次阅读 多人点赞 2019-02-19 10:55:21
    使用MySQL关联数据表时,创建外键的两种方式:创建表时增加外键,已存在表增加外键。以下案例通过Navicat for MySQL实现。 1.创建表时增加外键 首先创建第一张被关联表Vendors商品供应商表。 -- 供应商列表 ...
  • 搞定mysql创建用户及分配权限

    千次阅读 2018-09-14 18:45:08
    最近搞otter的数据库数据同步(整理好发布),其中涉及到mysql的用户权限问题,故整理如下mysql的安装方式详情见: https://blog.csdn.net/ruben95001/article/details/80795533 一、控制台登陆mysql报错 ...
  • MySQL基本操作一:数据库和表

    万次阅读 多人点赞 2018-05-23 21:55:49
    需要事先说明的一点是,我写的所有MySQL的代码将采用大写形式。虽然说至少在MySQL环境下,SQL语句的大小写并不会影响代码运行结果,但是,有同行讲到,SQL语句大写比是一个更好地习惯。因为执行程序的时候,如果你...
  • MySQL中视图的定义、原理和如何使用、创建

    万次阅读 多人点赞 2016-05-26 09:56:24
    林炳文Evankaka原创作品。转载请注明出处...  摘要:本文主要讲了  林炳文Evankaka原创作品。...  摘要:本文主要讲了MySQL中视图的定义、原理和如何使用、创建、删除等 一. 视图概述
  • 一文搞懂MySQL的分层架构和select语句在MySQL中的执行流程!
  • Mysql建表+创建索引

    千次阅读 2019-10-01 11:00:53
    基本形式如下: CREATE TABLE 表名( 属性名 数据类型[完整性约束条件], 属性名 数据类型[完整性约束条件], ...... 属性名 数据类型 [ UNIQUE | FULLTEXT | SPATIAL ] INDEX | KEY [ 别名] ( 属性名1 ...
  • MySQL基本操作总结

    千次阅读 多人点赞 2018-04-15 09:47:19
    MySQL基本操作可以包括两个方面:MySQL常用语句如高频率使用的增删改查(CRUD)语句和MySQL高级功能,如存储过程,触发器,事务处理等。而这两个方面又可以细分如下MySQL常用语句 表(或者数据库)...
  • 记得版本选64位,我之前本机下载了个32位,安装出现了各种问题, 提示很多依赖包要下载,但是下载后,还是未能安装成功,我暂时没整明白, 所以根据自己机器选择,我机器64位的! 2 建立一个普通用户及mysql用户例如xzb 1...
  • 使用pymysql简单创建mysql数据库

    千次阅读 2019-08-12 19:15:26
    使用pymysql简单创建mysql数据库 使用pymysql简单创建mysql数据库 最近写爬虫时候, 因为一直要手动创建数据库,嫌麻烦,就自己写了一个简单的创建mysql数据库代码. """ 代码的作用是简单创建一个数据库(其实就是自己想...
  • MySQL之——基本操作汇总

    万次阅读 2016-04-12 14:28:23
    本文记录了MySQL的一些常用操作,不多说了,直接一一列出: /* Author: liuyazhuang Date:2016-04-12 */ use test; DROP table if exists equipment; create table equipment( assetTag INTEGER primary key, ...
  • 如何利用MYSQL创建一个表格

    万次阅读 多人点赞 2018-05-28 17:04:29
    1.打开MYSQL如下。2.首先必须一个数据库里面工作,所以你必须创建一个数据库。利用create database +(数据库名称),来出创建数据库。3.创建好了必须使用它,利用 use +(数据库名称) 语句。4.你这里可以熟悉...
  • 想想写这个,并不是想说明什么,只是之前用过了这个,可能目前做的程序不会再使用,因此记录下来: ...首先在mysql中创建表:  create table imageinfo(id int not null auto_increment primary key,
  • mysql create view创建

    千次阅读 2019-01-12 16:08:17
    但是,视图并不数据库以存储的数据集形式存在,行和列数据来自由定义视图的查询所引用的表,并且引用视图时动态生成。 使用视图的好处:1,安全原因,可以隐藏一些数据;2,使复杂的查询易于理解和使用 视图...
  • MySQL 事务详解

    万次阅读 2015-08-02 23:30:53
    2、在mysql中哪些存储引擎(表类型)支持事务哪些不支持 3、事务的四个属性 4、mysql事务的创建与存在周期 5、mysql行为 6、事务的孤立性和性能 7、mysql的伪事务 一、事务的概念  
  • MySQL创建外键的方法

    千次阅读 2019-04-14 12:00:17
    首先谈一下外键的作用,一是节省空间,二是约束含外键的列的值,含外键列的值必须为参考列的id 创建数据表时,创建外键方法 create table userinfo( uid bigint auto_increment primary key, name varchar...
  • MySql创建用户及授权

    千次阅读 2006-04-14 01:42:00
    设置MySQL用户账号,指定哪个...MySQL 3.22.11开始引入两条语句使得这项工作更容易做:GRANT语句创建MySQL用户并指定其权限,而REVOKE语句删除权限当你对一个用户发出一条GRANT语句时,user表中为该用户创建一条记
  • MySQL基本操作三:数据的插入、更新、删除

    万次阅读 多人点赞 2018-08-17 22:14:03
    介绍MySQL中数据的插入,更新,删除操作前,我先建一个表。方便后面举例子。这是一个学生信息表: CREATE TABLE tab_student( Name CHAR(20), StuID VARCHAR(20), Rank INT ); 建好以后,长成这样: 1. ...
  • Mysql主从基本原理,主要形式以及主从同步延迟原理 (读写分离)导致主库从库数据不一致问题的及解决方案一、主从数据库的区别从数据库(Slave)是主数据库的备份,当主数据库(Master)变化时从数据库要更新,这些数据库...
  • MySQL数据库面试题(2020最新版)

    万次阅读 多人点赞 2020-03-10 17:20:40
    数据库三大范式是什么mysql有关权限的表都有哪几个MySQL的binlog有有几种录入格式?分别有什么区别?数据类型mysql有哪些数据类型引擎MySQL存储引擎MyISAM与InnoDB区别MyISAM索引与InnoDB索引的区别?InnoDB引擎的4...
  • MySQL——创建存储过程和函数

    千次阅读 2018-05-22 09:34:00
    简单地说,存储过程就是一条或多条 SQL 语句的集合,可视为批文件,但是其作用不仅限于批处理。...1. 创建存储过程 语法格式: CREATE PROCEDURE SP_name ( [ proc_parameter ] ) [ characteristi...
  • 数据库MySQL详解

    万次阅读 多人点赞 2018-07-24 20:03:47
    全网最详细MySQL教程,2021.1再次更新70%的内容,MySQL 8.0 + Navicat 15

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 111,141
精华内容 44,456
关键字:

在mysql中创建事件的基本形式如下

mysql 订阅