next

经典SQL语句大全

落爺英雄遲暮 提交于 2020-08-12 03:48:36
基础篇 1 、说明:创建数据库 CREATE DATABASE database-name 2 、说明:删除数据库 drop database dbname 3 、说明:备份 sql server --- 创建 备份数据的 device USE master EXEC sp_addumpdevice 'disk', 'testBack', 'c:\mssql7backup\MyNwind_1.dat' --- 开始 备份 BACKUP DATABASE pubs TO testBack 4 、说明:创建新表 create table tabname(col1 type1 [not null] [primary key],col2 type2 [not null],.. ) 根据已有的表创建新表: A : create table tab_new like tab_old ( 使用旧表创建新表 ) B : create table tab_new as select col1,col2… from tab_old definition only 5 、说明:删除新表 drop table tabname 6 、说明:增加一个列 Alter table tabname add column col type 注: 列增加后将不能删除。 DB2 中列加上后数据类型也不能改变

Qt开源作品32-文本框回车焦点下移

邮差的信 提交于 2020-08-12 03:23:19
一、前言 这个demo由于太过简单,而不用过多的文字描述,其实就是实现了在一个文本框中输入完成以后,回车自动跳入下一个文本框,焦点下移,这个在很多的社保系统、医疗系统等系统中很常用,因为那些系统需要很多输入的地方,最快捷的方法就是输入完成以后回车跳入下一个输入框,这样用户不需要去用鼠标单击来切换光标焦点,在我们平时使用电脑的过程中,鼠标+键盘配合,效率是最高的,比如在编写代码过程中,需要把乱七八糟的代码格式化一下,看起来心情也好了很多,此时直接用快捷键会非常方便的,而不是使用鼠标去选择菜单。 二、代码思路 Widget::Widget(QWidget *parent) : QWidget(parent), ui(new Ui::Widget) { ui->setupUi(this); connect(ui->lineEdit1, SIGNAL(returnPressed()), this, SLOT(next())); connect(ui->lineEdit2, SIGNAL(returnPressed()), this, SLOT(next())); connect(ui->lineEdit3, SIGNAL(returnPressed()), this, SLOT(next())); } Widget::~Widget() { delete ui; } void Widget

Java HashMap的源代码备注,方便以后查看。

