不灭的火

革命尚未成功,同志仍须努力下载JDK17

作者:AlbertWen  添加时间:2013-08-29 14:01:56  修改时间:2025-04-23 09:51:43  分类:MySQL/Redis  编辑

1、创建表时指定AUTO_INCREMENT自增值的初始值(即起始值):

CREATE TABLE XXX (ID INT(5) PRIMARY KEY AUTO_INCREMENT) AUTO_INCREMENT=100;

2、通过 ALTER TABLE 修改初始值(但是要大于表中的 AUTO_INCREMENT 自增值,否则设置无效):

ALTER TABLE XXX AUTO_INCREMENT=100;
作者:AlbertWen  添加时间:2013-05-30 21:58:39  修改时间:2025-04-23 14:45:41  分类:MySQL/Redis  编辑

MySQL 的“root”用户默认状态是没有密码的,所以在 PHP 中您可以使用 mysql_connect("localhost","root","") 来连接 MySQL 服务器;

如果您想为 MySQL 中的“root”用户设置密码(例如:本机MySQL密码为 123456),请在控制台中使用“mysqladmin”命令。例如:

d:\PHP\xampp\mysql\bin\mysqladmin.exe  -u  root  password  123456
作者:AlbertWen  添加时间:2013-05-13 13:27:54  修改时间:2025-04-19 09:04:58  分类:MySQL/Redis  编辑
MySQL 数据类型中的 integer types 有点奇怪。你可能会见到诸如:int(3)、int(4)、int(8) 之类的 int 数据类型。刚接触 MySQL 的时候,我还以为 int(3) 占用的存储空间比 int(4) 要小, int(4) 占用的存储空间比 int(8) 小。

后来,参看 MySQL 手册,发现自己理解错了。

int(M): M indicates the maximum display width for integer types.


在 integer 数据类型中,M 表示最大显示宽度。

作者:AlbertWen  添加时间:2013-05-13 10:41:11  修改时间:2025-04-19 08:31:27  分类:MySQL/Redis  编辑
1、整型
MySQL数据类型 含义(有符号)
tinyint(m) 1个字节  范围(-128~127)
smallint(m) 2个字节  范围(-32768~32767)
mediumint(m) 3个字节  范围(-8388608~8388607)
int(m) 4个字节  范围(-2147483648~2147483647)
bigint(m) 8个字节  范围(+-9.22*10的18次方)

取值范围如果加了unsigned,则最大值翻倍,如tinyint unsigned的取值范围为(0~256)。

int(m)里的m是表示SELECT查询结果集中的显示宽度,并不影响实际的取值范围,没有影响到显示的宽度,不知道这个m有什么用。

作者:AlbertWen  添加时间:2013-04-19 16:20:39  修改时间:2025-04-27 18:11:18  分类:MySQL/Redis  编辑
作者:AlbertWen  添加时间:2017-10-27 19:44:37  修改时间:2025-04-28 13:31:57  分类:MySQL/Redis  编辑

在mysql中很多朋友都认为字段为AUTO_INCREMENT类型自增ID值是无法修改,其实这样理解是错误的,下面介绍mysql自增ID的起始值修改与设置方法。

通常的设置自增字段的方法:

创建表格时添加:

create table table1(id int auto_increment primary key,...)

创建表格后添加:

alter table table1 add id int auto_increment primary key 自增字段

一定要设置为primary key。

作者:AlbertWen  添加时间:2017-10-18 17:19:02  修改时间:2025-04-24 06:57:15  分类:MySQL/Redis  编辑

从数据库里取N个字段,然后组合到一起用“,”分割显示,起初想到用CONCAT()来处理,好是麻烦,没想到在手册里居然有提到 CONCAT_WS(),非常好用。

CONCAT_WS(separator, str1, str2,...)

它是一个特殊形式的 CONCAT()。第一个参数剩余参数间的分隔符。分隔符可以是与剩余参数一样的字符串。如果分隔符是 NULL,返回值也将为 NULL。这个函数会跳过分隔符参数后的任何 NULL 和空字符串。分隔符将被加到被连接的字符串之间

作者:AlbertWen  添加时间:2018-01-19 22:27:38  修改时间:2025-05-01 06:29:08  分类:MySQL/Redis  编辑

Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。

本篇文章,主要介绍利用PHP使用Redis,主要的应用场景。

一、简单字符串缓存实战

$redis->connect('127.0.0.1', 6379);
$strCacheKey  = 'Test_bihu';

//SET 应用
$arrCacheData = [
    'name' => 'job',
    'sex'  => '男',
    'age'  => '30'
];
$redis->set($strCacheKey, json_encode($arrCacheData));
$redis->expire($strCacheKey, 30);  # 设置30秒后过期
$json_data = $redis->get($strCacheKey);
$data = json_decode($json_data);
print_r($data->age); //输出数据

//HSET 应用
$arrWebSite = [
    'google' => [
        'google.com',
        'google.com.hk'
    ],
];
$redis->hSet($strCacheKey, 'google', json_encode($arrWebSite['google']));
$json_data = $redis->hGet($strCacheKey, 'google');
$data = json_decode($json_data);
print_r($data); //输出数据
作者:AlbertWen  添加时间:2017-10-29 21:09:54  修改时间:2025-04-19 08:55:05  分类:MySQL/Redis  编辑
作者:AlbertWen  添加时间:2018-11-04 15:18:57  修改时间:2025-04-19 08:38:02  分类:MySQL/Redis  编辑

关于 阿里云 RDS MySQL 排序分页查询数据错乱的原因和解决方案

1、某些时候MySQL 排序分页查询会出现数据错乱的情况 比如:

CREATE TABLE alarm_test (
  id bigint(20) NOT NULL DEFAULT '0',
  detail varchar(255) CHARACTER SET utf8 NOT NULL,
  created_on timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;