一、前言 在工作中经常要与 mysql 打交道,但是对 mysql 的各个字段类型一直都是一知半解,因此写本文总结记录一番。 二、简介 ? ...对于 int 类型的一些基础知识其实上图已经说的很明白了,在这里想讨论下常用的 int(11) 代表什么意思,很长时间以来我都以为这代表着限制 int 的长度为 11 位,直到有天看到篇文章才明白,11...代表的并不是长度,而是字符的显示宽度,在字段类型为 int 时,无论你显示宽度设置为多少,int 类型能存储的最大值和最小值永远都是固定的,这里贴一些原文片段。 ...那么照文中所说,所以无论怎么设置 int 类型的显示宽度,int 所能存储的最大值和最小值是固定的,那么这个显示宽度到底有什么用呢? ...三、结论 从上个例子我们可以得出以下几个结论: 1、如果一个字段设置了无符号和填充零属性,那么无论这个字段存储什么数值,数值的长度都会与设置的显示宽度一致,如上述例子中的字段 b,插入数值 1 显示为
大家好,又见面了,我是你们的朋友全栈君。 展开全部 代码块是一种常见的代码形式。...代码块的格式如下: 1、普通代码块:是最常见的代码块,在方法里用一对“{}”括起来的数据,就是普通的代码块, 2、构造代码块:是在类中直接定义的,用“{}”括起来的代码。...3、静态代码块:他在类中的成员位置,用“{}”括起来的代码。...所以他会执行class Nihaoa类下的静态块,在执行 main方法,编译class GouZao类,然后执行代码,静态的执行一次,构造方法块每次执行 java中“:” 如果是switch...中的,是它的一种固定写法。
python中for _ in range () 中’_'的意思以斐波那契数列为例#求前20项的斐波那契数a = 0b = 1for _ in range(20): (a, b) = (b, a...+ b) print(a, end=' ')其中’_’ 是一个循环标志,也可以用i,j 等其他字母代替,下面的循环中不会用到,起到的是循环此数的作用 就像C语言中for (int i ; i<100...; i++){ 代码块;}其中的’i’在下面并不会用到,起到的只是控制循环此数的作用。
/* Navicat MySQL Data Transfer -- Navicat MySQL数据转换信息 Source Server : localhost...-- 源主机 Source Database : db_fz -- 源数据库名 Target Server Type : MYSQL
sql中declare是声明的意思32313133353236313431303231363533e58685e5aeb931333365653236,就是声明变量的,这个一般是用在函数和存储过程中的。...mysql存储过程中,定义变量有两种方式: 1.使用set或select直接赋值,变量名以 @ 开头. 例如:set @var=1; 可以在一个会话的任何地方声明,作用域是整个会话,称为会话变量。...2.以 DECLARE 关键字声明的变量,只能在存储过程中使用,称为存储过程变量,例如: DECLARE var1 INT DEFAULT 0; 主要用在存储过程中,或者是给存储传参数中。...在存储过程中,使用动态语句,预处理时,动态内容必须赋给一个会话变量。...语句中就可以使用@local_variable来调用变量 声明中可以提供值,否则声明之后所有变量将初始化为NULL。
大家好,又见面了,我是你们的朋友全栈君。...展开全部 1、在JAVA程序中由String和“+”参与的运算变量都会被转为字符类型,可以理解为先把32313133353236313431303231363533e4b893e5b19e31333335313237...System.out.println(“str is “+str); System.out.println(“booleanstr is “+booleanstr); } } 2、多个变量参与运算时JAVA程序每行的执行顺序是从左到右
碰巧看到一篇文章提到了Oracle的greatest函数,相对应的有个least,以为这俩是个新的函数,但是看了下官方文档,其实在11g的《SQL Language Reference》,就提到了他们,...least函数介绍, LEAST returns the least of a list of one or more expressions....概括来讲, 1. greatest/least可以接收一个或多个字面值/字段列,返回其中的最大值/最小值。 2. greatest/least返回的数据类型,参照第一个参数的数据类型。...当参数是两个number类型的,返回的是每行中数值最大的值, SQL> select greatest(id1, id2) from t_compare; GREATEST(ID1,ID2) ----...------------- 2 3 当参数是两个varchar2类型的,返回的是每行中字符最大的值, SQL> select greatest
大家好,又见面了,我是你们的朋友全栈君。 text字段类型是允许存放65535字节内的文字字符串字段类型。...mediumtext字段类型是允许存放16777215字节内的文字字符串字段类型。 mysql中text,longtext,mediumtext字段类型区别为:字节限制不同、I/O不同、行迁移不同。...一、字节限制不同 1、text字段类型:text字段类型的字节限制为65535字节。 2、longtext字段类型:longtext字段类型的字节限制为2147483647字节。...3、mediumtext字段类型:mediumtext字段类型的字节限制为16777215字节。...3、mediumtext字段类型:mediumtext字段类型比text字段类型更容易造成多余的I/O,比longtext字段类型更不容易造成多余的I/O。
大家好,又见面了,我是你们的朋友全栈君。...其中有一些屬性及其getter setter方法的類,有時可以作為value object或dto(Data Transform Object)來使用.當然,如果你有一個簡單的運算屬性也是可以的,但不允許有業務方法...POJO是Plain Ordinary Java Objects的縮寫不錯,但是它通指沒有使用Entity Beans的普通java對象,可以把POJO作為支持業務邏輯的協助類。...POJO有一些private的參數作為對象的屬性。然后針對每個參數定義了get和set方法作為訪問的接口。...long getId() { return id; } public String getName() { return name; } } POJO對象有時也被稱為Data對象,大量應用於表現現實中的對象
任何数据库在设计之初都有主键,没有主键的表是不完整的,尤其在MYSQL中,而MYSQL中的主键设计中,总有一些 “奇葩” 的行为,来让MYSQL 在运行中,因为主键的奇葩设计而导致各种各样的问题,我们今天来总结总结...3 复合主键 很多MYSQL设计中表的主键被设计成复合主键,而复合主键的使用中会存在一些问题 问题1 性能问题 在MYSQL 中的数据组织方式是 B+TREE的方式,而主键是根节点的组织中的通过排序的方式来存放数据的一种数据存储组织方式...问题 2 死锁问题 因为在MYSQL中不同的隔离级别会对数据库产生不同的影响,实际就是GAP LOCK ,next-key-looking 的问题,具体参见专业描述 RR RC 在范围查询和数据插入...,最后影响了2行数据,实际上就是 delete + insert (个人认为),尤其在MYSQL中对于性能的影响会较大。...综上所述,复合主键使用 on duplicate key update 应该小心注意逻辑上是否符合最初的设计要求,同时在MYSQL 的表设计中应尽量不使用复合主键来进行数据表的设计,避免一些未知问题的产生
对于Scanner的进一步理解还是在LeetCode的一道算法题上,题目大意是输入一组分式加法构成的字符串,要求输出分式相加的结果。首先是输入”-2/3+2/3-4/5″,接着求其和。...首先第一步需要解析字符串为所需的数据,我使用了split()的方式,有位大哥就使用了`scanner.useDelimiter(pattern)`方法,直接将数据解析到了Scaner对象中。...# Scanner的工作方式 Scanner的分隔符模式将输入分割到令牌(token,就是临时存储区域),默认情况下以**空格**分割。然后可以使用各种next方法将得到的令牌转换成不同类型的值。...`pattern的模式`,并返回一个新的Scanner对象。...**总结:使用Scanner+正则的组合可以简化很多字符串的处理,而无需使用大量的代码分割字符串和数值转换。
[ -r FILE ] 如果 FILE 存在且是可读的则为真。 [ -s FILE ] 如果 FILE 存在且大小不为o则为真。...[ -w FILE ] 如果 FILE 如果 FILE 存在且是可写的则为真。 [ -x FILE ] 如果 FILE 存在且是可执行的则为真。...[ FILE1 -ef FILE2 ] 如果 FILE1 和 FILE2 指向相同的设备和节点号则为真。...[ -z STRING ] “STRING” 的长度为零则为真。 [ -n STRING ] or [ STRING ] “STRING” 的长度为非零 non-zero则为真。...[ -z “echo 111s|sed 's/[0-9]//g'” ] && echo 1 || echo 0 #把字符串中的数字都替换掉
大家好,我是架构君,一个会写代码吟诗的架构师。今天说一说java中的实例什么意思?,希望能够帮助大家进步!!! 实例是指基于某个类的对象实现。这一过程被称为实例化。...实例生成: 1、使用new关键字 (需要public修饰的构造方法,默认的无参构造会有被覆盖隐藏问题,使用框架时需要注意。...也可以通过控制构造方法的访问修饰符,实现单例模式-懒汉|饿汉(双重检查锁)|静态内部类|枚举-。) 2、Class类的newInstance方法。...3、Constructor类的newInstance方法 4、clone(实现Cloneable接口) 序列化与反序列化(实现Serializable或Externalizable ) 谢谢大家,希望帮助更多的人
赋值运算符有: =、+=、-=、*=、/=、%=、&=、^=、|=、>= “+=”的使用,a += 10; 等价于 a = a+10; 。”-=”是相同的道理。 拓展: “==”、“!...=” 当使用“==”的时候表示判断如if(a==10)如果a等于10则执行,不等于则跳过if内语句,执行之后语句。“!=”表示判断不等于,如果不等于则执行。 多提一点,以后肯定会学到的。...“==”比较的是地址值。基本数据类型用“==”比较的是常量池的数据的地址,引用数据类型用“==”比较的是对象的地址。
quickSummary >p+p{color:red;} #quickSummary>p+p+p{color:inherit;} #quickSummary p:nth-child(2){color:red} 这段代码中的...'>'是什么意思,还有就是'','<'都是一样的意思 ? p+p,p+p+p,是什么意思 nth-child及nth-child(2)是什么意思? 希望能详细解释这段代码,谢谢!...这些是CSS3特有的选择器,A>B 表示选择A元素的所有子B元素。 与A B的区别在于,A B选择所有后代元素,而A>B只选择一代。 另外:没有<的用法。 A+B表示HTML中紧随A的B元素。...nth-child是个伪类的用法,如p:nth-child(2)就表示在p的父元素中选择位居第二位的p,这个可能不太好理解,自己试一试就知道了。
大家好,又见面了,我是你们的朋友全栈君。...IE中: document.body.clientWidth ==> BODY对象宽度 document.body.clientHeight ==> BODY对象高度 document.documentElement.clientWidth...==> 可见区域宽度 document.documentElement.clientHeight ==> 可见区域高度 FireFox中: document.body.clientWidth...document.documentElement.clientWidth ==> 可见区域宽度 document.documentElement.clientHeight ==> 可见区域高度 Opera中:...scrollLeft:设置或获取位于对象左边界和窗口中目前可见内容的最左端之间的距离 scrollTop:设置或获取位于对象最顶端和窗口中可见内容的最顶端之间的距离 scrollWidth:
简单说,就是SqlCommand对象的方法,执行返回数据的Select语句。...ExecuteReader 返回一个 DataReader对象:如果在SqlCommand对象中调用,则返回SqlDataReader;如果在OleDbCommand对象中调用,返回的是OleDbDataReader...可以调用DataReader的方法和属性迭代处理结果集。它是一个快速枚举数据库查询结果的机制,是只读、只进的。对SqlDataReader.Read的每次调用都会从结果集中返回一行。...()如果在没有数据的时候使用时,就会出错“对像没有实例化”的错误。...所以我们在判断是否有数据时,只可以用ExecuteReader()中的REad()方法来检测。 ④: DataReader还有一个GetValue方法可以用来检索字段的值。
发表于2017-04-112019-01-01 作者 wind 下面我们一起来看一篇关于shell条件判断if中的-a到-z的意思,有需要了解的朋友不防进入参考参考. [ -a FILE ] 如果...[ -r FILE ] 如果 FILE 存在且是可读的则为真。 [ -s FILE ] 如果 FILE 存在且大小不为o则为真。...[ -w FILE ] 如果 FILE 如果 FILE 存在且是可写的则为真。 [ -x FILE ] 如果 FILE 存在且是可执行的则为真。...[ FILE1 -ef FILE2 ] 如果 FILE1 和 FILE2 指向相同的设备和节点号则为真。...[ -z STRING ] “STRING” 的长度为零则为真。 [ -n STRING ] or [ STRING ] “STRING” 的长度为非零 non-zero则为真。
要理解yield,先理解几个概念 可迭代的(Iterables) 从list中挨个读取item称为迭代, 如下例所示。...print(i) 1 2 3 mylist是可迭代的。...因为它们不把数值存储在内存中,而是即时生成它们。 >>> mygenerator = (x*x for x in range(3)) >>> for i in mygenerator: ......Yield yield关键字很像return,所不同的是,它返回的是一个生成器。 >>> def createGenerator(): ... mylist = range(3) ......print(i) 0 1 8 当你调用这个函数的时候,函数内容并没有执行,而是返回一个生成器对象。然后,你再用for去遍历这个生成器。
领取专属 10元无门槛券
手把手带您无忧上云