易截截图软件、单文件、免安装、纯绿色、仅160KB
热门标签: c c# c++ asp asp.net linux php jsp java vb Python Ruby mysql sql access Sqlite sqlserver delphi javascript Oracle ajax wap mssql html css flash flex dreamweaver xml
 最新文章 : mysql

Mysql存储过程(五)——SEQUENCE的实现


oracle
中,
sequence
提供多表多字段可共用一个不重复值。
Mysql
中存在自增列,基本可以满足
PK
的要求。但自增列存在限制:
a.
只能用于表中的一个字段,一张不能同时存在两个以上的自增列
;
b.
自增列必须被定义为
key

PK

FK

;
c.
自增列不能被多个表共用
;
d.

insert
语句不包括自增字段或将其值设置为
NULL
时,该值会自动填上。
                  
在不要求字段顺序递增的情况下,可以在
Mysql
中实现序列:
        
Sql
code 5-1:
                  
DROP TABLE IF EXISTS sequence;

-- 建sequence表,指定seq列为无符号大整型,可支持无符号值:0(default)到18446744073709551615(0到2^64–1)。
CREATE TABLE sequence (
name VARCHAR(50) NOT NULL,
current_value BIGINT UNSIGNED NOT NULL DEFAULT 0,
......

mysql常用指令集合


Java代码
mysql> select version(),current_date;   
查询mysql的版本号 和  日期   
mysql> select version();   
查询mysql的版本号   
select now();   
查询当前日期和准确的时间  
Java代码
mysql> select version(),current_date;   
查询mysql的版本号 和  日期   
mysql> select version();   
查询mysql的版本号   
select now();   
查询当前日期和准确的时间  
mysql> select version(),current_date;
查询mysql的版本号 和 日期
mysql> select version();
查询mysql的版本号
select now();
查询当前日期和准确的时间
 
新建或删除一个数据库
Java代码
Mysql>create database mydb;   
  
Mysql> drop database mydb;  
Java代码
Mysql>create database mydb;   
  
Mysq ......

Mysql的行锁机制


<!-- [if gte mso 10]>
以下内容来自网络,已测试。
结论:
mysql
行锁不安全,随数据的变化,可能会出现行锁无效!因此,非确定情况下,不要对
mysql
表加行锁来控制业务逻辑。
由于业务逻辑的需要,必须对数据表的一行或多行加入行锁,举个最简单的例子,图书借阅系统。假设
id=1
的这本书库存为
1
,但是有
2
个人同时来借这本书,此处的逻辑为
Select  
restnum 
from 
book 
where 
id =1 ;   
--
如果
restnum
大于
0
,执行
update
Update  
book 
set restnum=restnum-1 where
id=1 ;
 
问题就来了,当
2
个人同时来借的时候,有可能第一个人执行
select
语句的时候,第二个人插了进来,在第一个人没来得及更新
book
表的时候,第二个人查到数据了,其实是脏数据,因为第一个人会把
restnum
值减
1
,因此第二个人本来应该是查到
id=1
的书
restnum

0
了,因此不会执行
update
,而会告诉它
id=1
的书没有库存了,可是数据库哪懂这些,数据库只负责执行一条条
SQL
语句,它才不管中间有没有其他
sql
语句插进来,它也不 ......

Mysql任务调度(Event)

<!-- [if gte mso 10]>
MySQL5.1.x
版本中引入了一项新特性
EVENT
,顾名思义就是事件、定时任务机制,在指定的时间单元内执行特定的任务,因此今后一些对数据定时性操作不再依赖外部程序,而直接使用数据库本身提供的功能。此功能是对
Oracle

Job/Schedule
的模仿,
5.1.X
版本以上才支持。
        
创建
EVENT
语法如下:
CREATE
[DEFINER = { user | CURRENT_USER }]
EVENT
[IF NOT EXISTS]
event_name
ON SCHEDULE schedule
[ON COMPLETION [NOT] PRESERVE]
[ENABLE | DISABLE | DISABLE ON SLAVE]
[COMMENT ''comment'']
DO sql_statement;
 
schedule:
AT timestamp [+ INTERVAL interval]
| EVERY interval
[STARTS timestamp [+ INTERVAL interval]]
[ENDS timestamp [+ INTERVAL interval]]
 
interval:
quantity {YEAR | QUARTER | MONTH | DAY | HOUR | MINUTE |
WEEK | SECOND | YEAR_MONTH | DAY_HOUR | DAY_MINUTE |
DAY_SECOND | HOUR_MINUTE | HOUR_SECOND | MINUTE_SECOND}
 
例如创建一个每
30
秒清空
tableA
数据的任务
CREATE EVENT E_D ......

MySql 安装教程 实录

作者:宣兆鹏
--------------------------------------------------------------------------------------------------------------------------------------------
今天在本本上安装MYSQL,在安装过程出现了一些奇怪的问题,因此在这里分享整个安装流程与错误解决方法。
MySQL版本:5.1.40-community
1、下载安装包并安装
     如果是普通用户,请在安装时,选择“Typical”,即典型类型,MYSQL将安装到C盘下Program Files下的My SQL文件夹内。
2、安装完毕后,进行的设置
     1)进入CMD
     2)CD到c:\program files\MySQL\MySQL Server 5.1\bin下
     3)输入“mysqld -install”,即MYSQL成为系统服务,作为自动运行的服务。
     4)进入MySQL Server Instance configure Wizard中,进行设置,选择"Standard"模式进行设置,除非你是专家,就选"Detail"模式。
     5)下一步后,会有一个页面让你输入密码,原始的root的密码为空,这里假定你需要设置的密码为"sa"
     6)下一步后, ......

mysql 自增列相关问题整理

MYSQL自增列
1.关键字 :auto_increment
2.自增用法
例:
CREATE TABLE animals ( id mediumint not null auto_increment,
name char(30) not null,
primary key (id));
3.关于自增
Q:怎么获得当前的自增的最大值?
A:select @@identity
Q:怎么获得table的当前自增最大值?
A:select max(id) from table
Q:对自增的理解?
A: 一般情况下获取刚插入的数据的id,使用select max(id) from table 是可以的。LAST_INSERT_ID 是与table无关的,如果向表a插入数据后,再向表b插入数据,LAST_INSERT_ID会改变。
使用单INSERT语句插入多条记录, LAST_INSERT_ID返回一个列表。
@@identity是表示的是最近一次向具有identity属性(即自增列)的表插入数据时对应的自增列的值,是系统定义的全局变量。比如有个表A,它的自增列是id,当向A表插入一行数据后,如果插入数据后自增列的值自动增加至101,则通过select@@identity得到的值就是101。
注:LAST_INSERT_ID是一个函数.
用法:LAST_INSERT_ID()
Q:MYSQL中的LAST_INSERT_ID()和MSSQL中的@@IDENTITY
A:按照应用需要,常常要取得刚刚插入数据库表里的记录的ID值。
在MYSQL中可以使用LAST_INSERT_ID()函数,在 ......
总记录数:2220; 总页数:370; 每页6 条; 首页 上一页 [115] [116] [117] [118] 119 [120] [121] [122] [123] [124]  下一页 尾页
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号