函数建分区表

按周生成分区表

do                                                                                                               
$$
DECLARE base text; --生命sql类型

pgsqltest text; --字符串为文本类型,执行函数


i int; --i为整数
BEGIN
base = 'create table main_history_p_%s partition of main_history_p for values FROM (''%s'') to (''%s'')';


FOR i IN 0..11 loop --不是左闭右开
pgsqltest = format(base,
to_char('2024-01-01'::timestamp + (i || 'week')::INTERVAL, --第一个%s占位符
'YYYYMMDD'),
'2024-01-01'::timestamp + (i || 'week')::INTERVAL, --第二个%s占位符
'2024-01-01'::timestamp + (i + 1 || 'week')::INTERVAL); --第三个%s占位符
--raise notice '%', sqlstring;
EXECUTE pgsqltest; --执行sqlstring
END loop; --结束loop
END --结束begin
$$language plpgsql; --结束函数

按月生成分区表

do                                                                                                               
$$
DECLARE base text; --生命sql类型

pgsqltest text; --字符串为文本类型,执行函数

i int; --i为整数
BEGIN
base = 'create table main_history_p_%s partition of main_history_p for values FROM (''%s'') to (''%s'')';

FOR i IN 0..11 loop --不是左闭右开
pgsqltest = format(base,
to_char('2024-01-01'::timestamp + (i || 'month')::INTERVAL, --第一个%s占位符
'YYYYMMDD'),
'2024-01-01'::timestamp + (i || 'month')::INTERVAL, --第二个%s占位符
'2024-01-01'::timestamp + (i + 1 || 'month')::INTERVAL); --第三个%s占位符
--raise notice '%', sqlstring;
EXECUTE pgsqltest; --执行sqlstring
END loop; --结束loop
END --结束begin
$$language plpgsql; --结束函数

PL/pgSQL编写造数据脚本

1.编写SQL脚本,插入到main_history表

1.1 创建表

CREATE TABLE main_history (
amount int4 NULL,
"content" varchar NULL,
main_id int4 NULL
);

1.2 批量插入

--_configList 使用 “_” 前缀来标识变量,用于区分sql中的字段 
CREATE OR REPLACE FUNCTION batchInsert(_configList varchar[][], _main_id int) RETURNS void AS $$
DECLARE
_config varchar[];
_content varchar;
_amount int;
BEGIN
--获取二维数组的每个一维数组
FOREACH _config SLICE 1 IN ARRAY (_configList) LOOP
_content := _config[1];
_amount := _config[2];
--把变量输出到控制台
RAISE NOTICE 'config = %, content = %, amount = % main_id = %', _config, _content, _amount, _main_id;
--用变量拼接sql语句并且实际运行在server上
INSERT INTO main_history (amount, content, main_id) VALUES (_amount, _content, _main_id);
END LOOP;
END;
$$ LANGUAGE plpgsql;
--使用函数
select batchInsert(ARRAY[['ccontent1', '1'], ['content2', '2']], 1);
--删除函数
drop function batchInsert;

2. 函数说明

2.1 声明数组

声明的时候可以不额外区分一维、二维数组
_configList varchar[][] 和 _configList varchar[] 是一样的

2.2 数组赋值

声明为varchar后,赋值时也要是varchar类型。
_configList varchar[][] := (ARRAY[[‘ccontent1’, ‘1’], [‘content2’, ‘2’]]);

2.3 数组遍历

二维数组的遍历
–_configList 由外部传入, 而FOREACH SLICE IN ARRAY都是关键字
FOREACH _config SLICE 1 IN ARRAY (_configList) LOOP
_content := _config[1];
_amount := _config[2];
END LOOP;

Windows操作系统在发起请求连接时,将临时端口(范围通常为1024至65535)可能会导致以下后果:

  1. 无法建立新的网络连接:当所有临时端口都被使用时,新的网络连接将无法建立。这可能会导致应用程序无法访问网络资源,或者无法接受新的网络连接。
  2. 网络性能下降:当临时端口用完时,操作系统可能会出现网络性能下降的情况。这是因为新的连接无法建立,现有连接无法释放,导致网络拥塞和延迟增加。
  3. 应用程序错误:一些应用程序可能会因为无法建立新的网络连接而出现错误或崩溃。特别是那些需要大量网络连接的应用程序,如服务器软件或P2P应用程序。
  4. 系统不稳定:在极端情况下,如果临时端口用完并且系统无法正常处理网络连接,可能会导致操作系统变得不稳定,甚至出现死机或崩溃的情况。

