感觉还行,最起码还能做
数据库部分
1.使用内部连接和外部连接,连接条件可以使用聚合函数吗?
可以
扩展:
左连接、右连接、内连接
左右连接可以互换:
A left join B on 条件 = B left join A on 条件
注:尽量使用左连接,出于移植时兼容性考虑。
内连接:左右连接的交集。
聚合函数
常用聚合函数
|
作用
|
count()
|
求数据表的行数
|
max()
|
求某列的最大数值
|
min()
|
求某列的最小值
|
sum()
|
对数据表的某列进行求和操作
|
avg()
|
对数据表的某列进行求平均值操
|
2.含有分组视图(使用GROUP BY和having)可以进行更新操作吗?
不可以
3.给定关系模式学生(学号、课程号、名次),若每个学生每门课程有一定的名次,每门课程每一名次只有一名学生,下列正确的是()
只有(学号,课程号)能作为候选键
对于这类问题,可以逐一进行分析。
候选键的概念是:如果一个属性(字段)集能够唯一标识元组(记录),而且不含有多余的属性,则该属性集称为候选键。(学号,课程号)显然是可以唯一标识一条记录的。而由于每门课程每一名次只有一名学生,因此(课程号,名次)也能够唯一地标识一条记录。因此描述A是正确的。
描述B显然与描述A矛盾,因此显然是错误的。
在2NF的基础上,如果每个非主属性都不传递依赖于键(注:主属性是指候选键中的任意一个属性,非主属性则是指候选键之外的属性),就满足了3NF。由于两个可能的候选键都是由两个属性构成的,非主属性只有一个,显然不存在传递依赖,因此满足3NF要求,即描述C也是正确的。
BCNF是修正的第三范式,也称为扩充的第三范式。如果每个属性都不传递依赖于候选键,则满足BCNF。满足BCNF的关系模式有以下特点:所有的非主属性都对每个键完全函数依赖;所有的主属性对每一个不包含它的键,也是完全函数依赖;没有任何属性完全函数依赖于非键的任何一组属性。同理,在这个关系模式中也是不存在传递依赖的,因此也满足BCNF,即描述D也是正确的。
4.在一个数据库中,既可以有InnoDB类型的表,也可以有Myisam类型的表,这个说法正确吗?
正确
表的类型可以随意指定。
5.数据库是计算机系统中按照一定的数据模型组织,结构化的()
数据的集合
数据库是存放数据的仓库,是长期存放在计算机内的,有组织的,可共享的数据集合。
6.当fetch执行失败时,哪种游标的属性值为true?
%notfound
暂时不知道为啥
7.关于存储过程参数,正确的说法是()
存储过程输出参数可以不输入信息而调用过程
暂时不知道为啥
8.Timestamp数据类型不包含下面的哪个值域?
Century
时间戳当然不会有百年这种时间戳了
9.什么函数用来对行计数?
count()
10.你发出drop table emp;此时还没有明确发出commit命令。你能用什么命令撤销上面的drop语句所做的操作?
发出一个rollback命令
回滚到之前
运维基础部分:
1.哪个shell命令查看tcp端口的统计信息的?
nestat -lt
(l表示list列出,t表示tcp)
2.JVM中那些参数表示最大允许尺寸?
答:最大允许尺寸:-Xmx
-
-Xmx3550m:设置JVM最大可用内存为3550MB。
-
-Xms3550m:设置JVM最小可用内存为3550MB(这个值建议设置成与-Xmx相同,以避免每次垃圾回收完成后JVM重新分配内存)。
-
-Xmn2g:设置年轻带大小为2G,整个堆大小=年轻代大小+年老代大小+持久代大小,持久代一般固定大小为64MB,所以增大年轻代后,将会减小年老代大小,此值对系统性能影响较大,Sun官方推荐配置为整个堆的3/8。
-
-Xss128k:设置每个线程的堆栈大小.JDK5.0以后每个线程堆栈大小为1M,以前每个线程堆栈大小为256K.更具应用的线程所需内存大小进行
调整.在相同物理内存下,减小这个值能生成更多的线程.但是操作系统对一个进程内的线程数还是有限制的,不能无限生成,经验值在3000~5000左右.
3.Top命令中哪些参数是查看正在运行进程数?
答:Tasks
详见:
Linux–top命令详解
4.查看磁盘空间使用情况的命令是什么?
答案:df -h
du(disk usage)命令用于显示目录或文件的大小
JAVA部分:
1.在JAVA中,封装的好处?
-
1.当需要发生变化时,封装代码易于修改
-
2.降低模块间的耦合度,增强模块的内聚度
-
3.封装的代码易于测试
2.Java对类Welcome进行低音正确的是:
public class Welcome
3.使用new运算符穿件的线程对象处于:
应该是创建状态
-
1.
新建态(New)
:用new语句创建的线程对象处于新建态,此时它和其他Java对象一样,仅仅在堆区中被分配了内存
-
2.
就绪态(Runnable)
:当一个线程对象创建后,其他线程调用它的start()方法,该线程就进入就绪状态,Java虚拟机会为它创建方法调用栈和程序计数器。处于这个状态的线程位于可运行池中,等待获得CPU的使用权
-
3.
运行状态(Running)
:处于这个状态的线程占用CPU,执行程序代码。在并发运行环境中,如果计算机只有一个CPU,那么任何时刻只会有一个线程处于这个状态。如果计算机有多个CPU,那么用一时刻可以让几个线程占用不同的CPU,使它们都处于运行状态。只有处于就绪状态的线程才有机会转到运行状态
-
4.
阻塞状态(Blocked)
:阻塞状态是指线程因为某些原因放弃CPU,暂时停止运行。当线程处于阻塞状态时,Java虚拟机不会给线程分配CPU,知道线程重新进入就绪状态,它才会有机会转到运行状态。
4.下面定义的变量能执行哪个操作?
String s1 = new String("Hello");
String s2 = new String("hahha");
String s3 = new String();
答案:s3 = s1 + s2
网络知识
1.HTTP服务和SMTP服务的服务器使用哪个协议绑定接口函数?
A.DHCP
B.UDP
C.IP
D.TCP
TCP
2.计算机网络中广域网和局域网的分类是以()来划分的?
网络连接距离
3.以下哪个命令是用来显示网络连接、路由表、接口状态、多播成员等各种网络相关信息?
ipconfig
4.虚拟网(VLAN)可以有多种划分方式,下列方式中不正确的是()
基于用户
VLAN在交换机上的实现方法,可以大致划分为4类。
(1)基于端口划分的VLAN
。这种划分VLAN的方法是根据以太网交换机的端口来划分,缺点是如果VLAN的用户离开了原来的端口,到了一个新的交换机的某个端口,那么就必须重新定义。
(2)基于MAC地址划分VLAN
这种划分VLAN的方法是根据每个主机的MAC地址来划分的,即对每个MAC地址的主机都配置它属于哪个组。由于这种划分VLAN的方法的最大优点就是当用户物理位置移动时,即从一个交换机换到其他的交换机时, VLAN不用重新配置,所以,
可以认为这种根据MAC地址的划分方法是基于用户的 VLAN
,这种方法的缺点是初始化时,所有的用户都必须进行配置,如果有几百个甚至上千个用户的话,配置是非常累的。而且这种划分的方法也导致了交换机执行效率的降低,因为在每一个交换机的端口都可能存在很多个VLAN组的成员,这样就无法限制广播包了。另外,对于使用笔记本电脑的用户来说,他们的网卡可能经常更换,这样, VLAN就必须不停地配置。
(3)基于网络层划分VLAN
这种划分VLAN的方法是根据每个主机的网络层地址或协议类型(如果支持多协议)划分的,虽然这种划分方法是根据网络地址,比如 IP地址,但它不是路由,与网络层的路由毫无关系。它虽然查看每个数据包的IP地址,但由于不是路由,所以,没有RIP,OSPF等路由协议,而是根据生成树算法进行桥交换。这种方法的优点是用户的物理位置改变了,不需要重新配置所属的VLAN,而且可以根据协议类型来划分VLAN,这对网络管理者来说很重要,另外,这种方法不需要附加的帧标签来识别VLAN,这样可以减少网络的通信量。这种方法的缺点是效率低,因为检查每一个数据包的网络层地址是需要消耗处理时间的(相对于前面两种方法),一般的交换机芯片都可以自动检查网络上数据包的以太网帧头,但要让芯片能检查IP帧头,需要更高的技术,同时也更费时。当然,这与各个厂商的实现方法有关。
(4)根据IP组播划分VLAN
。IP组播实际上也是一种VLAN的定义,即认为一个组播组就是一个VLAN,这种划分的方法将VLAN扩大到了广域网,因此这种方法具有更大的灵活性,而且也很容易通过路由器进行扩展,当然这种方法不适合局域网,主要是效率不高。
5.对于IP地址为200.5.6.3,属于()类
C类
计算机基础
1.计算机软件系统一般分为()两部分
系统软件和应用软件
2.计算机软件是指()
计算机程序及有关资料
3.32位处理器的最大虚拟地址空间为()
4GB
2^32bit=4G,所以32位系统最高只支持4G内存
大多数计算机使用8位的块,或者叫做字节(Byte),来作为最小的可寻址的存储器单元,而不是访问存储器中单独的位。地址映射的关系,地址总线32位,最大可以映射到2^32个块
4.产生软件维护的副作用,是指()
因修改软件而造成的错误
Linux
1./dev/ethX代表()
以太网接口设备
2.在shell脚本中,用来读取文件内各个域的内容并将其赋值给Shell变量的命令是()
read
3.修改文件test的徐鹤模式,使其文件属主具有读、写、执行的权限,组合其他用户具有读、执行权限()
chomd 755 test
4.如何让shell脚本每分钟执行一次()
5.在Linux下ping命令用来
测试网络是否可达
6.当前($HOME)目录下有一个叫做"-r"的文件,然后运行 rm * 会发生什么情况?
删除当前目录下的所有文件,但不包括文件夹
7.字符设备文件类型标志是()
c
8.Linux中/etc/sysconfig/network文件中hostname是指()
就是个计算机标识
我选了
netbios
9.在redhat Linux系统中,下列哪个命令可以用来将分区挂载到目录
mount