数据库总结
1 关系数据库系统与文件数据库系统有什么区别?
2 SQL语言的功能有哪些
基本SQL语句有select、insert、update、delete、create、drop、grant、revoke等。
3 内连接与外连接的区别?
4 什么是事务?
事务是数据库中一个单独的执行单元,它通常由高级数据库操作语言(如SQL)或编程语言(如C++、Java等)书写的用户程序执行引起。
5 什么是死锁
在操作系统中有若干程序并发执行,它们不断地申请、释放资源,在此过程中,由于争夺资源而处于无限期的等待状态,造成程序无法继续执行,若无外力作用,它们都将无法推进下去,这时称系统处于死锁状态或系统产生了死锁。此时便只能通过外力来打破这种状态。
产生死锁的原因有以下3点:
首先,资源不足。
其次,进程进行推进顺序不对,进程在运行中具有异步性,当进程推进顺序不当时,便产生死锁。
最后,资源分配不当,如果系统资源充足,进程的资源请求都能得到满足,死锁的可能性会被大大降低,而进程推进顺序与速度不同,也可能会产生死锁。
总的来说,产生死锁的4个必要条件:
1)互斥,每个资源每次只能被一个进程使用;
2)请求与保持等待,一个进程因请求资源而被阻塞,对已获得的资源保持不放;
3)不可剥夺,进程已获得的资源,在未使用完之前,不能强制剥夺;
4)环路等待,若干进程之间形成首尾相接的等待资源关系
所以,预防死锁的方法就是打破死锁产生的4个条件中的一个或多个,因此需要最大限度地增加系统资源,合理地安排进程的顺序并确定合理的分配资源的算法。
避免死锁是在资源的动态分配过程中,采取有效的方法防止系统进入不安全状态,达到预防死锁的目的,其中最具有代表性的方法就是银行家算法。
6 什么是共享锁?什么是互斥锁