关于商业

 001.

我们买下壁垒。 

 002.

在商界,有条非常有用的古老守则,它分两步:

1.找到一个简单的、基本的道理;2.非常严格地按照这个道理去行事。

 003.

听着,经商很容易。在军队时玩扑克和年轻时当律师的经历磨练了我的商业技能。你必须学会的是:

如果劣势大、优势小,胜算不大的时候你就跑;唯有在劣势大、优势也大的时候,你才有事情要忙。因为占尽优势之事并不常有。 

004.

能找到好打猎的地方是本事。无论是谁,到了好打猎的地方,都能打到更多东西。

 005.

我曾遇到一个卖鱼钩的家伙。 我问他:“天哪,你这些鱼钩居然是绿色和紫色的。鱼真的会上钩吗?” 他说:“先生,我可不是把鱼饵卖给鱼的呀。” 

 006.

别只是因为一样事实或一种观念容易得到,就觉得它更为重要。 

 007.

给你带来麻烦的,不是坏主意,反而常常是好主意。你也许会说:“那不可能。这是相互矛盾的。” 但格雷厄姆想说的是,如果一件事情是坏主意,你不会做过头;但如果它是好主意,蕴含着重要的真理,那你就没办法忽略了。然后你就很容易做过头,接着,遭受可怕的后果。 

 008.

作为一个生意人,我亲身学到下面的道理:运转良好的东西,如果得到鼓励和支持,通常能够表现得更好。 与之相反,运转糟糕的东西往往是无法被改正的,或者能够被改正,但难度比你们可能想到的要难10倍。 所以好企业和差企业的区别在于,好企业可以轻松地做出一个又一个的决定,差企业则得一次又一次痛苦地做出决定。 

 009.

网络电视在它的鼎盛时期,任何人都能经营并且做出很好的业绩。如果是汤姆·墨菲在经营,成绩会很好;但就算是由你那傻瓜侄子来经营,也能有很好的表现。

 010.

平均下来,赌企业的品质要好过赌经理人的素质。换句话说,如果你必须选一个的话,那就赌企业的发展势头,而不是经理人的聪明才智。 

 011.

别因为过度关心细节而忽略显而易见的东西。

 012.

在得克萨斯制作砖块的流程跟在美索不达米亚是相同的。 

 013.

别只看到钱,要选择那些“你愿意与他交朋友的客户”。 

 014.

我们不跟上门推销的人打交道。如果你只是坐着,等交易上门,那么你坐的位子就会非常危险。 

 015.

大自然的铁律是“种瓜得瓜,种豆得豆”。如果你想要蚂蚁过来,那就得先在地板上撒糖。 

 016.

带来新客户的最佳办法就是把案头工作做好。 

 017.

每个人都有一些捷径来判断一个人,伯克希尔有一个非常重要的特质——我们只跟优秀的人共事: 

如果一个人是醉鬼,你肯定一眼就能看出来; 

一座山如果像珠穆朗玛峰一样矗立在那里,你不必是个天才,也能明白那是一座高山。

 018.

有个苏联工人曾这么说:“他们假装给薪水,我们假装在工作。”也许最重要的管理原则就是,“制定正确的激励机制”。

 019.

卡内基一直为自己只领很少的薪水而自豪。我也很高兴摆脱了基于业绩领取报酬的压力。 如果你非常认真负责,讨厌令人失望,就会产生不能辜负自己所领的激励报酬的压力(不再因为管理伯克希尔而从利润中抽取一定比例作为报酬,他们的利益就会与其他股东的利益完全一致),这样就拥有了巨大优势。 

 020.

你一定要和高水准的人做生意,永远不要和一头猪玩摔跤。因为如果你这么做了,你们两个都会变脏,但是猪会乐在其中。 

 021.

当你把大便跟葡萄干混在一起时,它仍然是大便。 

 022.

霍华德·阿曼森讲过这样一句话:“千万别低估高估自己的人。” 

 023.

我曾听沃伦·巴菲特,不止一次地指出: “驱动这个世界的不是贪婪,而是妒忌。”

写代码的准备工作

