SQL-数据库知识

数据库知识

1.SQL的中文全称是什么?
答:结构化查询语言
2.SQLServer Mysql属于那种类型的数据库?
答:关系型
3.数据库管理系统的登录方式有哪些?
答:Windows:操作系统登陆后,就可以直接登陆数据库软件
SQL Server 权限最高的用户:sa
机房默认密码:用账号密码登录
4.数据库移植可以进行哪些操作?(至少说出两种)
答:
(1):数据库的联机丶脱机(数据库的拷贝);
(2):数据库的分离丶附加(数据库的拷贝和添加);(3):数据库的备份和还原(数据库的一个保险)
5.数据库的物理文件有哪些?
答:
(1):主要数据文件(MDF);
(2):事务日志文件(LDF);
(3):次要数据文件(NDF)
6.数据库的约束类型有哪些?
答:

约束类型 说明
主键约束(Primary Key) 确定表中的标识列,(主键字段不能为空,必须唯一))(标识:确定一个对象的唯一表现
外键约束(Foreign key) 确定表与表之间的联系方式,一般情况下通过从表的标识列进行确定,主表:给哪张表添加约束哪张表就是主表,辅助表为从表
唯一约束(unique) 确定这个字段中的数据必须是唯一
非空约束(not null) 确定这个字段中的数据必须不能为空
检查约束(CHECK) 设置这个字段中的数据的特性
默认约束(DEFAULT) 若在表中定义了默认值约束,用户在插入新的数据行时,如果该行没有指定数据,那么系统将默认值赋给该列,如果我们不设置默认值,系统默认为NULL。

7.还原清空表的语法是什么?
答:TRUNCATE TABLE [表名]
8.T-SQL语言的组成有哪些?
答:数据定义语言(DDL):
记用户定义存储数据的结构和组织,以及数据项之间的关系;
数据操纵语言(DML):
SQL允许用户或应用程序通过添加新数据、删除旧数据和修改以前存储的数据对数据库进行更新;
数据控制语言(DCL):
可以使用SQL来限制用户检索、添加和修改数据的能力,保护存储的数据不被未授权的用户所访问。
9.SQL中的聚合函数有哪些?至少说出五个?
答:sum:返回表达式中所有值的和;
AVG:计算平均值;
min:返回表达式的最小值;
max:返回表达式的最大值;
count:返回组中项目的数量;
distinct:返回一个集合,删除重复的组。
10.外链接查询分为哪两种?详细说明区别?
答:左联接:如果左表的某一行在右表中没有匹配行,则在关联的结果集行中,来自右表的所有选择列表均为空值;
右联接:将返回右表的所有行,如果右表的某一行在左表中没有匹配行,则将为左表返回空值。
11.什么是视图?什么是游标?
答:
(1):视图:一种虚拟表,具有和物理表相同的功能; (2):游标:一种能够从多条数据中提取到一条机制;
12.什么是索引?有什么优点?
答:
索引:一种特殊的查询表;
优点:数据库的搜索引擎可以利用它加速对于数据库的检索;
13.什么是触发器?什么是事务?
答:
触发器:触发器是一种特殊的存储过程,主要通过事件来触发而执行的。它可以强化约束,来维护数据的完整性和一致性,*可以跟踪数据库内的操作从而不允许未经许可的更新和变化。
事务:事务就是被绑定在一起作为一个逻辑工作单元的SQL语句分组,如果任何一个语句操作失败那么整个操作就失败,回滚到操作前状态。
14.什么是存储过程?有什么优点?
答:
存储过程:存储过程是一个预编译的SQL语句,
优点是允许模块化的设计,可以多次调用。
15.什么是SQL注入?如何防止SQL注入?
答:SQL注入就是把SQL命令插入到web表单的输入域或页面请求的查询字符串,欺骗服务器执行恶意的SQL命令。
(1)用存储过程来执行所有的查询;
(2)限制表单或查询字符串的输入长度;
(3)检查用户输入的合法性,确保输入的内容只包含合法的数据;
(4)将用户登录名称、密码等数据加密保存;
(5)检查提取数据的查询所返回的记录数量。
16.写出一条SQL语句:取出表中第31到第40条数据(已自动增长的ID作为主键,主键可能不连续)
答:
select top(10) from 【表名】 where id not in(select top(30)id from 【表名】)
17.事务的四大特性是神魔?
答:
原子性:事务是一个整体的工作单元,事务对数据库所做的操作要么全部执行,要么全部取消。如果某条语句执行失败,则所有语句全部回滚。

一致性:事务在完成时,必须使所有的数据都保持一致状态。在相关数据库中,所有规则都必须应用于事务的修改,以保持所有数据的完整性。如果事务成功,则所有数据将变为一个新的状态;如果事务失败,则所有数据将处于开始之前的状态。

隔离性:由事务所作的修改必须与其他事务所作的修改隔离。事务查看数据时数据所处的状态,要么是另一并发事务修改它之前的状态,要么是另一事务修改它之后的状态,事务不会查看中间状态的数据。

持久性:当事务提交后,对数据库所做的修改就会永久保存下来。
18.详细介绍ADO.NET的五大内置对象?
答:
①connection:建立与数据库的链接。
②command:用来对数据库发出一些指令。
③datareader:读取数据。
④dataadapter:是dataset和数据源之间的桥梁。
⑤dataset:打从数据库中所查询到的数据保留起来。
19.使用用户名:sa和密码:123登录的数据库管理系统的;连接字符串如何写?
答:
string strCon = “Data Source=.; Initial Catalog=【数据库名】;User id=sa;pwd=123;”;
20.Command对象的主要方法有哪些?详细介绍
答:
ExecuteNonQuery():
执行一个SQL语句,返回受影响的行数,这个方法主要用于执行对数据库执行增加、更新、删除操作,注意查询的时候不是调用这个方法。用于完成insert,delete,update操作。

ExecuteScalar():
从数据库检索单个值。这个方法主要用于统计操作。ExecuteScalar()这个方法是针对SQL语句执行的结果是一行一列的结果集,这个方法只返回查询结果集的第一行第一列。
ExecuteReader用于实现只进行读取的高效数据查询。

ExecuteReader():
返回一个SqlDataReader对象,可以通过这个对象来检查查询结果,它提供了只进只读的执行方式,即从结果中读取一行之后,移动到另一行,则前一行就无法再用
21.三层架构主要有那三层组成?每层都有什么作用?详细说明
答:
UI:表现层,主要表示web方式;
BLL:业务逻辑层,主要针对具体问题的操作,也可以理解为对数据层的操作;
DAL:数据访问层,主要对非原始数据的操作层,也就是对数据库操作而不是数据,具体为业务逻辑层或表现层提供数据服务。
22.为什么要分三层?有哪些好处?
答:为了实现高内聚低耦合的思想,降低层与层之间的依赖,标准化。
23.说出B/S和C/S的区别
答:①体积:C/S胖客户端,B/S瘦客户端
②效率:C/S本地运行,B/S服务器端运行
③网络:C/S依赖不强,B/S必须依赖网络
④用户:C/S体验更好,B/S其次

发布了148 篇原创文章 · 获赞 365 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/chonbi/article/details/104825365