拥有回忆 提交于 2020-08-12 02:14:31
package java.util; import java.io.*; public class HashMap<K,V> extends AbstractMap<K,V> implements Map<K,V>, Cloneable, Serializable { // 系统默认初始容量,必须是2的n次幂,这是出于优化考虑的 static final int DEFAULT_INITIAL_CAPACITY = 16; // 系统默认最大容量 static final int MAXIMUM_CAPACITY = 1 << 30; // 系统默认负载因子,可在构造函数中指定 static final float DEFAULT_LOAD_FACTOR = 0.75f; // 用于存储的表,长度可以调整,且必须是2的n次幂 transient Entry[] table; // 当前map的key-value映射数,也就是当前size transient int size; // 阈值 int threshold; // 哈希表的负载因子 final float loadFactor; // 用于确保使用迭代器的时候,HashMap并未进行更改 transient volatile int modCount; // 构造一个带指定初始容量和加载因子的空 HashMap。

GreenPlum 数据倾斜排查

余生长醉 提交于 2020-08-12 01:57:49
在MPP无共享环境中,查询的总响应时间取决于单个node执行最长的process。如果数据偏斜,则具有更多数据的node将花费更多时间来完成,因此每个node必须具有大约相等的行数并执行大约相同的处理量。如果一个node要处理的数据比其他node多得多,可能会导致性能差和内存不足的情况。 将大表连接在一起时,最佳分配至关重要。要执行联接,匹配的行必须一起位于同一node上。如果数据未分配在同一DSK列上,则表之一中所需的行将动态重新分配给其他node。在某些情况下,将执行广播动作,在该动作中,每个node将其各自的行发送到所有其他node,而不是进行重新分配动作,在该重新分配动作中,每个node都会对数据进行哈希处理,然后根据哈希键将行发送到适当的node。 在GPDB中的所有表都是分布的,这意味着它们的数据被分割到系统的所有节点上。如果数据分布的不平坦,查询的性能可能会受到影响。下面的视图可以帮助诊断一张表是否出现了数据不平坦分布。 gp_skew_coefficients gp_skew_idle_fractions gp_skew_coefficients The gp_toolkit.gp_skew_coefficients view shows data distribution skew by calculating the coefficient of

Node.js 蚕食计划(六)—— MongoDB + Koa 入门

℡╲_俬逩灬. 提交于 2020-08-12 00:39:57
一、安装 MongoDB 1. 在 Windows 环境下安装: // Windows 7 / Server 2008 R2 以上的版本 打开官网链接 https://www.mongodb.com/try/download/community 在页面中依次选择 On-Premises => MongoDB Communtiy Server ,然后选择 Platform 为 Windows,最后下载并执行安装包 1. 在 MacOS 安装: 也可以按照上面的方法下载安装包,或者选择 Download 按钮旁的 Copy Link ,通过 curl 命令安装 不过还有另一种不需要打开 MongoDB 官网的办法: 直接使用 brew 安装 ( 参考链接 ) 首先 tab 仓库 brew tap mongodb/brew 然后安装社区版本 brew install mongodb-community 安装的时候会自动创建配置文件: 配置文件: /usr/local/etc/mongod.conf 日志目录: /usr/local/var/log/mongodb 数据目录: /usr/local/var/mongodb 可以用 mongod --version 命令来检查是否安装成功 如果能正常显示当前版本,就说明安装成功,可以直接进入下一节 如果提示 "command not

状态机模式 与 ajax 的结合运用

一曲冷凌霜 提交于 2020-08-12 00:20:23
太神奇了,昨晚做了个梦,梦中我悟出一个道理:凡是涉及到异步操作而且需要返回值的函数,一定要封装成 Promise 的形式,假如返回值取决于多个异步操作的结果,那么需要对每个异步操作进行状态的设计,而且需要封装一个 next 函数。😂😂😂,到了晚上才觉到很有意思,所以结合 ajax 设置最短返回时间 和 最大返回时间进行实践: const PENDING = 'PENDING' const RESOLVED = 'RESOLVED' const REJECTED = 'REJECTED' const FULLFILLED = 'FULLFILLED' /** * @desc 异步操作模拟 * @param time 响应时间 * @param isError 是否抛错 */ const mock = (time, isError) => { return new Promise((resolve, reject) => { setTimeout(() => { if (!isError) { resolve({ user: 'ManbaX' }) } else { reject('request error') } }, time) }) } /** * @desc 生产不同类型请求的工厂函数 * @param time 响应时间 * @param isError 是否抛错 */

Python成为专业人士笔记–comprehension生成式

孤街醉人 提交于 2020-08-11 23:41:56
“专业人士笔记”系列目录: 创帆云:Python成为专业人士笔记--强烈建议收藏!每日持续更新! ​ zhuanlan.zhihu.com Python中的列表生成式是简洁的语法结构。通过对列表中的每个元素应用函数,可以利用它们从其他列表生成列表。下面的部分将解释和演示这些表达式的用法。 生成式语法 列表生成式通过对iterable的每个元素应用一个表达式来创建一个新列表。最基本的形式是 [ <表达式> for <元素> in <迭代器> ] 还有一个可选的“if”条件 [ <表达式> for <元素> in <迭代器> if <条件> ] 创建一个整数平方的list : squares = [x * x for x in (1, 2, 3, 4)] #squares: [1, 4, 9, 16] for表达式依次先将x设置为(1、2、3、4)中的每个值。表达式x * x的结果被附加到一个内部列表中。内部列表在计算完成时分配给最终的数值并返回 上面的代码会提高运算速度,它的计算过程类似下面代码: squares = [] for x in (1, 2, 3, 4): squares.append(x * x) # squares: [1, 4, 9, 16] 应用于每个元素的表达式可以根据业务逻辑写得更加复杂: #从字符串中获取大写字符列表 [s.upper() for s in

【免费下载】5G for the connected World

让人想犯罪 __ 提交于 2020-08-11 23:25:47
今天周日,趁着小朋友还没下课,再发篇下载贴。 这本书曾被3gpp官网首页推荐( https://www.3gpp.org/news-events/2088-5g-for-the-connected-world ),显然很不错。 如果想免费下载这本书,可以在微信公众号中搜索并添加:c13915999999,在后台回复 Devaki ,便会获得下载链接。 下面的内容是3gpp推荐内容的摘选: 5G for the connected World November 13, 2019 The recently published book ‘5G for the connected World’, edited by Devaki Chandramouli, Rainer Liebhart and Juho Pirskanen explains 5G in detail, focusing on 3GPP Release 15 content and how it can be used to enable new services beyond the ones specified for LTE. In this edited extract Devaki Chandramouli and Rainer Liebhart look at how URLLC makes the

如何在JavaScript正则表达式中访问匹配的组?

徘徊边缘 提交于 2020-08-11 23:21:17
问题: I want to match a portion of a string using a regular expression and then access that parenthesized substring: 我想使用 正则表达式 匹配字符串的一部分,然后访问带括号的子字符串: var myString = "something format_abc"; // I want "abc" var arr = /(?:^|\s)format_(.*?)(?:\s|$)/.exec(myString); console.log(arr); // Prints: [" format_abc", "abc"] .. so far so good. console.log(arr[1]); // Prints: undefined (???) console.log(arr[0]); // Prints: format_undefined (!!!) What am I doing wrong? 我究竟做错了什么? I've discovered that there was nothing wrong with the regular expression code above: the actual string which I was testing against

聊聊rocketmq-client-go的TraceInterceptor

我的未来我决定 提交于 2020-08-11 23:01:05
序 本文主要研究一下rocketmq-client-go的TraceInterceptor TraceInterceptor rocketmq-client-go-v2.0.0/producer/interceptor.go // WithTrace support rocketmq trace: https://github.com/apache/rocketmq/wiki/RIP-6-Message-Trace. func WithTrace(traceCfg *primitive.TraceConfig) Option { return func(options *producerOptions) { ori := options.Interceptors options.Interceptors = make([]primitive.Interceptor, 0) options.Interceptors = append(options.Interceptors, newTraceInterceptor(traceCfg)) options.Interceptors = append(options.Interceptors, ori...) } } WithTrace方法在options.Interceptors后追加TraceInterceptor