在Windows 11上写代码的几个方面的准备:

  1. 安装Java开发工具包(JDK):确保你已经安装了适用于Windows 11的Java开发工具包(JDK)。
  2. 选择集成开发环境(IDE):选择一个适合你的喜好和需求的Java集成开发环境(IDE),如Eclipse、IntelliJ IDEA或NetBeans。下载并安装你选择的IDE,并根据需要进行配置和插件安装。
  3. 设置环境变量:在Windows 11上,你需要设置Java的环境变量,以便系统能够找到JDK和其他相关工具。将JDK的安装路径添加到系统的PATH环境变量中,以便在命令行中可以直接访问Java和相关工具。
  4. 安装版本控制工具:考虑安装一个版本控制工具,如Git,以便你可以管理和跟踪代码的版本和变更。下载并安装Git,并配置你的Git账户信息。
  5. 选择文本编辑器:除了IDE,你可能还需要一个文本编辑器来编辑和查看代码文件。Windows 11上有许多文本编辑器可供选择,如Notepad++、Sublime Text、Visual Studio Code等。选择一个适合你的需求和偏好的文本编辑器,并进行安装和配置。
  6. 安装必要的开发工具和库:根据你的项目需求,可能需要安装其他开发工具和库。例如,如果你使用Maven或Gradle进行项目构建和依赖管理,你需要安装并配置相应的工具。
  7. 配置开发环境:根据你的项目需求,配置你的开发环境。这可能包括设置数据库连接、配置服务器环境、安装必要的插件和扩展等。

3proxy强大的代理软件

官网: https://3proxy.r

项目地址: https://github.com/z3APA3A/3proxy

配置文档: https://3proxy.ru/howtoe.asp

3proxy是一个俄罗斯人编写的强大的代理软件,支持windows/linux/unix平台,支持网页协议文件传输协议HTTP/HTTPS/FTP代理,支持三个版本的套接字SOCKSv4/SOCKSv4.5/SOCKSv5(socks/socks.exe)代理,支持邮件协议POP3/SMTP代理,支持即时通讯协议AIM/ICQ(icqpr/icqpr.exe)代理,支持MSN 消息 / Live 消息代理 (msnpr/msnpr.exe),支持DNS缓存,TCP/UDP端口映射。

用 /etc/3proxy/add3proxyuser.sh

脚本添加用户 bash add3proxyuser.sh admin 123456

配置文件在 /usr/local/3proxy/conf/3proxy.cfg

#################################
#### http&https proxy setting
#################################
auth none
# deny禁止访问服务器本地
deny * * 127.0.0.1,192.168.1.1
# 允许HTTP和HTTPS流量
allow * * * 80-88,8080-8088 HTTP
allow * * * 443,8443 HTTPS
# 这里使用默认端口3128
proxy -n

#################################
#### socks4/4.5/5 proxy setting
#################################
auth strong
flush
# 允许所有你配置的用户连接,注意这里并不是不认证
allow *
# 设置最大连接数为20
maxconn 20
# 这里手动指定端口1081
socks -p1081

可以看到刚才配置的代理端口1081,3128处于监听状态。

客户端只要进行相应配置就可以

172.26.30.82:3128 类型HTTP/HTTPS 无密码

172.26.30.82:1081 类型SOCKS4/5 有密码,user1/pass1,user2/pass2

Windows 10/11 暂停更新终极教程

创文本文件,命名:“stopupdate.reg”,用记事本打开,复制以下代码:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsUpdate\UX\Settings]
"FlightSettingsMaxPauseDays"=dword:0000149f
"PauseFeatureUpdatesStartTime"="2023-08-06T08:00:00Z"
"PauseFeatureUpdatesEndTime"="2038-01-19T03:14:07Z"
"PauseQualityUpdatesStartTime"="2023-08-06T08:00:00Z"
"PauseQualityUpdatesEndTime"="2038-01-19T03:14:07Z"
"PauseUpdatesExpiryTime"="2038-01-19T03:14:07Z"

内容写完之后退出编辑界面,双击运行保存好的文件,即可成功导入注册表。(若要恢复,修改 2038 等时间,重新执行脚本)

原理很简单,系统默认最大可推迟 5 周,这注册表是在追加 15 年的选项而已。

暂停更新的时间,理论上限为 268435455 天(0x7fffffff),约 73.5 万年

原文引用:https://my.oschina.net/hardbone/blog/10098863

that is the best.

You know what they say ? Never go grocery shopping when you’re hungry, you grab the wrong tings And the same as their life.Nerver go into a relationship when you feel lonely.You might grab the wrong thing Think about it.Because when you’re desperate,you grab anything you want.not want you need. And I want you to get only waht you need and that is the best.