精华内容
下载资源
问答
  • 数据库错误码大全

    千次阅读 2021-06-05 02:30:10
    12 访问无效。 13 数据无效。 14 存储器不足,无法完成此操作。 15 系统找不到指定的驱动器。 16 无法删除目录。 17 系统无法将文件移到不同的驱动器。 18 没有更多文件。 19 介质受写入保护。 20 系统找不

    0 操作成功完成。
    1 功能错误。
    2 系统找不到指定的文件。
    3 系统找不到指定的路径。
    4 系统无法打开文件。
    5 拒绝访问。
    6 句柄无效。
    7 存储控制块被损坏。
    8 存储空间不足,无法处理此命令。
    9 存储控制块地址无效。
    10 环境错误。
    11 试图加载格式错误的程序。
    12 访问码无效。
    13 数据无效。
    14 存储器不足,无法完成此操作。
    15 系统找不到指定的驱动器。
    16 无法删除目录。
    17 系统无法将文件移到不同的驱动器。
    18 没有更多文件。
    19 介质受写入保护。
    20 系统找不到指定的设备。
    21 设备未就绪。
    22 设备不识别此命令。
    23 数据错误 (循环冗余检查)。
    24 程序发出命令,但命令长度不正确。
    25 驱动器无法找出磁盘上特定区域或磁道的位置。
    26 无法访问指定的磁盘或软盘。
    27 驱动器找不到请求的扇区。
    28 打印机缺纸。
    29 系统无法写入指定的设备。
    30 系统无法从指定的设备上读取。
    31 连到系统上的设备没有发挥作用。
    32 进程无法访问文件,因为另一个程序正在使用此文件。
    33 进程无法访问文件,因为另一个程序已锁定文件的一部分。
    36 用来共享的打开文件过多。
    38 到达文件结尾。
    39 磁盘已满。
    50 不支持网络请求。
    51 远程计算机不可用 。
    52 在网络上已有重复的名称。
    53 找不到网络路径。
    54 网络忙。
    55 指定的网络资源或设备不再可用。
    56 已到达网络 BIOS 命令限制。
    57 网络适配器硬件出错。
    58 指定的服务器无法运行请求的操作。
    59 发生意外的网络错误。
    60 远程适配器不兼容。
    61 打印机队列已满。
    62 无法在服务器上获得用于保存待打印文件的空间。
    63 删除等候打印的文件。
    64 指定的网络名不再可用。
    65 拒绝网络访问。
    66 网络资源类型错误。
    67 找不到网络名。
    68 超过本地计算机网卡的名称限制。
    69 超出网络 BIOS 会话限制。
    70 远程服务器已暂停,或正在启动过程中。
    71 当前已无法再同此远程计算机连接,因为已达到计算机的连接数目极限。
    72 已暂停指定的打印机或磁盘设备。
    80 文件存在。
    82 无法创建目录或文件。
    83 INT 24 失败。
    84 无法取得处理此请求的存储空间。
    85 本地设备名已在使用中。
    86 指定的网络密码错误。
    87 参数错误。
    88 网络上发生写入错误。
    89 系统无法在此时启动另一个进程。
    100 无法创建另一个系统信号灯。
    101 另一个进程拥有独占的信号灯。
    102 已设置信号灯且无法关闭。
    103 无法再设置信号灯。
    104 无法在中断时请求独占的信号灯。
    105 此信号灯的前一个所有权已结束。
    107 程序停止,因为替代的软盘未插入。
    108 磁盘在使用中,或被另一个进程 锁定。
    109 管道已结束。
    110 系统无法打开指定的 设备或文件。
    111 文件名太长。
    112 磁盘空间不足。
    113 无法再获得内部文件的标识。
    114 目标内部文件的标识不正确。
    117 应用程序制作的 IOCTL 调用错误。
    118 验证写入的切换参数值错误。
    119 系统不支持请求的命令。
    120 此功能只被此系统支持。
    121 信号灯超时时间已到。
    122 传递到系统调用的数据区太小。
    123 文件名、目录名或卷标语法不正确。
    124 系统调用级别错误。
    125 磁盘没有卷标。
    126 找不到指定的模块。
    127 找不到指定的程序。
    128 没有等候的子进程。
    130 试图使用操作(而非原始磁盘 I/O)的已打开磁盘分区的文件句柄。
    131 试图移动文件指针到文件开头之前。
    132 无法在指定的设备或文件上设置文件指针。
    133 包含先前加入驱动器的驱动器无法使用 JOIN 或 SUBST 命令。
    134 试图在已被合并的驱动器上使用 JOIN 或 SUBST 命令。
    135 试图在已被合并的驱动器上使用 JOIN 或 SUBST 命令。
    136 系统试图解除未合并驱动器的 JOIN。
    137 系统试图解除未替代驱动器的 SUBST。
    138 系统试图将驱动器合并到合并驱动器上的目录。
    139 系统试图将驱动器替代为替代驱动器上的目录。
    140 系统试图将驱动器合并到替代驱动器上的目录。
    141 系统试图替代驱动器为合并驱动器上的目录。
    142 系统无法在此时运行 JOIN 或 SUBST。
    143 系统无法将驱动器合并到或替代为相同驱动器上的目录。
    144 目录并非根目录下的子目录。
    145 目录非空。
    146 指定的路径已在替代中使用。
    147 资源不足,无法处理此命令。
    148 指定的路径无法在此时使用。
    149 企图将驱动器合并或替代为驱动器上目录是上一个替代的目标的驱动器。
    150 系统跟踪信息未在 CONFIG.SYS 文件中指定,或不允许跟踪。
    151 为 DosMuxSemWait 指定的信号灯事件个数错误。
    152 DosMuxSemWait 不可运行。已设置过多的信号灯。
    153 DosMuxSemWait 清单错误。
    154 输入的卷标超过目标文件系统的 长度限制
    155 无法创建另一个线程。
    156 接收进程已拒绝此信号。
    157 段已被放弃且无法锁定。
    158 段已解除锁定。
    159 线程标识的地址错误。
    160 传递到 DosExecPgm 的参数字符串错误。
    161 指定的路径无效。
    162 信号已暂停。
    164 无法在系统中创建更多的线程。
    167 无法锁定文件区域。
    170 请求的资源在使用中。
    173 对于提供取消区域进行锁定的请求不明显。
    174 文件系统不支持锁定类型的最小单元更改。
    180 系统检测出错误的段号。
    183 当文件已存在时,无法创建该文件。
    186 传递的标志错误。
    187 找不到指定的系统信号灯名称。
    196 操作系统无法运行此应用程序。
    197 操作系统当前的配置不能运行此应用程序。
    199 操作系统无法运行此应用程序。
    200 代码段不可大于或等于 64K。
    203 操作系统找不到已输入的 环境选项。
    205 命令子树中的进程 没有信号处理程序。
    206 文件名或扩展名太长。
    207 第 2 环堆栈已被占用。
    208 没有正确输入文件名通配符 * 或 ?,或指定过多的文件名通配符。
    209 正在发送的信号错误。
    210 无法设置信号处理程序。
    212 段已锁定且无法重新分配。
    214 连到该程序或动态链接模块的动态链接模块太多。
    215 无法嵌套调用 LoadModule。
    230 管道状态无效。
    231 所有的管道实例都在使用中。
    232 管道正在关闭中。
    233 管道的另一端上无任何进程。
    234 更多数据可用。
    240 取消会话。
    254 指定的扩展属性名无效。
    255 扩展属性不一致。
    258 等待的操作过时。
    259 没有可用的数据了。
    266 无法使用复制功能。
    267 目录名无效。
    275 扩展属性在缓冲区中不适用。
    276 装在文件系统上的扩展属性文件已损坏。
    277 扩展属性表格文件已满。
    278 指定的扩展属性句柄无效。
    282 装入的文件系统不支持扩展属性。
    288 企图释放并非呼叫方所拥有的多用户终端运行程序。
    298 发向信号灯的请求过多。
    299 仅完成部分的 ReadProcessMemoty 或 WriteProcessMemory 请求。
    300 操作锁定请求被拒绝。
    301 系统接收了一个无效的操作锁定确认。
    487 试图访问无效的地址。
    534 算术结果超过 32 位。
    535 管道的另一端有一进程。
    536 等候打开管道另一端的进程。
    994 拒绝访问扩展属性。
    995 由于线程退出或应用程序请求,已放弃 I/O 操作。
    996 重叠 I/O 事件不在信号状态中。
    997 重叠 I/O 操作在进行中。
    998 内存分配访问无效。
    999 错误运行页内操作。
    1001 递归太深;栈溢出。
    1002 窗口无法在已发送的消息上操作。
    1003 无法完成此功能。
    1004 无效标志。
    1005 此卷不包含可识别的文件系统。 请确定所有请求的文件系统驱动程序已加载,且此卷未损坏。
    1006 文件所在的卷已被外部改变,因此打开的文件不再有效。
    1007 无法在全屏幕模式下运行请求的操作。
    1008 试图引用不存在的令牌。
    1009 配置注册表数据库损坏。
    1010 配置注册表项无效。
    1011 无法打开配置注册表项。
    1012 无法读取配置注册表项。
    1013 无法写入配置注册表项。
    1014 注册表数据库中的某一文件必须使用记录或替代复制来恢复。恢复成功完成。
    1015 注册表损坏。包含注册表数据的某一文件结构损坏,或系统的文件内存映像损坏,或因为替代副本、日志缺少或损坏而无法恢复文件。
    1016 由注册表启动的 I/O 操作恢复失败。注册表无法读入、写出或清除任意一个包含注册表系统映像的文件。
    1017 系统试图加载或还原文件到注册表,但指定的文件并非注册表文件格式。
    1018 试图在标记为删除的注册表项上运行不合法的操作。
    1019 系统无法配置注册表日志中所请求的空间。
    1020 无法在已有子项或值的注册表项中创建符号链接。
    1021 无法在易变父项下创建稳定子项。
    1022 通知更改请求正在完成中,且信息并未返回到呼叫方的缓冲区中。当前呼叫方必须枚举文件来查找更改。
    1051 已发送停止控制到服务,该服务被其它正在运行的服务所依赖。
    1052 请求的控件对此服务无效
    1053 服务并未及时响应启动或控制请求。
    1054 无法创建此服务的线程。
    1055 锁定服务数据库。
    1056 服务的实例已在运行中。
    1057 帐户名无效或不存在,或者密码对于指定的帐户名无效。
    1058 无法启动服务,原因可能是它被禁用或与它相关联的设备没有启动。
    1059 指定了循环服务依存。
    1060 指定的服务并未以已安装的服务存在。
    1061 服务无法在此时接受控制信息。
    1062 服务未启动。
    1063 服务进程无法连接到服务控制器上。
    1064 当处理控制请求时,在服务中发生异常。
    1065 指定的数据库不存在。
    1066 服务已返回特定的服务错误码。
    1067 进程意外终止。
    1068 依存服务或组无法启动。
    1069 由于登录失败而无法启动服务。
    1070 启动后,服务停留在启动暂停状态。
    1071 指定的服务数据库锁定无效。
    1072 指定的服务已标记为删除。
    1073 指定的服务已存在。
    1074 系统当前以最新的有效配置运行。
    1075 依存服务不存在,或已被标记为删除。
    1076 已接受使用当前引导作为最后的有效控制设置。
    1077 上次启动之后,仍未尝试引导服务。
    1078 名称已用作服务名或服务显示名。
    1079 此服务的帐户不同于运行于同一进程上的其它服务的帐户。
    1080 只能为 Win32 服务设置失败操作,不能为驱动程序设置。
    1081 这个服务所运行的处理和服务控制管理器相同。 所以,如果服务处理程序意外中止的话,服务控制管理器无法进行任何操作。
    1082 这个服务尚未设置恢复程序。
    1083 配置成在该可执行程序中运行的这个服务不能执行该服务。
    1100 已达磁带的实际结尾。
    1101 磁带访问已达文件标记。
    1102 已达磁带或磁盘分区的开头。
    1103 磁带访问已达一组文件的结尾。
    1104 磁带上不再有任何数据。
    1105 磁带无法分区。
    1106 在访问多卷分区的新磁带时,当前的块大小不正确。
    1107 当加载磁带时,找不到分区信息。
    1108 无法锁定媒体弹出功能。
    1109 无法卸载介质。
    1110 驱动器中的介质可能已更改。
    1111 复位 I/O 总线。
    1112 驱动器中没有媒体。
    1113 在多字节的目标代码页中,没有此 Unicode 字符可以映射到的字符。
    1114 动态链接库 (DLL) 初始化例程失败。
    1115 系统关机正在进行。
    1116 因为没有任何进行中的关机过程,所以无法中断系统关机。
    1117 因为 I/O 设备错误,所以无法运行此项请求。
    1118 没有串行设备被初始化成功。串行驱动程序将卸载。
    1119 无法打开正在与其他设备共享中断请求(IRQ)的设备。至少有一个使用该 IRQ 的其他设备已打开。
    1120 序列 I/O 操作已由另一个串行口的写入完成。 (IOCTL_SERIAL_XOFF_COUNTER 已达零。)
    1121 因为已过超时时间,所以串行 I/O 操作完成。 (IOCTL_SERIAL_XOFF_COUNTER 未达零。)
    1122 在软盘上找不到 ID 地址标记。
    1123 软盘扇区 ID 字符域与软盘控制器磁道地址不相符。
    1124 软盘控制器报告软盘驱动程序不能识别的错误。
    1125 软盘控制器返回与其寄存器中不一致的结果。
    1126 当访问硬盘时,重新校准操作失败,重试仍然失败。
    1127 当访问硬盘时,磁盘操作失败,重试仍然失败。
    1128 当访问硬盘时,即使失败,仍须复位磁盘控制器。
    1129 已达磁带结尾。
    1130 服务器存储空间不足,无法处理此命令。
    1131 检测出潜在的死锁状态。
    1132 指定的基址或文件偏移量没有适当对齐。
    1140 改变系统供电状态的尝试被另一应用程序或驱动程序否决。
    1141 系统 BIOS 改变系统供电状态的尝试失败。
    1142 试图在一文件上创建超过系统允许数额的链接。
    1150 指定程序要求更新的 Windows 版本。
    1151 指定程序不是 Windows 或 MS-DOS 程序。
    1152 只能启动该指定程序的一个实例。
    1153 该指定程序适用于旧的 Windows 版本。
    1154 执行该应用程序所需的库文件之一被损坏。
    1155 没有应用程序与此操作的指定文件有关联。
    1156 在输送指令到应用程序的过程中出现错误。 
    1157 执行该应用程序所需的库文件之一无法找到。
    1158 当前程序已使用了 Window 管理器对象的系统允许的所有句柄。
    1159 消息只能与同步操作一起使用。
    1160 指出的源元素没有媒体。
    1161 指出的目标元素已包含媒体。
    1162 指出的元素不存在。
    1163 指出的元素是未显示的存储资源的一部分。
    1164 显示设备需要重新初始化,因为硬件有错误。
    1165 设备显示在尝试进一步操作之前需要清除。
    1166 设备显示它的门仍是打开状态。
    1167 设备没有连接。
    1168 找不到元素。
    1169 索引中没有同指定项相匹配的项。
    1170 在对象上不存在指定的属性集。
    1171 传递到 GetMouseMovePoints 的点不在缓冲区中。
    1172 跟踪(工作站)服务没运行。
    1173 找不到卷 ID。
    1175 无法删除要被替换的文件。
    1176 无法将替换文件移到要被替换的文件。要被替换的文件保持原来的名称。
    1177 无法将替换文件移到要被替换的文件。要被替换的文件已被重新命名为备份名称。
    1178 卷更改记录被删除。
    1179 卷更改记录服务不处于活动中。
    1180 找到一份文件,但是可能不是正确的文件。
    1181 日志项从日志中被删除。
    1200 指定的设备名无效。
    1201 设备当前未连接上,但其为一个记录连接。
    1202 企图记录先前已被记录的设备。
    1203 无任何网络提供程序接受指定的网络路径。
    1204 指定的网络提供程序名称无效。
    1205 无法打开网络连接配置文件。
    1206 网络连接配置文件损坏。
    1207 无法枚举空载体。
    1208 发生扩展错误。
    1209 指定的组名格式无效。
    1210 指定的计算机名格式无效。
    1211 指定的事件名格式无效。
    1212 指定的域名格式无效。
    1213 指定的服务名格式无效。
    1214 指定的网络名格式无效。
    1215 指定的共享名格式无效。
    1216 指定的密码格式无效。
    1217 指定的消息名格式无效。
    1218 指定的消息目标格式无效。
    1219 提供的凭据与已存在的凭据集冲突。
    1220 企图创建网络服务器的会话,但已对该服务器创建过多的会话。
    1221 工作组或域名已由网络上的另一部计算机使用。
    1222 网络未连接或启动。
    1223 操作已被用户取消。
    1224 请求的操作无法在使用用户映射区域打开的文件上执行。
    1225 远程系统拒绝网络连接。
    1226 网络连接已被适当地关闭了。
    1227 网络传输终结点已有与其关联的地址。
    1228 地址仍未与网络终结点关联。
    1229 企图在不存在的网络连接上进行操作。
    1230 企图在使用中的网络连接上进行无效的操作。
    1231 不能访问网络位置。有关网络排除故障的信息,请参阅 Windows 帮助。
    1232 不能访问网络位置。有关网络排除故障的信息,请参阅 Windows 帮助。
    1233 不能访问网络位置。有关网络排除故障的信息,请参阅 Windows 帮助。
    1234 没有任何服务正在远程系统上的目标网络终结点上操作。
    1235 请求被终止。
    1236 由本地系统终止网络连接。
    1237 操作无法完成。应该重试。
    1238 因为已达到此帐户的最大同时连接数限制,所以无法连接服务器。
    1239 试图在这个帐户未被授权的时间内登录。
    1240 此帐户并未得到从这个工作站登录的授权。
    1241 请求的操作不能使用这个网络地址。
    1242 服务器已经注册。
    1243 指定的服务不存在。
    1244 因为用户还未被验证,不能执行所要求的操作。
    1245 因为用户还未登录网络,不能执行所要求的操作。 指定的服务不存在。
    1246 正在继续工作。
    1247 试图进行初始操作,但是初始化已完成。
    1248 没有更多的本地设备。 
    1249 指定的站点不存在。
    1250 具有指定名称的域控制器已经存在。
    1251 只有连接到服务器上时,该操作才受支持。
    1252 即使没有改动,组策略框架也应该调用扩展。
    1253 指定的用户没有一个有效的配置文件。
    1254 Microsoft Small Business Server 不支持此操作。
    1300 并非所有被引用的特权都指派给呼叫方。
    1301 帐户名和安全标识间的某些映射未完成。
    1302 没有为该帐户特别设置系统配额限制。
    1303 没有可用的加密密钥。返回了一个已知加密密钥。
    1304 密码太复杂,无法转换成 LAN Manager 密码。返回的 LAN Manager 密码为空字符串。
    1305 修订级别未知。
    1306 表明两个修订级别是不兼容的。
    1307 这个安全标识不能指派为此对象的所有者。
    1308 这个安全标识不能指派为对象的主要组。
    1309 当前并未模拟客户的线程试图操作模拟令牌。
    1310 组可能未被禁用。
    1311 当前没有可用的登录服务器来服务登录请求。
    1312 指定的登录会话不存在。可能已被终止。
    1313 指定的特权不存在。
    1314 客户没有所需的特权。
    1315 提供的名称并非正确的帐户名形式。
    1316 指定的用户已存在。
    1317 指定的用户不存在。
    1318 指定的组已存在。
    1319 指定的组不存在。
    1320 指定的用户帐户已是指定组的成员,或是因为组包含成员所以无法删除指定的组。
    1321 指定的用户帐户不是指定组帐户的成员。
    1322 无法禁用或删除最后剩余的系统管理帐户。
    1323 无法更新密码。提供作为当前密码的值不正确。
    1324 无法更新密码。提供给新密码的值包含密码中不允许的值。
    1325 无法更新密码。为新密码提供的值不符合字符域的长度、复杂性或历史要求。
    1326 登录失败: 未知的用户名或错误密码。
    1327 登录失败: 用户帐户限制。
    1328 登录失败: 违反帐户登录时间限制。
    1329 登录失败: 不允许用户登录到此计算机。
    1330 登录失败: 指定的帐户密码已过期。
    1331 登录失败: 禁用当前的帐户。
    1332 帐户名与安全标识间无任何映射完成。
    1333 一次请求过多的本地用户标识符(LUIDs)。
    1334 无更多可用的本地用户标识符(LUIDs)。
    1335 对于该特别用法,安全 ID 的次级授权部分无效。
    1336 访问控制列表(ACL)结构无效。
    1337 安全 ID 结构无效。
    1338 安全描述符结构无效。
    1340 无法创建固有的访问控制列表(ACL)或访问控制项目(ACE)。
    1341 服务器当前已禁用。
    1342 服务器当前已启用。
    1343 提供给识别代号颁发机构的值为无效值。
    1344 无更多可用的内存以更新安全信息。
    1345 指定属性无效,或与整个群体的属性不兼容。
    1346 指定的模拟级别无效, 或所提供的模拟级别无效。
    1347 无法打开匿名级安全令牌。
    1348 请求的验证信息类别无效。
    1349 令牌的类型对其尝试使用的方法不适当。
    1350 无法在与安全性无关联的对象上运行安全性操作。
    1351 未能从域控制器读取配置信息,或者是因为机器不可使用,或者是访问被拒绝。
    1352 安全帐户管理器(SAM)或本地安全颁发机构(LSA)服务器处于运行安全操作的错误状态。
    1353 域处于运行安全操作的错误状态。
    1354 此操作只对域的主要域控制器可行。
    1355 指定的域不存在,或无法联系。
    1356 指定的域已存在。
    1357 试图超出每服务器域个数的限制。
    1358 无法完成请求操作,因为磁盘上的严重介质失败或数据结构损坏。
    1359 出现了内部错误。
    1360 通用访问类型包含于已映射到非通用类型的访问掩码中。
    1361 安全描述符格式不正确 (绝对或自相关的)。
    1362 请求操作只限制在登录进程中使用。调用进程未注册为一个登录进程。
    1363 无法使用已在使用中的标识启动新的会话。
    1364 未知的指定验证数据包。
    1365 登录会话并非处于与请求操作一致的状态中。
    1366 登录会话标识已在使用中。
    1367 登录请求包含无效的登录类型值。
    1368 在使用命名管道读取数据之前,无法经由该管道模拟。
    1369 注册表子树的事务处理状态与请求状态不一致。
    1370 安全性数据库内部出现损坏。
    1371 无法在内置帐户上运行此操作。
    1372 无法在内置特殊组上运行此操作。
    1373 无法在内置特殊用户上运行此操作。
    1374 无法从组中删除用户,因为当前组为用户的主要组。
    1375 令牌已作为主要令牌使用。
    1376 指定的本地组不存在。
    1377 指定的帐户名不是本地组的成员。
    1378 指定的帐户名已是本地组的成员。
    1379 指定的本地组已存在。
    1380 登录失败: 未授予用户在此计算机上的请求登录类型。
    1381 已超过在单一系统中可保存机密的最大个数。
    1382 机密的长度超过允许的最大长度。
    1383 本地安全颁发机构数据库内部包含不一致性。
    1384 在尝试登录的过程中,用户的安全上下文积累了过多的安全标识。
    1385 登录失败: 未授予用户在此计算机上的请求登录类型。
    1386 更改用户密码时需要交叉加密密码。
    1387 由于成员不存在,无法将成员添加到本地组中,也无法从本地组将其删除。
    1388 无法将新成员加入到本地组中,因为成员的帐户类型错误。
    1389 已指定过多的安全标识。
    1390 更改此用户密码时需要交叉加密密码。
    1391 表明 ACL 未包含任何可承继的组件。
    1392 文件或目录损坏且无法读取。
    1393 磁盘结构损坏且无法读取。
    1394 无任何指定登录会话的用户会话项。
    1395 正在访问的服务有连接数目标授权限制。 这时候已经无法再连接,原因是已经到达可接受的连接数目上限。
    1396 登录失败: 该目标帐户名称不正确。
    1397 相互身份验证失败。该服务器在域控制器的密码过期。
    1398 在客户机和服务器之间有一个时间差。
    1400 无效的窗口句柄。
    1401 无效的菜单句柄。
    1402 无效的光标句柄。
    1403 无效的加速器表句柄。
    1404 无效的挂钩句柄。
    1405 无效的多重窗口位置结构句柄。
    1406 无法创建最上层子窗口。
    1407 找不到窗口类别。
    1408 无效窗口;它属于另一线程。
    1409 热键已注册。
    1410 类别已存在。
    1411 类别不存在。
    1412 类别仍有打开的窗口。
    1413 无效索引。
    1414 无效的图标句柄。
    1415 使用专用 DIALOG 窗口字。
    1416 找不到列表框标识。
    1417 找不到通配字符。
    1418 线程没有打开的剪贴板。
    1419 没有注册热键。
    1420 窗口不是合法的对话窗口。
    1421 找不到控件 ID。
    1422 因为没有编辑控制,所以组合框的消息无效。
    1423 窗口不是组合框。
    1424 高度必须小于 256。
    1425 无效的设备上下文(DC)句柄。
    1426 无效的挂接程序类型。
    1427 无效的挂接程序。
    1428 没有模块句柄无法设置非本机的挂接。
    1429 此挂接程序只可整体设置。
    1430 Journal Hook 程序已安装。
    1431 挂接程序尚未安装。
    1432 单一选择列表框的无效消息。
    1433 LB_SETCOUNT 发送到非被动的列表框。
    1434 此列表框不支持 Tab 键宽度。
    1435 无法毁坏由另一个线程创建的对象。
    1436 子窗口没有菜单。
    1437 窗口没有系统菜单。
    1438 无效的消息对话框样式。
    1439 无效的系统范围内的 (SPI_) 参数。
    1440 已锁定屏幕。
    1441 多重窗口位置结构中窗口的所有句柄必须具有相同的上层。
    1442 窗口不是子窗口。
    1443 无效的 GW_
    命令。
    1444 无效的线程标识。
    1445 无法处理非多重文档界面 (MDI) 窗口中的消息。
    1446 弹出式菜单已经激活。
    1447 窗口没有滚动条。
    1448 滚动条范围不可大于 MAXLONG。
    1449 无法以指定的方式显示或删除窗口。
    1450 系统资源不足,无法完成请求的服务。
    1451 系统资源不足,无法完成请求的服务。
    1452 系统资源不足,无法完成请求的服务。
    1453 配额不足,无法完成请求的服务。
    1454 配额不足,无法完成请求的服务。
    1455 页面文件太小,无法完成操作。
    1456 找不到菜单项。
    1457 键盘布局句柄无效。
    1458 不允许使用挂钩类型。
    1459 该操作需要交互式窗口工作站。
    1460 由于超时时间已过,该操作返回。
    1461 无效监视器句柄。
    1500 事件日志文件损坏。
    1501 无法打开事件日志文件,事件日志服务没有启动。
    1502 事件日志文件已满。
    1503 事件日志文件已在读取间更改。
    1601 无法访问 Windows 安装服务。请与技术支持人员联系,确认 Windows 安装服务是否注册正确。
    1602 用户取消了安装。
    1603 安装时发生严重错误
    1604 安装已挂起,未完成。
    1605 这个操作只对当前安装的产品有效。
    1606 功能 ID 未注册。
    1607 组件 ID 并未注册。
    1608 未知属性。
    1609 句柄处于不正确的状态。
    1610 这个产品的配置数据已损坏。请与技术支持人员联系。
    1611 组件限制语不存在。
    1612 这个产品的安装来源无法使用。请验证来源是否存在,是否可以访问。
    1613 Windows 安装服务无法安装这个安装程序包。您必须安装含有 Windows 安装服务新版本的 Windows Service Park。
    1614 没有卸载产品。
    1615 SQL 查询语法不正确或不被支持。
    1616 记录字符域不存在。
    1617 设备已被删除.
    1618 正在进行另一个安装操作。请在继续这个安装操作之前完成那个操作。
    1619 未能打开这个安装程序包。请验证程序包是否存在,是否可以访问;或者与应用程序供应商联系,验证这是否是有效的 Windows 安装服务程序包。
    1620 未能打开这个安装程序包。请与应用程序供应商联系,验证这是否是有效的 Windows 安装服务程序包。
    1621 启动 Windows 安装服务用户界面时有错误。请与技术支持人员联系。
    1622 打开安装日志文件的错误。请验证指定的日志文件位置是否存在,是否可以写入。
    1623 安装程序包的语言不受系统支持。
    1624 应用变换时的错误。请验证指定的变换路径是否有效。
    1625 系统策略禁止这个安装。请与系统管理员联系。
    1626 无法执行函数。
    1627 执行期间,函数出了问题。
    1628 指定了无效的或未知的表格。
    1629 提供的数据类型不对。
    1630 这个类型的数据不受支持。
    1631 Windows 安装服务未能启动。请与技术支持人员联系。
    1632 临时文件夹已满或无法使用。请验证临时文件夹是否存在,是否可以写入。
    1633 这个处理器类型不支持该安装程序包。请与产品供应商联系。
    1634 组件没有在这台计算机上使用。
    1635 无法打开修补程序包。请验证修补程序包是否存在,是否可以访问;或者与应用程序供应商联系,验证这是否是 Windows 安装服务的修补程序包。
    1636 无法打开修补程序包。请与应用程序供应商联系,验证这是否是 Windows 安装服务的修补程序包。
    1637 Windows 安装服务无法处理这个插入程序包。您必须安装含有 Windows 安装服务新版本的 Windows Service Pack。
    1638 已安装这个产品的另一个版本。这个版本的安装无法继续。要配置或删除这个产品的现有版本,请用“控制面板”上的“添加/删除程序”。
    1639 无效的命令行参数。有关详细的命令行帮助,请查阅 Windows 安装服务的 SDK。
    1640 在终端服务远程会话期间,只有管理员有添加、删除或配置服务器软件的权限。如果您要在服务器上安装或配置软件,请与网络管理员联系。
    1641 要求的操作已成功结束。要使改动生效,必须重新启动系统。
    1642 Windows 安装服务无法安装升级修补程序,因为被升级的程序可能会丢失或是升级修补程序可能更新此程序的一个不同版本。请确认要被升级的程序在您的计算机上且您的升级修补程序是正确的。
    1700 串绑定无效。
    1701 绑定句柄类型不正确。
    1702 绑定句柄无效。
    1703 不支持 RPC 协议序列。
    1704 RPC 协议序列无效。
    1705 字符串通用唯一标识 (UUID) 无效。
    1706 终结点格式无效。
    1707 网络地址无效。
    1708 找不到终结点。
    1709 超时值无效。
    1710 找不到对象通用唯一标识(UUID)。
    1711 对象通用唯一标识 (UUID)已注册。
    1712 类型通用唯一标识(UUID)已注册。
    1713 RPC 服务器已在侦听。
    1714 未登记任何协议序列。
    1715 RPC 服务器未在侦听。
    1716 未知的管理器类型。
    1717 未知的界面。
    1718 没有任何链接。
    1719 无任何协议顺序。
    1720 无法创建终结点。
    1721 资源不足,无法完成此操作。
    1722 RPC 服务器不可用。
    1723 RPC 服务器过忙以致无法完成此操作。
    1724 网络选项无效。
    1725 在此线程中,没有使用中的远程过程调用。
    1726 远程过程调用失败。
    1727 远程过程调用失败且未运行。
    1728 远程过程调用(RPC)协议出错。
    1730 RPC 服务器不支持传送语法。
    1732 不支持通用唯一标识(UUID)类型。
    1733 标记无效。
    1734 数组边界无效。
    1735 链接不包含项目名称。
    1736 名称语法无效。
    1737 不支持名称语法。
    1739 没有可用来创建通用唯一标识 (UUID)的网络地址。
    1740 终结点是一份备份。
    1741 未知的验证类型。
    1742 调用的最大个数太小。
    1743 字符串太长。
    1744 找不到 RPC 协议顺序。
    1745 过程号超出范围。
    1746 绑定不包含任何验证信息。
    1747 未知的验证服务。
    1748 未知的验证级别。
    1749 安全上下文无效。
    1750 未知的授权服务。
    1751 项目无效。
    1752 服务器终结点无法运行操作。
    1753 终结点映射表中无更多的可用终结点。
    1754 未导出任何界面。
    1755 项目名称不完整。
    1756 版本选项无效。
    1757 没有其他成员。
    1758 没有内容未导出。
    1759 接口没有找到。
    1760 项目已存在。
    1761 找不到项目。
    1762 无可用的名称服务。
    1763 网络地址族无效。
    1764 不支持请求的操作。
    1765 无可用的安全上下文以允许模拟。
    1766 远程过程调用(RPC)中发生内部错误。
    1767 RPC 服务器试图以零除整数。
    1768 RPC 服务器中发生地址错误。
    1769 RPC 服务器上的浮点操作导至以零做除数。
    1770 RPC 服务器上发生浮点下溢。
    1771 RPC 服务器上发生浮点上溢。
    1772 自动句柄绑定的可用 RPC 服务器列表已用完。
    1773 无法打开字符翻译表文件。
    1774 包含字符翻译表的文件少于512 字节。
    1775 在远程过程调用时,将空的上下文句柄从客户传递到主机。
    1777 在远程过程调用时,上下文句柄已更改。
    1778 传递到远程过程调用的绑定句柄不相符。
    1779 承接体无法获得远程过程调用句柄。
    1780 传递空引用指针到承接体。
    1781 列举值超出范围。
    1782 字节计数太小。
    1783 承接体接收到坏数据。
    1784 提供给请求操作的用户缓冲区无效。
    1785 磁盘媒体无法识别。可能未被格式化。
    1786 工作站没有信任机密。
    1787 服务器上的安全数据库没有此工作站信任关系的计算机帐户。
    1788 主域和受信域间的信任关系失败。
    1789 此工作站和主域间的信任关系失败。
    1790 网络登录失败。
    1791 此线程的远程过程调用已在进行中。
    1792 试图登录,但是网络登录服务没有启动。
    1793 用户帐户到期。
    1794 转发程序已被占用且无法卸载。
    1795 指定的打印机驱动程序已安装。
    1796 指定的端口未知。
    1797 未知的打印机驱动程序。
    1798 未知的打印机处理器。
    1799 指定的分隔页文件无效。
    1800 指定的优先级无效。
    1801 打印机名无效。
    1802 打印机已存在。
    1803 打印机命令无效。
    1804 指定的数据类型无效。
    1805 指定的环境无效。
    1806 没有更多的绑定。
    1807 所用帐户为域间信任帐户。请使用您的全局用户帐户或本地用户帐户来访问这台服务器。
    1808 所用帐户是一个计算机帐户。使用您的全局用户帐户或本地用户帐户来访问此服务器。
    1809 已使用的帐户为服务器信任帐户。使用您的全局用户帐户或本地用户帐户来访问此服务器。
    1810 指定域的名称或安全标识(SID)与该域的信任信息不一致。
    1811 服务器在使用中且无法卸载。
    1812 指定的映像文件不包含资源区域。
    1813 找不到映像文件中指定的资源类型。
    1814 找不到映像文件中指定的资源名。
    1815 找不到映像文件中指定的资源语言标识。
    1816 配额不足,无法处理此命令。
    1817 未登记任何界面。
    1818 远程过程调用被取消。
    1819 绑定句柄不包含所有需要的信息。
    1820 在远程过程调用过程中通讯失败。
    1821 不支持请求的验证级别。
    1822 未登记任何主名称。
    1823 指定的错误不是有效的 Windows RPC 错误码。
    1824 已配置一个只在这部计算机上有效的 UUID。
    1825 发生一个安全包特有的错误。
    1826 线程未取消。
    1827 无效的编码/解码句柄操作。
    1828 序列化包装的版本不兼容。
    1829 RPC 承接体的版本不兼容。
    1830 RPC 管道对象无效或已损坏。
    1831 试图在 RPC 管道物件上进行无效操作。
    1832 不被支持的 RPC 管道版本。
    1898 找不到该组成员。
    1899 无法创建终结点映射表数据库项。
    1900 对象通用唯一标识 (UUID) 为 nil UUID。
    1901 指定的时间无效。
    1902 指定的格式名称无效。
    1903 指定的格式大小无效。
    1904 指定的打印机句柄正等候在
    1905 已删除指定的打印机。
    1906 打印机的状态无效。
    1907 在第一次登录之前,必须更改用户密码。
    1908 找不到此域的域控制器。
    1909 引用的帐户当前已锁定,且可能无法登录。
    1910 没有发现指定的此对象导出者
    1911 没有发现指定的对象。
    1912 没有发现指定的对象解析器。
    1913 一些待发数据仍停留在请求缓冲区内。
    1914 无效的异步远程过程调用句柄。
    1915 这个操作的异步 RPC 调用句柄不正确。
    1916 RPC 管道对象已经关闭。
    1917 在 RPC 调用完成之前全部的管道都已处理完成。
    1918 没有其他可用的数据来自 RPC 管道。
    1919 这个机器没有可用的站点名。
    1920 系统无法访问此文件。
    1921 系统无法辨识文件名。
    1922 项目不是所要的类型。
    1923 无法将所有对象的 UUID 导出到指定的项。
    1924 无法将界面导出到指定的项。
    1925 无法添加指定的配置文件项。
    1926 无法添加指定的配置文件元素。
    1927 无法删除指定的配置文件元素。
    1928 无法添加组元素。
    1929 无法删除组元素。
    2000 无效的像素格式。
    2001 指定的驱动程序无效。
    2002 窗口样式或类别属性对此操作无效。
    2003 不支持请求的图元操作。
    2004 不支持请求的变换操作。
    2005 不支持请求的剪切操作。
    2010 指定的颜色管理模块无效。
    2011 制定的颜色文件配置无效。
    2012 找不到指定的标识。
    2013 找不到所需的标识。
    2014 指定的标识已经存在。
    2015 指定的颜色文件配置与任何设备都不相关。
    2016 找不到该指定的颜色文件配置
    2017 指定的颜色空间无效。
    2018 图像颜色管理没有启动。
    2019 在删除该颜色传输时有一个错误。
    2020 该指定的颜色传输无效。
    2021 该指定的变换与位图的颜色空间不匹配。
    2022 该指定的命名颜色索引在配置文件中不存在。
    2102 没有安装工作站驱动程序。
    2103 无法定位服务器。
    2104 发生内部错误,网络无法访问共享内存段。
    2105 网络资源不足。
    2106 工作站不支持这项操作。
    2107 设备没有连接。
    2108 网络连接已成功,但需要提示用户输入一个不同于原始指定的密码。
    2114 没有启动服务器服务。
    2115 队列空。
    2116 设备或目录不存在。
    2117 无法在重定向的资源上执行这项操作。
    2118 名称已经共享。
    2119 服务器当前无法提供所需的资源。
    2121 额外要求的项目超过允许的上限。
    2122 对等服务只支持两个同时操作的用户 。
    2123 API 返回缓冲区太小。
    2127 远程 API 错误。
    2131 打开或读取配置文件时出错。
    2136 发生一般网络错误。
    2137 工作站服务的状态不一致。重新启动工作站服务之前,请先重新启动计算机。
    2138 工作站服务没有启动。
    2139 所需信息不可用。
    2140 发生 Windows 2000 内部错误。
    2141 服务器没有设置事务处理。
    2142 远程服务器不支持请求的 API。
    2143 事件名无效。
    2144 网络上已经有此计算机名。请更名后重新启动。
    2146 配置信息中找不到指定的组件。
    2147 配置信息中找不到指定的参数。
    2149 配置文件中有一个命令行太长。
    2150 打印机不存在。
    2151 打印作业不存在。
    2152 打印机目标找不到。
    2153 打印机目标已经存在。
    2154 打印机队列已经存在。
    2155 无法添加其它的打印机。
    2156 无法添加其它的打印作业。
    2157 无法添加其它的打印机目标。
    2158 此打印机目标处于空闲中,不接受控制操作。
    2159 此“打印机目标请求”包含无效的控制函数。
    2160 打印处理程序没有响应。
    2161 后台处理程序没有运行。
    2162 打印目标当前的状况,无法执行这项操作。
    2163 打印机队列当前的状况,无法执行这项操作。
    2164 打印作业当前的状况,无法执行这项操作。
    2165 无法为后台处理程序分配内存。
    2166 设备驱动程序不存在。
    2167 打印处理程序不支持这种数据类型。
    2168 没有安装打印处理程序。
    2180 锁定服务数据库。
    2181 服务表已满。
    2182 请求的服务已经启动。
    2183 这项服务没有响应控制操作。
    2184 服务仍未启动。
    2185 服务名无效。
    2186 服务没有响应控制功能。
    2187 服务控制处于忙碌状态。
    2188 配置文件包含无效的服务程序名。
    2189 在当前的状况下无法控制服务。
    2190 服务异常终止。
    2191 这项服务无法接受请求的 “暂停” 或 “停止” 操作。
    2192 服务控制“计划程序”在“计划表”中找不到服务名。
    2193 无法读取服务控制计划程序管道。
    2194 无法创建新服务的线程。
    2200 此工作站已经登录到局域网。
    2201 工作站没有登录到局域网。
    2202 指定的用户名无效。
    2203 密码参数无效。
    2204 登录处理器没有添加消息别名。
    2205 登录处理器没有添加消息别名。
    2206 注销处理器没有删除消息别名。
    2207 注销处理器没有删除消息别名。
    2209 暂停网络登录。
    2210 中心登录服务器发生冲突。
    2211 服务器没有设置正确的用户路径。
    2212 加载或运行登录脚本时出错。
    2214 没有指定登录服务器,计算机的登录状态是单机操作。
    2215 登录服务器找不到。
    2216 此计算机已经有一个登录域。
    2217 登录服务器无法验证登录。
    2219 安全数据库找不到。
    2220 组名找不到。
    2221 用户名找不到。
    2222 资源名找不到。
    2223 组已经存在。
    2224 帐户已经存在。
    2225 资源使用权限清单已经存在。
    2226 此操作只能在该域的主域控制器上执行。
    2227 安全数据库没有启动。
    2228 用户帐户数据库中的名称太多。
    2229 磁盘 I/O 失败。
    2230 已经超过每个资源 64 个项目的限制。
    2231 不得删除带会话的用户。
    2232 上层目录找不到。
    2233 无法添加到安全数据库会话高速缓存段。
    2234 这项操作不能在此特殊的组上执行。
    2235 用户帐户数据库会话高速缓存没有记录此用户。
    2236 用户已经属于此组。
    2237 用户不属于此组。
    2238 此用户帐户尚未定义。
    2239 此用户帐户已过期。
    2240 此用户不得从此工作站登录网络。
    2241 这时候不允许用户登录网络。
    2242 此用户的密码已经过期。
    2243 此用户的密码无法更改。
    2244 现在无法使用此密码。
    2245 密码不满足密码策略的需要。检查最小密码长度、密码复杂性和密码历史的需求。
    2246 此用户的密码最近才启用,现在不能更改。
    2247 安全数据库已损坏。
    2248 不需要更新此副本复制的网络/本地安全数据库。
    2249 此副本复制的数据库已过时;请同步处理其中的数据。
    2250 此网络连接不存在。
    2251 此 asg_type 无效。
    2252 此设备当前正在共享中。
    2270 计算机名无法作为消息别名添加。网络上可能已经有此名称。
    2271 信使服务已经启动。
    2272 信使服务启动失败。
    2273 网络上找不到此消息别名。
    2274 此消息别名已经转发出去。
    2275 已经添加了此消息别名,但是仍被转发。
    2276 此消息别名已在本地存在。
    2277 添加的消息别名已经超过数目上限。
    2278 无法删除计算机名。
    2279 消息无法转发回到同一个工作站。
    2280 域消息处理器出错。
    2281 消息已经发送出去,但是收件者已经暂停信使服务。
    2282 消息已经发送出去,但尚未收到。
    2283 消息别名当前正在使用中。请稍候片刻再试。
    2284 信使服务尚未启动。
    2285 该名称不在本地计算机上。
    2286 网络上找不到转发的消息别名。
    2287 远程通讯站的消息别名表已经满了。
    2288 此别名的消息当前没有在转发中。
    2289 广播的消息被截断。
    2294 设备名无效。
    2295 写入出错。
    2297 网络上的消息别名重复。
    2298 此消息别名会在稍后删除。
    2299 没有从所有的网络删除消息别名。
    2300 这项操作无法在使用多种网络的计算机上执行。
    2310 此共享的资源不存在。
    2311 设备没有共享。
    2312 带此计算机名的会话不存在。
    2314 没有用此识别号打开的文件。
    2315 执行远程管理命令失败。
    2316 打开远程临时文件失败。
    2317 从远程管理命令返回的数据已经被截断成 64K。
    2318 此设备无法同时共享为后台处理资源和非后台处理资源。
    2319 服务器清单中的信息可能不正确
    2320 计算机在此域未处于活动状态
    2321 在删除共享之前,需要将该共享从分布式文件系统中删除。
    2331 无法在此设备执行这项操作
    2332 此设备无法共享。
    2333 此设备未打开。
    2334 此设备名清单无效。
    2335 队列优先级无效。
    2337 没有任何共享的通讯设备。
    2338 指定的队列不存在。
    2340 此设备清单无效。
    2341 请求的设备无效。
    2342 后台处理程序正在使用此设备。
    2343 此设备已经被当成通讯设备来使用。
    2351 此计算机名无效。
    2354 指定的字符串及前缀太长。
    2356 此路径组成部分无效。
    2357 无法判断输入类型。
    2362 类型缓冲区不够大。
    2370 配置文件不得超过 64K。
    2371 初始偏移量越界。
    2372 系统无法删除当前到网络资源的连接。
    2373 系统无法分析此文件中的命令行。
    2374 加载配置文件时出错。
    2375 保存配置文件时出错,只部份地保存了配置文件。
    2378 此日志文件在前后两次读取之间已经发生变化。
    2380 资源路径不可以是目录。
    2381 资源路径无效。
    2382 目标路径无效。
    2383 源路径及目标路径分属不同的服务器。
    2385 请求的 Run 服务器现在暂停。
    2389 与 Run 服务器通讯时出错。
    2391 启动后台处理时出错。
    2392 找不到您连接的共享资源。
    2400 LAN 适配器号码无效。
    2401 此网络连接有文件打开或请求挂起。
    2402 使用中的连接仍存在。
    2403 此共享名或密码无效。
    2404 设备正由活动进程使用,无法断开。
    2405 此驱动器号已在本地使用。
    2430 指定的客户已经在指定的事件注册。
    2431 警报表已满。
    2432 发出的警报名称无效或不存在。
    2433 警报接收者无效。
    2434 用户的登录时间长短不再合法。 所以已经删除用户与该服务器的会话。
    2440 日志文件中没有请求的记录号。
    2450 用户帐户数据库没有正确配置。
    2451 当 Netlogon 服务正在运行时,不允许执行这项操作。
    2452 这项操作无法在最后的管理帐户上执行。
    2453 找不到此域的域控制器。
    2454 无法设置此用户的登录信息。
    2455 Netlogon 服务尚未启动。
    2456 无法添加到用户帐户数据库。
    2457 此服务器的时钟与主域控制器的时钟不一致。
    2458 检测到密码不匹配。
    2460 服务器识别码没有指定有效的服务器。
    2461 会话标识没有指定有效的会话。
    2462 连接识别码没有指定有效的连接。
    2463 可用服务器表中无法再加上其它项。
    2464 服务器已经到了支持的会话数目上限。
    2465 服务器已经到了支持的连接数目上限。
    2466 服务器打开的文件到了上限,无法打开更多文件。
    2467 这台服务器没有登记替换的服务器。
    2470 请用低级的 API (远程管理协议)。
    2480 UPS 服务无法访问 UPS 驱动程序。
    2481 UPS 服务设置错误。
    2482 UPS 服务无法访问指定通讯端口 (Comm Port)。
    2483 UPS 显示线路中断或电池不足,服务没有启动。
    2484 UPS 服务无法执行系统关机的操作。
    2500 下面的程序返回一个 MS-DOS 错误码:
    2501 下面的程序需要更多的内存:
    2502 下面程序调用了不支持的 MS-DOS 函数:
    2503 工作站无法启动。
    2504 下面的文件已损坏。
    2505 启动块定义文件中没有指定引导程序。
    2506 NetBIOS 返回错误: NCB 及 SMB 数据转储。
    2507 磁盘 I/O 错误。
    2508 无法替换映像参数。
    2509 跨越磁盘扇区范围的映像参数太多。
    2510 不是从用 /S 格式化的 MS-DOS软盘产生的映像。
    2511 稍后会从远程重新启动。
    2512 无法调用远程启动服务器。
    2513 无法连接到远程启动服务器。
    2514 无法打开远程启动服务器上的映像文件。
    2515 正在连接到远程启动服务器…
    2516 正在连接到远程启动服务器…
    2517 远程启动服务已经停止,请检测错误记录文件,查明出错的原因。
    2518 远程启动失败,请检查错误日志文件,查明出错的原因。
    2519 不允许第二个远程启动 (Remoteboot) 资源连接。
    2550 浏览服务设置成 MaintainServerList=No。
    2610 因为没有网卡与这项服务一起启动,所以无法启动服务。
    2611 因为注册表中的启动信息不正确,所以无法启动服务。
    2612 无法启动服务,原因是它的数据库找不到或损坏。
    2613 因为找不到 RPLFILES 共享的资源,所以无法启动服务。
    2614 因为找不到 RPLUSER 组,所以无法启动服务。
    2615 无法枚举服务记录。
    2616 工作站记录信息已损坏。
    2617 工作站记录找不到。
    2618 其它的工作站正在使用此工作站名。
    2619 配置文件记录已损坏。
    2620 配置文件记录找不到。
    2621 其它的配置文件正在使用此名称。
    2622 有很多工作站正在使用此配置文件。
    2623 配置记录已损坏。
    2624 配置记录找不到。
    2625 适配器识别记录已损坏。
    2626 内部服务出错。
    2627 供应商识别记录已损坏。
    2628 启动块记录已损坏。
    2629 找不到此工作站的用户帐户记录。
    2630 RPLUSER 本地组找不到。
    2631 找不到启动块记录。
    2632 所选的配置文件与此工作站不兼容。
    2633 其它的工作站正在使用所选的网卡。
    2634 有些配置文件正在使用此配置。
    2635 有数个工作站、配置文件或配置正在使用此启动块。
    2636 服务无法制作远程启动数据库的备份。
    2637 找不到适配器记录。
    2638 找不到供应商记录。
    2639 其它供应商记录正在使用此供应商名称。
    2640 其它的启动区记录正在使用启动名称或供应商识别记录。
    2641 其它的配置正在使用此配置名称。
    2660 由 Dfs 服务所维护的内部数据库已损坏
    2661 内部数据库中的一条记录已 损坏
    2662 输入项路径与卷路径不匹配
    2663 给定卷名已存在
    2664 指定的服务器共享已在 Dfs 中共享
    2665 所显示的服务器共享不支持所显示的 Dfs 卷
    2666 此操作在非叶卷上无效。
    2667 此操作在叶卷上无效。
    2668 此操作不明确,因为该卷存在多服务器。
    2669 无法创建连接点
    2670 该服务器不是 Dfs 可识别的
    2671 指定的重命名目标路径无效。
    2672 指定 Dfs 卷脱线
    2673 指定的服务器不为此卷服务
    2674 检测到 Dfs 名中的环路
    2675 在基于服务器的 Dfs 上不支持该操作
    2676 这个卷已经受该指定服务器共享支持
    2677 无法删除这个卷的上一个服务器共享支持
    2678 Inter-Dfs 卷不支持该操作
    2679 Dfs 服务的内部状态已经变得不一致
    2680 Dfs 服务已经安装在指定的服务器上
    2681 被协调的 Dfs 数据是一样的
    2682 无法删除 Dfs 根目录卷 - 如需要请卸载 Dfs
    2683 该共享的子目录或父目录已经存在在一个 Dfs 中
    2690 Dfs 内部错误
    2691 这台机器已经加入域 。
    2692 这个机器目前未加入域。
    2693 这台机器是域控制器,而且无法从域中退出。
    2694 目标域控制器不支持在 OU 中创建的机器帐户。
    2695 指定的工作组名无效
    2696 指定的计算机名与域控制器上使用的默认语言不兼容。
    2697 找不到指定的计算机帐户。
    2999 这是 NERR 范围内的最后一个错误。
    3000 指定了未知的打印监视器。
    3001 指定的打印机驱动程序当前正在使用。
    3002 找不到缓冲文件。
    3003 未发送 StartDocPrinter 调用。
    3004 未发送 AddJob 调用。
    3005 指定的打印处理器已经安装。
    3006 指定的打印监视器已经安装。
    3007 该指定的打印监视器不具备所要求的功能。 
    3008 该指定的打印监视器正在使用中。
    3009 当打印机有作业排成队列时此操作请求是不允许的。
    3010 请求的操作成功。直到重新启动系统前更改将不会生效。
    3011 请求的操作成功。直到重新启动服务前更改将不会生效。
    3012 找不到打印机。
    3023 用户指定的关机命令文件,它的配置有问题。 不过 UPS 服务已经启动。
    3029 因为用户帐户数据库 (NET.ACC) 找不到或损坏, 而且也没有可用的备份数据库, 所以不能启动本地安全机制。 系统不安全!
    3037 @I 登录小时数
    3039 已经超过一个目录中文件的副本复制的限制。
    3040 已经超过副本复制的目录树深度限制。
    3046 无法登录。用户当前已经登录,同时参数 TRYUSER 设置为 NO。
    3052 命令行或配置文件中 没有提供必要的参数。
    3054 无法满足资源的请求。
    3055 系统配置有问题。
    3056 系统出错。
    3057 发生内部一致性的错误。
    3058 配置文件或命令行的选项不明确。
    3059 配置文件或命令行的参数重复。
    3060 服务没有响应控制, DosKillProc 函数已经停止服务。
    3061 运行服务程序时出错。
    3062 无法启动次级服务。
    3064 文件有问题。
    3070 内存
    3071 磁盘空间
    3072 线程
    3073 过程
    3074 安全性失败。
    3075 LAN Manager 根目录不正确或找不到。
    3076 未安装网络软件。
    3077 服务器未启动。
    3078 服务器无法访问用户帐户数据库 (NET.ACC)。
    3079 LANMAN 树中安装的文件不兼容。
    3080 LANMAN\LOGS 目录无效。
    3081 指定的域无法使用。
    3082 另一计算机正将此计算机名当作消息别名使用。
    3083 宣布服务器名失败。
    3084 用户帐户数据库没有正确配置。
    3085 服务器没有运行用户级安全功能。
    3087 工作站设置不正确。
    3088 查看您的错误日志文件以了解详细信息。
    3089 无法写入此文件。
    3090 ADDPAK 文件损坏。请删除 LANMAN\NETPROG\ADDPAK.SER 后重新应用所有的 ADDPAK。
    3091 因为没有运行 CACHE.EXE,所以无法启动 LM386 服务器。
    3092 安全数据库中找不到这台计算机的帐户。
    3093 这台计算机不是 SERVERS 组的成员。
    3094 SERVERS 组没有在本地安全数据库中。
    3095 此 Windows NT 计算机被设置为某个组的成员, 并不是域的成员。 此种配置下不需要运行 Netlogon 服务。
    3096 找不到此域的 Windows NT 域控制器。
    3098 服务无法与主域控制器进行验证。
    3099 安全数据库文件创建日期或序号有问题。
    3100 因为网络软件出错,所以无法执行操作。
    3102 这项服务无法长期锁定网络控制块 (NCB) 的段。 错误码就是相关数据。
    3103 这项服务无法解除网络控制块 (NCB) 段的长期锁定。 错误码就是相关数据。
    3106 收到意外的网络控制块 (NCB)。NCB 就是相关数据。
    3107 网络没有启动。
    3108 NETWKSTA.SYS 的 DosDevIoctl 或 DosFsCtl 调用失败。 显示的数据为以下格式: DWORD 值代表调用 Ioctl 或 FsCtl 的 CS:IP WORD 错误代码 WORD Ioctl 或 FsCtl 号
    3111 发生意外的 NetBIOS 错误。 错误码就是相关数据。
    3112 收到的服务器消息块 (SMB) 无效。 SMB 就是相关数据。
    3114 因为缓冲区溢出, 所以错误日志文件中部份的项目丢失。
    3120 控制网络缓冲区以外资源用量的初始化参数被设置大小, 因此需要的内存太多。
    3121 服务器无法增加内存段的大小。
    3124 服务器启动失败。三个 chdev 参数必须同时为零或者同时不为零。
    3129 服务器无法更新 AT 计划文件。 文件损坏。
    3130 服务器调用 NetMakeLMFileName 时出错。 错误码就是相关数据。
    3132 无法长期锁定服务器缓冲区。 请检查交换磁盘的可用空间,然后重新启动系统以启动服务器。
    3140 因为多次连续出现网络控制块 (NCB) 错误,所以停止服务。 最后一个坏的 NCB 以原始数据形式出现。
    3141 因为消息服务器共享的数据段被锁住, 所以消息服务器已经停止运行。
    3151 因为 VIO 调用出错,所以无法弹出显示消息。 错误码就是相关数据。
    3152 收到的服务器消息块 (SMB) 无效。SMB 就是相关数据。
    3160 工作站信息段大于 64K。 大小如下(以 DWORD 值的格式):
    3161 工作站无法取得计算机的名称号码。
    3162 工作站无法初始化 Async NetBIOS 线程。 错误码就是相关数据。
    3163 工作站无法打开最前面的共享段。 错误码就是相关数据。
    3164 工作站主机表已满。
    3165 收到的邮筒服务器消息块 (SMB) 有问题,SMB 就是相关数据。
    3166 工作站启动用户帐户数据库时出错。 错误码就是相关数据。
    3167 工作站响应 SSI 重新验证请求时出错。 函数码及错误码就是相关数据。
    3174 服务器无法读取 AT 计划文件。
    3175 服务器发现错误的 AT 计划记录。
    3176 服务器找不到 AT 计划文件,所以创建一个计划文件。
    3185 因为用户帐户数据库 (NET.ACC) 找不到或损坏, 而且也没有可用的备份数据库, 所以不能启动本地安全机制。 系统不安全!
    3204 服务器无法创建线程。 CONFIG.SYS 中的 THREADS 参数必须加大。
    3213 已经超过一个目录中文件的副本复制的限制。
    3214 已经超过副本复制的目录树深度限制。
    3215 邮筒中收到的消息无法识别。
    3217 无法登录。用户当前已经登录,同时参数 TRYUSER 设置为 NO。
    3230 检测到服务器的电源中断。
    3231 UPS 服务已经关掉服务器。
    3232 UPS 服务没有完成执行用户指定的 关机命令文件。
    3233 无法打开 UPS 驱动程序。 错误码就是相关数据。
    3234 电源已经恢复。
    3235 用户指定的关机命令文件 有问题。
    3256 该项服务的动态链接库 发生无法修复的错误。
    3257 系统返回意外的错误码。 错误码就是相关数据。
    3258 容错错误日志文件 - LANROOT\LOGS\FT.LOG 超过 64K。
    3259 容错错误日志文件 - LANROOT\LOGS\FT.LOG,在被打开时就已设置 更新进度位,这表示上次使用错误日志时, 系统死机。
    3301 Remote IPC
    3302 Remote Admin
    3303 Logon server share
    3304 网络出错。
    3400 内存不足,无法启动工作站服务。
    3401 读取 LAMAN.INI 文件的 NETWORKS 项目出错。
    3404 LAMAN.INI 文件中的 NETWORKS 项目太多。
    3408 程序无法用在此操作系统。
    3409 已经安装转发程序。
    3411 安装 NETWKSTA.SYS 时出错。 请按 ENTER 继续。
    3412 求解程序链接问题。
    3419 您已经打开文件或设备, 强制断开会造成数据丢失。
    3420 内部用的默认共享
    3421 信使服务
    3500 命令成功完成。
    3501 使用的选项无效。
    3503 命令包含无效的参数个数。
    3504 命令运行完毕,但发生一个或多个错误。
    3505 使用的选项数值不正确。
    3510 命令使用了冲突的选项。
    3512 软件需要新版的 操作系统。
    3513 数据多于 Windows 2000 所能够返回的。
    3515 此命令只能用在 Windows 2000 域控制器。
    3516 这个指令不能用于一个 Windows 2000 域控制器。
    3520 已经启动以下 Windows 2000 服务:
    3525 停止工作站服务也会同时停止服务器服务 。
    3526 工作站有打开的文件。
    3533 服务正在启动或停止中,请稍候片刻后再试一次。
    3534 服务没有报告任何错误。
    3535 正在控制设备时出错。
    3660 这些工作站在这台服务器上有会话:
    3661 这些工作站有会话打开了此台服务器上的文件:
    3666 消息别名已经转发出去。
    3670 您有以下的远程连接:
    3671 继续运行会取消连接。
    3676 会记录新的网络连接。
    3677 不记录新的网络连接。
    3678 保存配置文件时出错,原先记录的网络连接状态没有更改。
    3679 读取配置文件时出错。
    3682 没有启动任何网络服务。
    3683 清单是空的。
    3689 工作站服务已经在运行中,Windows 2000 会忽略工作站的命令选项。
    3694 在打印作业正在后台处理到队列时,无法删除共享的队列。
    3710 打开帮助文件时出错。
    3711 帮助文件是空的。
    3712 帮助文件已经损坏。
    3714 这是专为那些安装旧版软件的系统 提供的操作。
    3716 设备类型未知。
    3717 日志文件已经损坏。
    3718 程序文件名后必须以 .EXE 结束。
    3719 找不到匹配的共享,因此没有删除。
    3720 用户记录中的 “单位/星期” 的值不正确。
    3725 删除共享时出错。
    3726 用户名无效。
    3727 密码无效。
    3728 密码不匹配。
    3729 永久连接没有完全还原。
    3730 计算机名或域名错误。
    3732 无法设置该资源的默认权限。
    3734 没有输入正确的密码。
    3735 没有输入正确的名称。
    3736 该资源无法共享。
    3737 权限字符串包含无效的权限。
    3738 您只能在打印机或通讯设备上执行这项操作。
    3743 服务器没有设置远程管理的功能。
    3752 这台服务器上没有用户的会话。
    3756 响应无效。
    3757 没有提供有效的响应。
    3758 提供的目标清单与打印机队列目标清单不匹配。
    3761 指定的时间范围中结束的时间比开始的时间早。
    3764 提供的时间不是整点。
    3765 12 与 24 小时格式不能混用。
    3767 提供的日期格式无效。
    3768 提供的日期范围无效。
    3769 提供的时间范围无效。
    3770 NET USER 的参数无效。请检查最短的密码长度 和/或提供参数。
    3771 ENABLESCRIPT 的值必须是 YES。
    3773 提供的国家(地区)代码无效。
    3774 用户已经创建成功,但是无法添加到 USERS 本地组中。
    3775 提供的用户上下文无效。
    3777 文件发送功能已不再支持。
    3778 您可能没有指定 ADMIN$ 及 IPC$ 共享的路径。
    3784 只有磁盘共享可以标记为可以缓存。
    3802 此计划日期无效。
    3803 LANMAN 根目录无法使用。
    3804 SCHED.LOG 文件无法打开。
    3805 服务器服务尚未启动。
    3806 AT 作业标识不存在。
    3807 AT 计划文件已损坏。
    3808 因为 AT 计划文件发生问题,所以无法运行删除操作。
    3809 命令行不得超过 259 个字符。
    3810 因为磁盘已满,所以 AT 计划文件无法更新。
    3812 AT 计划文件无效。请删除此文件并创建新的文件。
    3813 AT 计划文件已经删除。
    3814 此命令的语法是: AT [id] [/Delete] AT 时间 [/EVERY:日期 | /NEXT:日期] 命令 AT 命令会在以后的 指定日期及时间,安排程序在服务器上运行。 它也会显示安排运行的程序及命令的清单。 您可以将日期指定为M、T、W、Th、F、Sa、Su 或 1-31 的格式。 您可以将时间指定为HH:3814
    3815 AT 命令已经超时。 请稍后再试一次。
    3816 用户帐户的密码使用最短期限不得 大于密码最长使用期限。
    3817 指定的数值与安装下层软件的服务器不兼容。 请指定较小的值。
    3901 ****
    3902 **** 意外到达消息的结尾 ****
    3905 请按 ESC 退出
    3906 …
    3912 找不到时间服务器。
    3915 无法判断用户的主目录。
    3916 没有指定用户的主目录。
    3920 已经没有可用的驱动器号。
    3936 这台计算机目前没有配置成使用一个指定的 SNTP 服务器。
    3953 语法错误。
    3960 指定的文件号码无效。
    3961 指定的打印作业号码无效。
    3963 指定的用户或组帐户找不到。
    3965 已添加用户,但 NetWare 的文件和打印服务无法启用。
    3966 没有安装 NetWare 的文件和打印服务。
    3967 无法为 NetWare 的文件和打印服务设置用户属性。
    3969 NetWare 兼容登录
    4000 WINS 在处理命令时遇到错误。
    4001 本地的 WINS 不能删除。
    4002 文件导入操作失败。
    4003 备份操作失败。是否先前已作过完整备份?
    4004 备份操作失败。请检查您备份数据库的目录。
    4005 WINS 数据库中没有这个名称。
    4006 不允许复制一个尚未配置的伙伴。
    4100 DHCP 客户获得一个在网上已被使用的 IP 地址。 直到 DHCP 客户可以获得新的地址前,本地接口将被禁用。
    4200 无法识别传来的 GUID 是否为有效的 WMI 数据提供程序。
    4201 无法识别传来的实例名是否为有效的 WMI 数据提供程序。
    4202 无法识别传来的数据项目标识符是否为有效的 WMI 数据提供程序。
    4203 无法完成 WMI 请求,应该重试一次。
    4204 找不到 WMI 数据提供程序。
    4205 WMI 数据提供程序引用到一个未注册的实例组。
    4206 WMI 数据块或事件通知已启用。
    4207 WMI 数据块不再可用。
    4208 WMI 数据服务无法使用。
    4209 WMI 数据提供程序无法完成要求。
    4210 WMI MOF 信息无效。
    4211 WMI 注册信息无效。
    4212 WMI 数据块或事件通知已禁用。
    4213 WMI 数据项目或数据块为只读。
    4214 WMI 数据项目或数据块不能更改。
    4300 媒体标识符没有表示一个有效的媒体。
    4301 库标识符没有表示一个有效的库。
    4302 媒体缓冲池标识符没有表示一个有效的媒体缓冲池。
    4303 驱动器和媒体不兼容或位于不同的库中。
    4304 媒体目前在脱机库中,您必须联机才能运行这个操作。
    4305 操作无法在脱机库中运行。
    4306 库、驱动器或媒体缓冲池是空的。
    4307 库、磁盘或媒体缓冲池必须是空的,才能运行这个操作。
    4308 在这个媒体缓冲池或库中目前没有可用的媒体。
    4309 这个操作所需的资源已禁用。
    4310 媒体标识符没有表示一个有效的清洗器。
    4311 无法清洗驱动器或不支持清洗。
    4312 对象标识符没有表示一个有效的对象。
    4313 无法读取或写入数据库。
    4314 数据库已满。
    4315 媒体与设备或媒体缓冲池不兼容。
    4316 这个操作所需的资源不存在。
    4317 操作标识符不正确。
    4318 媒体未被安装,或未就绪。
    4319 设备未就绪。
    4320 操作员或系统管理员拒绝了请求。
    4321 驱动器标识符不代表一个有效的驱动器。
    4322 程序库已满。没有可使用的插槽。
    4323 传输程序不能访问媒体。
    4324 无法将媒体加载到驱动器中。
    4325 无法检索有关驱动器的状态。
    4326 无法检索有关插槽的状态。
    4327 无法检索传输的状态。
    4328 因为传输已在使用中,所以无法使用。
    4329 无法打开或关闭弹入/弹出端口。
    4330 因为媒体在驱动器中,无法将其弹出。
    4331 清洗器插槽已被保留。
    4332 没有保留清洗器插槽。
    4333 清洗器墨盒已进行了最大次数的驱动器清洗。
    4334 意外媒体标识号。
    4335 在这个组或源中最后剩下的项目不能被删除。
    4336 提供的消息超过了这个参数所允许的最大尺寸。
    4337 该卷含有系统和页面文件。
    4338 由于库中至少有一个驱动器可以支持该媒体类型,不能从库中删除媒体类型。
    4339 由于没有可以使用的已被启动的驱动器,无法将该脱机媒体装入这个系统。
    4340 (Y/N) [Y]
    4341 (Y/N) [N]
    4342 错误
    4343 OK
    4344 Y
    4345 N
    4346 任何
    4347 A
    4348 P
    4349 (找不到)
    4350 远程存储服务无法撤回文件。
    4351 远程存储服务此时不可操作。
    4352 远程存储服务遇到一个媒体错误。
    4354 请键入密码:
    4358 请键入用户的密码:
    4359 请键入共享资源的密码:
    4360 请键入您的密码:
    4361 请再键入一次密码以便确认:
    4362 请键入用户的旧密码:
    4363 请键入用户的新密码:
    4364 请键入您的新密码:
    4365 请键入复制器服务密码:
    4368 请键入您的用户名:
    4372 打印作业详细信息
    4378 控制下列正在运行的服务:
    4379 统计数据可用于正在运行的下列服务:
    4381 此命令的语法是:
    4382 此命令的选项是:
    4383 请键入主域控制器的名称:
    4385 Sunday
    4386 Monday
    4387 Tuesday
    4388 Wednesday
    4389 Thursday
    4390 此文件或目录不是一个重解析点。
    4391 重解析点的属性不能被设置,因为它与已有的属性冲突。
    4392 在重解析点缓冲区中的数据无效。
    4393 在重解析点缓冲区中的标签无效。
    4394 请求中指定的标签和重解析点中的不匹配。
    4395 W
    4396 Th
    4397 F
    4398 S
    4399 Sa
    4401 组名
    4402 注释
    4403 成员
    4406 别名
    4407 注释
    4408 成员
    4411 用户名
    4412 全名
    4413 注释
    4414 用户的注释
    4415 参数
    4416 国家(地区)代码
    4417 权限等级
    4418 操作员权限
    4419 帐户启用
    4420 帐户到期
    4421 上次设置密码
    4422 密码到期
    4423 密码可更改
    4424 允许的工作站
    4425 磁盘空间上限
    4426 无限制
    4427 本地组会员
    4428 域控制器
    4429 登录脚本
    4430 上次登录
    4431 全局组成员
    4432 可允许的登录小时数
    4433 全部
    4434 无
    4436 主目录
    4437 需要密码
    4438 用户可以更改密码
    4439 用户配置文件
    4440 已锁定
    4450 计算机名
    4451 用户名
    4452 软件版本
    4453 工作站活动在
    4454 Windows NT 根目录
    4455 工作站域
    4456 登录域
    4457 其它域
    4458 COM 打开超时 (秒)
    4459 COM 发送计数 (字节)
    4460 COM 发送超时 (毫秒)
    4461 DOS 会话打印超时 (秒)
    4462 错误日志文件大小上限 (K)
    4463 高速缓存上限 (K)
    4464 网络缓冲区数
    4465 字符缓冲区数
    4466 域缓冲区大小
    4467 字符缓冲区大小
    4468 计算机全名
    4469 工作站域 DNS 名称
    4470 Windows 2000
    4481 服务器名称
    4482 服务器注释
    4483 发送管理警报到
    4484 软件版本
    4485 对等服务器
    4486 Windows NT
    4487 服务器等级
    4488 Windows NT Server
    4489 服务器正运行于
    4492 服务器已隐藏
    4500 零备份存储在这个卷上不可用。
    4506 登录的用户数量上限
    4507 同时可并存的管理员数量上限
    4508 资源共享数量上限
    4509 资源连接数量上限
    4510 服务器打开的文件数量上限
    4511 每个会话打开的文件数量上限
    4512 文件锁定数量上限
    4520 空闲的会话时间 (分)
    4526 共享等级
    4527 用户等级
    4530 未限制的服务器
    4570 强制用户在时间到期之后多久必须注销?:
    4571 多少次密码不正确后锁住帐户?:
    4572 密码最短使用期限 (天):
    4573 密码最长使用期限 (天):
    4574 密码长度下限:
    4575 保持的密码历史记录长度:
    4576 计算机角色:
    4577 工作站域的主域控制器:
    4578 锁定阈值:
    4579 锁定持续时间(分):
    4580 锁定观测窗口(分):
    4600 统计开始于
    4601 接受的会话
    4602 会话超时
    4603 会话出错
    4604 发送的 KB
    4605 接收的 KB
    4606 平均响应时间 (毫秒)
    4607 网络错误
    4608 访问的文件
    4609 后台处理的打印作业
    4610 系统出错
    4611 密码违规
    4612 权限违规
    4613 访问的通讯设备
    4614 会话已启动
    4615 重新连接的会话
    4616 会话启动失败
    4617 断开的会话
    4618 网络 I/O 执行
    4619 文件及管道被访问
    4620 时间缓冲区耗尽
    4621 大缓冲区
    4622 请求缓冲区
    4626 已做连接
    4627 连接失败
    4630 接收的字节数
    4631 接收的服务器消息块 (SMB)
    4632 传输的字节数
    4633 传输的服务器消息块 (SMB)
    4634 读取操作
    4635 写入操作
    4636 拒绝原始读取
    4637 拒绝原始写入
    4638 网络错误
    4639 已做连接
    4640 重新连接
    4641 服务器断开
    4642 会话已启动
    4643 会话挂起
    4644 失败的会话
    4645 操作失败
    4646 使用计数
    4647 使用计数失败
    4655 消息名称转发已经取消。
    4661 密码已经更改成功。
    4664 消息已经发给网络上所有的用户。
    4666 消息已经送到此服务器上的所有用户。
    4696 Windows NT Server
    4697 Windows NT Workstation
    4698 MS-DOS 增强型工作站
    4700 服务器名称 注释
    4701 资源共享名 类型 用途 注释
    4702 (UNC)
    4703 …
    4704 Domain
    4706 其它可用的网络:
    4710 Disk
    4711 Print
    4712 Comm
    4713 IPC
    4714 状态 本地 远程 网络
    4715 OK
    4716 休止
    4717 已暂停
    4718 断开
    4719 错误
    4720 正在连接
    4721 正在重新连接
    4722 状态
    4723 本地名称
    4724 远程名称
    4725 资源类型
    4726 # 打开
    4727 # 连接
    4728 不可用
    4730 共享名 资源 注释
    4731 共享名
    4732 资源
    4733 后台处理
    4734 权限
    4735 最多用户
    4736 无限制
    4737 用户
    4740 识别码 路径 用户名 # 锁定
    4741 文件识别码
    4742 锁定
    4743 权限
    4750 计算机 用户名 客户类型 打开空闲时间
    4751 计算机
    4752 会话时间
    4753 空闲时间
    4754 资源共享名 类型 # 打开
    4755 客户类型
    4756 来宾登录
    4770 脱机缓存被启用:手动恢复
    4771 脱机缓存被启用:自动恢复
    4772 脱机缓存被启用:用户之间没有共享
    4773 脱机缓存被停用
    4774 自动
    4775 手动
    4800 名称
    4801 转发到
    4802 已经从下列位置转发给您
    4803 这台服务器的用户
    4804 用户已经按 Ctrl+Break 中断网络发送。
    4810 名称 作业编号 大小 状态
    4811 作业
    4812 打印
    4813 名称
    4814 作业 #
    4815 大小
    4816 状态
    4817 分隔文件
    4818 注释
    4819 优先级
    4820 打印后于
    4821 打印直到
    4822 打印处理程序
    4823 附加信息
    4824 参数
    4825 打印设备
    4826 打印机活动中
    4827 打印机搁置
    4828 打印机出错
    4829 正在删除打印机
    4830 打印机状态未知
    4841 作业 #
    4842 正在提交用户
    4843 通知
    4844 作业数据类型
    4845 作业参数
    4846 正在等候
    4847 搁置于队列
    4848 正在后台处理
    4849 已暂停
    4850 脱机
    4851 错误
    4852 缺纸
    4853 需要干预
    4854 正在打印
    4855 on
    4862 驱动程序
    4930 用户名 类型 日期
    4931 锁定
    4932 服务
    4933 服务器
    4934 服务器已启动
    4935 服务器已暂停
    4936 服务器已继续操作
    4937 服务器已停止
    4938 会话
    4939 登录来宾
    4940 登录用户
    4941 登录管理员
    4942 正常注销
    4943 登录
    4944 注销错误
    4945 注销自动断开
    4946 注销管理员断开
    4947 注销受登录限制
    4948 服务
    4957 帐户
    4964 已修改帐户系统设置
    4965 登录限制
    4966 超过限制: 未知
    4967 超过限制: 登录时间
    4968 超过限制: 帐户过期
    4969 超过限制: 工作站识别码无效
    4970 超过限制: 帐户停用
    4971 超过限制: 帐户已删除
    4972 资源
    4978 密码不正确
    4979 需要管理员特权
    4980 访问
    4984 拒绝访问
    4985 未知
    4986 其它
    4987 持续时间:
    4988 持续时间: 无效
    4989 持续时间: 1 秒以下
    4990 (无)
    4994 访问结束
    4995 登录到网络
    4996 拒绝登录
    4997 程序 消息 时间
    4999 管理员已解除帐户的锁定状态
    5000 注销网络
    5001 因为其它资源需要它,不能将群集资源移到另一个组。
    5002 找不到此群集资源的依存。
    5003 因为已经处于依存状态,此群集资源不能依存于指定的资源。
    5004 此群集资源未联机。
    5005 此操作没有可用的群集节点。
    5006 没有群集资源。
    5007 找不到群集资源。
    5008 正在关闭群集。
    5009 因为联机,群集节点无法从群集中脱离。
    5010 对象已存在。
    5011 此对象已在列表中。
    5012 新请求没有可用的群集组。
    5013 找不到群集组。
    5014 因为群集组未联机,此操作不能完成。
    5015 群集节点不是此资源的所有者。
    5016 群集节点不是此资源的所有者。
    5017 群集资源不能在指定的资源监视器中创建。
    5018 群集资源不能通过资源监视器来联机。
    5019 因为群集资源联机,此操作不能完成。
    5020 由于是仲裁资源,群集资源不能被删除或脱机。
    5021 由于没有能力成为仲裁资源,此群集不能使指定资源成为仲裁资源。
    5022 群集软件正关闭。
    5023 组或资源的状态不是执行请求操作的正确状态。
    5024 属性已被存储,但在下次资源联机前,不是所有的修改将生效。
    5025 由于不属于共享存储类别,群集不能使指定资源成为仲裁资源。
    5026 由于是内核资源,无法删除群集资源。
    5027 仲裁资源联机失败。
    5028 无法成功创建或装入仲裁日志。
    5029 群集日志损坏。
    5030 由于该日志已超出最大限量,无法将记录写入群集日志。
    5031 群集日志已超出最大限量。
    5032 群集日志没有发现检查点记录。
    5033 不满足日志所需的最小磁盘空间。
    5034 群集节点未能控制仲裁资源,因为它被另一个活动节点拥有。
    5035 这个操作的群集网络无效。
    5036 此操作没有可用的群集节点。
    5037 所有群集节点都必须运行才能执行这个操作。
    5038 群集资源失败。
    5039 该群集节点无效。
    5040 该群集节点已经存在。
    5041 一个节点正在加入该群集。
    5042 找不到群集节点。
    5043 找不到群集本地节点信息。
    5044 群集网络已经存在。
    5045 找不到群集网络。
    5046 群集网络界面已经存在。
    5047 找不到群集网络界面。
    5048 群集请求在这个对象中无效。
    5049 群集网络提供程序无效。
    5050 群集节点坏了。
    5051 无法连接到群集节点。
    5052 该群集节点不是群集的一个成员。
    5053 群集加入操作正在进行中。
    5054 该群集网络无效。
    5055 Mar
    5056 该群集节点可以使用。
    5057 该群集 IP 地址已在使用中。
    5058 该群集节点没有中止。
    5059 没有有效的群集安全上下文。
    5060 该群集网络不是为内部群集通讯配置的。
    5061 群集节点已经开始。
    5062 群集节点已经坏了。
    5063 群集网络已经联机。
    5064 群集网络已经脱机。
    5065 群集节点已经是该群集的成员。
    5066 该群集网络是唯一个为两个或更多活动群集节点进行内部群集通讯的配置。不能从网络上删除内部通讯能力。
    5067 一个或更多的群集资源依靠网络来向客户提供服务。不能从网络上删除客户访问能力。
    5068 该操作不能在群集资源上作为仲裁资源执行。您不能将仲裁资源脱机或修改它的所有者名单。
    5069 该群集仲裁资源不允许有任何依存关系。
    5070 该群集节点暂停。
    5071 群集资源不能联机。所有者节点不能在这个资源上运行。
    5072 群集节点没有准备好,不能执行所请求的操作。
    5073 群集节点正在关闭。
    5074 放弃群集节点加入操作。
    5075 由于加入节点和支持者之间的软件版本不兼容,该群集加入操作失败。
    5076 由于该群集已经到达其所能监督的资源限制,不能创建这个资源。
    5077 系统配置在群集加入或形成操作时已更改。放弃加入或形成操作。
    5078 找不到指定的资源种类。
    5079 指定的节点不支持这种资源,这也许是由于版本不一致或是由于在这个节点上没有资源 DLL。
    5080 该资源 DLL 不支持指定的资源名称。这可能是由于一个提供给源 DLL 名称是错误的(或经过更改的)。
    5081 不能在 RPC 服务器上注册任何身份验证包。
    5082 由于组的所有者不在组的首选列表中,不能将组联机。要改变组的所有者节点,请移动组。
    5083 群集数据库的系列号已改变,或者与锁定程序节点不相容,因此加入操作没有成功。如果在加入操作期间群集数据库有任何改动,这都可能发生。
    5084 资源在其当前状态下,资源监视器不允许执行失败操作。资源处于挂起状态时,这都可能发生。
    5085 非锁定程序代码收到一个为全局更新保留锁定的请求。
    5086 群集服务找不到仲裁磁盘。
    5087 已备份的群集数据库可能已损坏。
    5088 DFS 根目录已在这个群集节点中。
    5089 由于与另一个现有属性冲突,未能修改资源属性。
    5090 西班牙
    5091 丹麦
    5092 瑞典
    5093 挪威
    5094 德国
    5095 澳大利亚
    5096 日本
    5097 韩国
    5098 中国
    5099 台湾
    5100 亚洲
    5101 葡萄牙
    5102 芬兰
    5103 阿拉伯
    5104 希伯莱
    5153 UPS 服务即将执行最后的关机操作。
    5170 工作站必须用 NET START 才能启动。
    5175 远程 IPC
    5176 远程管理
    5177 默认共享
    5291 永不
    5292 永不
    5293 永不
    5295 NETUS.HLP
    5296 NET.HLP
    5300 网络控制块 (NCB) 请求运行成功。 NCB 是相关数据。
    5301 SEND DATAGRAM、SEND BROADCAST、ADAPTER STATUS 或 SESSION STATUS 的网络控制块 (NCB) 缓冲区长度无效。 NCB 是相关数据。
    5302 网络控制块 (NCB) 指定的数据描述数组无效。 NCB 是相关数据。
    5303 网络控制块 (NCB) 指定的命令无效。 NCB 是相关数据。
    5304 网络控制块 (NCB) 指定的消息交换码无效。 NCB 是相关数据。
    5305 网络控制块 (NCB) 命令超时。会话可能异常终止。 NCB 是相关数据。
    5306 接收的网络控制块 (NCB) 消息不完整。 NCB 是相关数据。
    5307 网络控制块 (NCB) 指定的缓冲区无效。 NCB 是相关数据。
    5308 网络控制块 (NCB) 指定的会话号码没有作用。 NCB 是相关数据。
    5309 网卡没有任何资源可用。 网络控制块 (NCB) 请求被拒绝。NCB 是相关数据。
    5310 网络控制块 (NCB) 指定的会话已经关闭。 NCB 是相关数据。
    5311 网络控制块 (NCB) 命令已经取消。 NCB 是相关数据。
    5312 网络控制块 (NCB) 指定的消息块不合逻辑。 NCB 是相关数据。
    5313 该名称已经存在于本地适配器名称表中。 网络控制块 (NCB) 请求被拒绝。NCB 是相关数据。
    5314 网卡名称表已满。 网络控制块 (NCB) 请求被拒绝。NCB 是相关数据。
    5315 网络名称已经有活动的会话,现在取消注册。 网络控制块 (NCB) 命令运行完毕。NCB 是相关数据。
    5316 先前发出的 Receive Lookahead 命令对此会话仍起作用。 网络控制块 (NCB) 命令被拒绝。 NCB 是相关数据。
    5317 本地会话表已满。网络控制块 (NCB) 请求被拒绝。 NCB 是相关数据。
    5318 拒绝打开网络控制块 (NCB) 会话,远程计算机上没有侦听命令在执行。 NCB 是相关数据。
    5319 网络控制块 (NCB) 指定的名称号码无效。 NCB 是相关数据。
    5320 网络控制块 (NCB) 中指定的调用名称找不到, 或者没有应答。NCB 是相关数据。
    5321 网络控制块 (NCB) 中指定的名称找不到。无法将“
    ”或 00h 填入 NCB 名称。NCB 是相关数据。
    5322 网络控制块 (NCB) 中指定的名称正用于远程适配器。 NCB 是相关数据。
    5323 网络控制块 (NCB) 中指定的名称已经删除。 NCB 是相关数据。
    5324 网络控制块 (NCB) 中指定的会话异常终止。 NCB 是相关数据。
    5325 网络协议在网络上检测两个或数个 相同的名称。 网络控制块 (NCB) 是相关数据。
    5326 收到意外的协议数据包。 远程设备可能不兼容。网络控制块 (NCB) 是相关数据。
    5333 NetBIOS 界面正忙。 网络控制块 (NCB) 请求被拒绝。NCB 是相关数据。
    5334 未完成的网络控制块 (NCB) 命令太多。 NCB 请求被拒绝。NCB 是相关数据。
    5335 网络控制块 (NCB) 中指定的适配器号无效。 NCB 是相关数据。
    5336 网络控制块 (NCB) 命令在取消的同时运行完毕。 NCB 是相关数据。
    5337 网络控制块 (NCB) 指定的名称已经保留。 NCB 是相关数据。
    5338 网络控制块 (NCB) 命令无法取消。 NCB 是相关数据。
    5351 同一个会话有多个网络控制块 (NCB)。 NCB 请求被拒绝。NCB 是相关数据。
    5352 网卡出错。 唯一可能发出的 NetBIOS 命令是 NCB RESET。 网络控制块 (NCB) 是相关数据。
    5354 超过应用程序数目上限。 网络控制区 (NCB) 请求被拒绝,NCB 是相关数据。
    5356 请求的资源无法使用。 网络控制块 (NCB) 请求被拒绝。NCB 是相关数据。
    5364 系统出错。 网络控制块 (NCB) 请求被拒绝。NCB 即为数据。
    5365 “ROM 校验和”失败。 网络控制块 (NCB) 请求被拒绝。NCB 是相关数据。
    5366 RAM 测试失败。 网络控制块 (NCB) 请求被拒绝。NCB 是相关数据。
    5367 数字式环回失败。 网络控制块 (NCB) 请求被拒绝。NCB 是相关数据。
    5368 模拟式环回失败。 网络控制块 (NCB) 请求被拒绝。NCB 是相关数据。
    5369 界面失败。 网络控制块 (NCB) 请求被拒绝。NCB 是相关数据。
    5370 收到的网络控制块 (NCB) 返回码无法识别。 NCB 是相关数据。
    5380 网卡故障。 网络控制块 (NCB) 请求被拒绝。NCB 是相关数据。
    5381 网络控制块 (NCB) 命令仍然处于搁置状态。 NCB 是相关数据。
    5509 Windows 2000 无法按指定的配置启动, 将换用先前可工作的配置。
    5600 无法共享用户或脚本路径。
    5601 计算机的密码在本地安全 数据库中找不到。
    5602 访问计算机的本地或网络安全数据库时, 发生内部错误。
    5705 Netlogon 服务用于记录数据库更改数据的 日志高速缓存已损坏。 Netlogon 服务正在复位更改日志文件。
    5728 无法加载任何传输。
    5739 此域的全局组数目超过可以复制到 LanMan BDC 的限制。 请删除部分的全局组或删除域中的 LanMan BDC。
    5742 服务无法检索必要的消息,所以无法运行远程启动客户。
    5743 服务发生严重的错误,无法从远程启动 3Com 3Start 远程启动客户。
    5744 服务发生严重的系统错误,即将关机。
    5760 服务在分析 RPL 配置时出错。
    5761 服务在创建所有配置的 RPL 配置文件时出错。
    5762 服务在访问注册表时出错。
    5763 服务在替换可能过期的 RPLDISK.SYS 时出错。
    5764 服务在添加安全帐户或设置文件权限时出错。 这些帐户是独立 RPL 工作站的 RPLUSER 本地组 以及用户帐户。.
    5765 服务无法备份它的数据库。
    5766 服务无法从它的数据库初始化。 数据库可能找不到或损坏。 服务会试图从备份数据库恢复该数据库。
    5767 服务无法从备份数据库还原它的数据库。服务 将不启动。
    5768 服务无法从备份数据库还原它的数据库。
    5769 服务无法从它还原的数据库初始化。服务 将不启动。
    5771 远程启动数据库采用 NT 3.5 / NT 3.51 格式。NT 正在转换其为 NT 4.0 格式。完成转换后,JETCONV 转换器将写出应用事件日志。
    5773 该 DC 的 DNS 服务器不支持动态 DNS。 将文件 ‘SystemRoot\System32\Config\netlogon.dns’ 中的 DNS 记录添加到伺服那个文件中引用的域的 DNS 服务器。
    5781 由于没有可以使用的 DNS 服务器,一个或更多 DNS 记录的动态注册和注销未成功。
    6000 无法加密指定的文件。
    6001 指定的文件无法解密。
    6002 指定的文件已加密,而且用户没有能力解密。
    6003 这个系统没有有效的加密恢复策略配置。
    6004 所需的加密驱动程序并未加载到系统中。
    6005 文件加密所使用的加密驱动程序与目前加载的加密驱动程序不同。
    6006 没有为用户定义的 EFS 关键字。
    6007 指定的文件并未加密。
    6008 指定的文件不是定义的 EFS 导出格式。
    6009 指定的文件是只读文件。
    6010 已为加密而停用目录。
    6011 不信任服务器来进行远程加密操作。
    6118 此工作组的服务器列表当前无法使用
    6200 要正常运行,任务计划程序服务的配置必须在系统帐户中运行。单独的任务可以被配置成在其他帐户中运行。
    7001 指定的会话名称无效。
    7002 指定的协议驱动程序无效。
    7003 在系统路径上找不到指定的协议驱动程序。
    7004 在系统路径上找不到指定的终端连接。
    7005 不能为这个会话创建一个事件日志的注册键。
    7006 同名的一个服务已经在系统中存在。
    7007 在会话上一个关闭操作挂起。
    7008 没有可用的输出缓冲器。
    7009 找不到 MODEM.INF 文件。
    7010 在 MODEM.INF 中没有找到调制解调器名称。
    7011 调制解调器没有接受发送给它的指令。验证配置的调制解调器与连接的调制解调器是否匹配。
    7012 调制解调器没有接受发送给它的指令。验证该调制解调器是否接线正确并且打开了电源开关。
    7013 运载工具检测失败或者由于断开连接,运载工具已被丢弃。
    7014 在要求的时间内没有发现拨号音。 确定电话线连接正确并可使用。
    7015 在远程站点回叫时检测到了占线信号。
    7016 在回叫时远程站点上检测到了声音。
    7017 传输驱动程序错误
    7022 找不到指定的会话。
    7023 指定的会话名称已处于使用中。
    7024 由于终端连接目前正在忙于处理一个连接、断开连接、复位或删除操作,无法完成该请求的操作。
    7025 试图连接到其视频模式不受当前客户支持的会话。
    7035 应用程序尝试启动 DOS 图形模式。 不支持 DOS 图形模式。
    7037 您的交互式登录权限已被禁用。 请与您的管理员联系。
    7038 该请求的操作只能在系统控制台上执行。 这通常是一个驱动程序或系统 DLL 要求直接控制台访问的结果。
    7040 客户未能对服务器连接消息作出响应。
    7041 不支持断开控制台会话。
    7042 不支持重新将一个断开的会话连接到控制台。
    7044 远程控制另一个会话的请求被拒绝。
    7045 拒绝请求的会话访问。
    7049 指定的终端连接驱动程序无效。
    7050 不能远程控制该请求的会话。 这也许是由于该会话被中断或目前没有一个用户登录。而且,您不能从该系统控制台远程控制一个会话或远程控制系统控制台。并且,您不能远程控制您自己的当前会话。
    7051 该请求的会话没有配置成允许远程控制。
    7052 拒绝连接到这个终端服务器。终端服务器客户许可证目前正在被另一个用户使用。 请与系统管理员联系,获取一份新的终端服务器客户,其许可证号码必须是有效的、唯一的。
    7053 拒绝连接到这个终端服务器。还没有为这份终端服务器客户输入您的终端服务器客户许可证号码。 请与系统管理员联系,为该终端服务器客户输入一个有效的、唯一的许可证号码。
    7054 系统已达到其授权的登录限制。 请以后再试一次。
    7055 您正在使用的客户没有使用该系统的授权。您的登录请求被拒绝。
    7056 系统许可证已过期。您的登录请求被拒绝。
    8001 文件复制服务 API 被错误调用。
    8002 无法启动文件复制服务。
    8003 无法停止文件复制服务。
    8004 文件复制服务 API 终止了请求。 事件日志可能有详细信息。
    8005 该文件复制服务中断了该请求。 事件日志可能有详细信息。
    8006 无法联系文件复制服务。 事件日志可能有详细信息。
    8007 由于该用户没有足够特权,文件复制服务不能满足该请求。 事件日志可能有详细信息。
    8008 由于验证的 RPC 无效,文件复制服务不能满足该请求。 事件日志可能有详细信息。
    8009 由于该用户在域控制器上没有足够特权,文件复制服务不能满足该请求。 事件日志可能有详细信息。
    8010 由于在域控制器上的验证的 RPC 无效,文件复制服务不能满足该请求。 事件日志可能有详细信息。
    8011 该文件复制服务无法与在域控制器上的文件复制服务通讯。 事件日志可能有详细信息。
    8012 在域控制器上的文件复制服务无法与这台计算机上的文件复制服务通讯。 事件日志可能有详细信息。
    8013 由于内部错误,该文件复制服务不能进入该系统卷中。 事件日志可能有详细信息。
    8014 由于内部超时,该文件复制服务不能进入该系统卷中。 事件日志可能有详细信息。
    8015 该文件复制服务无法处理此请求。该系统卷仍在忙于前一个请求。
    8016 由于内部错误,该文件复制服务无法停止复制该系统卷。 事件日志可能有详细信息。
    8017 该文件复制服务检测到一个无效参数。
    8200 在安装目录服务时出现一个错误。有关详细信息,请查看事件日志。
    8201 目录服务在本地评估组成员身份。
    8202 指定的目录服务属性或值不存在。
    8203 指定给目录服务的属性语法无效。
    8204 指定给目录服务的属性类型未定义。
    8205 指定的目录服务属性或值已经存在。
    8206 目录服务忙。
    8207 该目录服务无效。
    8208 目录服务无法分配相对标识号。
    8209 目录服务已经用完了相对标识号池。
    8210 由于目录服务不是该类操作的主控,未能执行操作。
    8211 目录服务无法初始化分配相对标识号的子系统。
    8212 该请求的操作没有满足一个或多个与该对象的类别相关的约束。
    8213 目录服务只可以在一个页状对象上运行要求的操作。
    8214 目录服务不能在一个对象的 RDN 属性上执行该请求的操作。
    8215 目录服务检测出修改对象类别的尝试。
    8216 不能执行请求的通过域的移动操作。
    8217 无法联系全局编录服务器。
    8218 策略对象是共享的并只可在根目录上修改。
    8219 策略对象不存在。
    8220 请求的策略信息只在目录服务中。
    8221 域控制器升级目前正在使用中。
    8222 域控制器升级目前不在使用中
    8224 出现一个操作错误。
    8225 出现一个协议错误。
    8226 已经超过这个请求的时间限制。
    8227 已经超过这个请求的大小限制。
    8228 已经超过这个请求的管理限制。
    8229 比较的响应为假。
    8230 比较的响应为真。
    8231 这个服务器不支持请求的身份验证方式。
    8232 这台服务器需要一个更安全的身份验证方式。
    8233 不适当的身份验证。
    8234 未知的身份验证机制。
    8235 从服务器返回了一个建议。
    8236 该服务器不支持该请求的关键扩展。
    8237 这个请求需要一个安全的连接。
    8238 不恰当的匹配。
    8239 出现一个约束冲突。
    8240 在服务器上没有这样一个对象。
    8241 有一个别名问题。
    8242 指定了一个无效的 dn 语法。
    8243 该对象为叶对象。
    8244 有一个别名废弃问题。
    8245 该服务器不愿意处理该请求。
    8246 检查到一个循环。
    8247 有一个命名冲突。
    8248 结果设置太大。
    8249 该操作会影响到多个 DSA。
    8250 该服务器不可操作。
    8251 出现一个本地错误。
    8252 出现一个编码错误。
    8253 出现一个解码错误。
    8254 无法识别寻找筛选器。
    8255 一个或多个参数非法。
    8256 不支持指定的方式。
    8257 没有返回结果。
    8258 该服务器不支持该指定的控制。
    8259 客户检测到一个参考循环。
    8260 超过当前的参考限制。
    8301 根目录对象必须是一个命名上下文的头。该根目录对象不能有实例父类。
    8302 不能执行添加副本操作。名称上下文必须可写才能创建副本。
    8303 出现一个对架构中未定义的一个属性的参考。
    8304 超过了一个对象的最大尺寸。
    8305 尝试向目录中添加一个已在使用中的名称的对象。
    8306 尝试添加一个对象,该对象属于那类在架构中没有一个 RDN 定义的类别。
    8307 尝试添加一个使用 RDN 的对象,但该 RDN 不是一个在架构中定义的 RDN 。
    8308 在对象中找不到任何请求的属性。
    8309 用户缓冲区太小。
    8310 在操作中指定的属性不出现在对象上。
    8311 修改操作非法。不允许该修改的某个方面。
    8312 指定的对象太大。
    8313 指定的实例类别无效。
    8314 操作必须在主控 DSA 执行。
    8315 必须指定对象类别属性。
    8316 一个所需的属性丢失。
    8317 尝试修改一个对象,将一个对该类别来讲是非法的属性包括进来。
    8318 在对象上指定的属性已经存在。
    8320 指定的属性不存在或没有值。
    8321 为只有一个值的属性指定了多个值。
    8322 属性值不在接受范围内。
    8323 指定的值已存在。
    8324 由于不存在于对象上,不能删除该属性。
    8325 由于不存在于对象上,不能删除该属性值。
    8326 指定的根对象不能是子参考。
    8327 不允许链接。
    8328 不允许链接的评估。
    8329 由于对象的父类不是未实例化就是被删除了,所以不能执行操作。
    8330 不允许有一个用别名的父类。别名是叶对象。
    8331 对象和父类必须是同一种类,不是都是原件就是 都是副本。
    8332 由于子对象存在,操作不能执行。这个操作只能在叶对象上执行。
    8333 没有找到目录对象。
    8334 别名对象丢失。
    8335 对象名语法不对。
    8336 不允许一个别名参考另一个别名。
    8337 别名不能解除参考。
    8338 操作超出范围。
    8340 不能删除 DSA 对象。
    8341 出现一个目录服务错误。
    8342 操作只能在内部主控 DSA 对象上执行。
    8343 对象必须为 DSA 类别。
    8344 访问权不够不能执行该操作。
    8345 由于父类不在可能的上级列表上,不能添加该对象。
    8346 由于该属性处于“安全帐户管理器” (SAM),不允许访问该属性。
    8347 名称有太多部分。
    8348 名称太长。
    8349 名称值太长。
    8350 目录服务遇到了一个错误分列名称。
    8351 目录服务找不到一个名称的属性种类。
    8352 该名称不能识别一个对象; 该名称识别一个幻象。
    8353 安全描述符太短。
    8354 安全描述符无效。
    8355 为删除的对象创建名称失败。
    8356 一个新子参考的父类必须存在。
    8357 该对象必须是一个命名上下文。
    8358 不允许添加一个不属于系统的属性。
    8359 对象的类别必须是有结构的; 您不能实例化一个抽象的类别。
    8360 找不到架构的对象。
    8361 有这个 GUID (非活动的的或活动的)的本地对象已经存在。
    8362 操作不能在一个后部链接上执行。
    8363 找不到指定的命名上下文的互交参考。
    8364 由于目录服务关闭,操作不能执行。
    8365 目录服务请求无效。
    8366 无法读取角色所有者属性。
    8367 请求的 FSMO 操作失败。不能连接当前的 FSMO 盒。
    8368 不允许跨过一个命名上下文修改 DN。
    8369 由于属于系统,不能修改该属性。
    8370 只有复制器可以执行这个功能。
    8371 指定的类别没有定义。
    8372 指定的类别不是一个子类别。
    8373 名称参考无效。
    8374 交叉参考已经存在。
    8375 不允许删除一个主控交叉参考。
    8376 只在 NC 头上支持子目录树通知。
    8377 通知筛选器太复杂。
    8378 架构更新失败: 重复的 RDN。
    8379 架构更新失败: 重复的 OID。
    8380 架构更新失败: 重复的 MAPI 识别符。
    8381 架构更新失败: 复制架构 id GUID。
    8382 架构更新失败: 重复的 LDAP 显示名称。
    8383 架构更新失败: 范围下部少于范围上部。
    8384 架构更新失败: 语法不匹配。
    8385 架构更新失败: 属性在必须包含中使用。
    8386 架构更新失败: 属性在可能包含中使用。
    8387 架构更新失败: 可能包含中的属性不存在。
    8388 架构更新失败:必须包含中的属性不存在。
    8389 架构更新失败: 在辅助类别列表中的类别不存在或不是一个辅助类别。
    8390 架构更新失败: poss-superior 中的类别不存在。
    8391 架构更新失败: 在 subclassof 列表中的类别不存在或不能满足等级规则。
    8392 架构更新失败: Rdn-Att-Id 语法不对。
    8393 架构更新失败: 类别作为辅助类别使用。
    8394 架构更新失败: 类别作为子类别使用。
    8395 架构更新失败: 类别作为 poss superior 使用。
    8396 架构更新在重新计算验证缓存时失败。
    8397 目录树删除没有完成。要继续删除目录树,必须再次发出请求。
    8398 不能执行请求的删除操作。
    8399 不能读取架构记录管理类别识别符。
    8400 属性架构语法不对。
    8401 不能缓存属性。
    8402 不能缓存类别。
    8403 不能从缓存删除属性。
    8404 无法从缓存中删除类别。
    8405 无法读取特殊名称的属性。
    8406 丢失一个所需的子参考。
    8407 不能检索范例种类属性。
    8408 出现一个内部错误。
    8409 出现一个数据错误。
    8410 丢失一个属性 GOVERNSID。
    8411 丢失一个所需要的属性。
    8412 指定的命名上下文丢失了一个交叉参考。
    8413 出现一个安全检查错误。
    8414 没有加载架构。
    8415 架构分配失败。请检查机器内存是否不足。
    8416 为属性架构获得所需语法失败。
    8417 全局编录验证失败。全局编录无效或不支持操作。目录的某些部分目前无效。
    8418 由于有关服务器之间的架构不匹配,复制操作失败。
    8419 找不到 DSA 对象。
    8420 找不到命名上下文。
    8421 在缓存中找不到命名上下文。
    8422 无法检索子对象。
    8423 由于安全原因不允许修改。
    8424 操作不能替换该隐藏的记录。
    8425 等级无效。
    8426 尝试建立等级表失败。
    8427 目录配置参数在注册中丢失。
    8428 尝试计算地址簿索引失败。
    8429 等级表的分配失败。
    8430 目录服务遇到一个内部失败。
    8431 目录服务遇到一个未知失败。
    8432 根对象需要一个 ‘top’ 类别。
    8433 这个目录服务器已关闭,并且不能接受新上浮单一主机操作角色的所有权。
    8434 目录服务没有必需的配置信息,并且不能决定新上浮单一主机操作角色的所有权。
    8435 该目录服务无法将一个或多个上浮单一主机操作角色传送给其它服务器。
    8436 复制操作失败。
    8437 为这个复制操作指定了一个无效的参数。
    8438 目录服务太忙,现在无法完成这个复制操作。
    8439 为这个复制操作指定的单一名称无效。
    8440 为这一个复制操作所指定的命名上下文无效。
    8441 为这个复制操作指定的单一名称已经存在。
    8442 复制系统遇到一个内部错误。
    8443 复制操作遇到数据库不一致问题。
    8444 不能连接到为这个复制操作指定的服务器上。
    8445 复制操作遇到一个有无效范例类型的对象。
    8446 复制操作无法分配内存。
    8447 复制操作遇到一个邮件系统错误。
    8448 目标服务器的复制参考信息已经存在。
    8449 目标服务器的复制参考信息不存在。
    8450 由于是由另一台服务器上复制的,因此不能删除命名上下文。
    8451 复制操作遇到一个数据库错误。
    8452 命名上下文要被删除或没有从指定的服务器上复制。
    8453 复制访问被拒绝。
    8454 这个版本的目录服务不支持请求的操作。
    8455 取消复制远程过程呼叫。
    8456 源服务器目前拒绝复制请求。
    8457 目标服务器当前拒绝复制请求。
    8458 由于对象名称冲突,复制操作失败。
    8459 复制源已被重新安装。
    8460 由于一个所需父对象丢失,复制操作失败。
    8461 复制操作被抢先。
    8462 由于缺乏更新,放弃复制同步尝试。
    8463 由于系统正在关闭,复制操作被中断了。
    8464 由于目标部分属性设置不是一个源部分属性设置的子设置,复制同步尝试失败。
    8465 由于主复制尝试从部分复制同步,复制同步尝试失败。
    8466 已经与为这个复制操作的指定的服务器联系,但是该服务器无法与完成这个操作所需的另外一个服务器联系。
    8467 在副本安装时,检测到一个使用的源和内部版本之间的架构不匹配,不能安装该副本。
    8468 架构更新失败: 有同一连接标识符的属性已经存在。
    8469 名称翻译: 常见处理错误。
    8470 名称翻译: 不能找到该名称或权限不够,不能看到名称。
    8471 名称翻译: 输入名称映射到多个输出名称。
    8472 名称翻译: 找到输出名称,但是找不到相应的输出格式。
    8473 名称翻译: 不能完全解析,只找到了域。
    8474 名称翻译: 不接到线上,无法在客户机上执行纯粹的语法映射。
    8475 不允许一个构造 att 修改。
    8476 指定的 OM-Object 类别对指定语法的一个属性是不正确的。
    8477 复制请求已暂停; 等待回答。
    8478 要求的操作需要一个目录服务,但没有可用的。
    8479 类别或属性的 LDAP 显示名称含有非 ASCII 字符。
    8480 请求的查找操作只支持基本查找。
    8481 查找未能从数据库检索属性。
    8482 架构更新操作试图添加一个反向链接,但该反向链接没有相应的正向链接。
    8483 跨域移动的来源和目标在对象日期上不一致。或者是来源,或者是目标没有对象的最后一个版本。
    8484 跨域移动的来源和目标在对象当前的名称上不一致。或者是来源,或者是目标没有对象的最后一个版本。
    8485 域间移动的来源和目标是一样的。调用程序应该使用本地移动操作,而不是域间移动操作。
    8486 域间移动的来源和目标与目录林中的命名上下文不一致。来源或目标没有分区容器的最近版本。
    8487 跨域移动的目标不是目标命名上下文的权威。
    8488 跨域移动的来源和目标提供的来源对象的身份不一样。 来源或目标没有来源对象的最近版本。
    8489 跨域移动的对象应该已经被目标服务器删除。来源服务器没有来源对象的最近版本。
    8490 要求对 PDC FSMO 的专门访问权的另一个操作正在进行中。
    8491 跨域移动没有成功,导致被移动对象有两个版本 - 一个在来源域,一个在目标域。需要删除目标对象,将系统还原到一致状态。
    8492 因为不允许这个类别的跨域移动,或者对象有一些特点,如: 信任帐户或防止移动的受限制的 RID;所以不能将该对象跨域移动。
    8493 一旦移动,不能将带有成员身份的对象跨域移动,这会侵犯帐户组的成员身份条件。从帐户组成员身份删除对象,再试一次。
    8494 命名上下文标题必须是另一个命名上下文标题的直接子标题,而不是一个内节点的子标题。
    8495 因为目录没有提议的命名上下文上面的命名上下文的副本,所以无法验证所提议的命名上下文的名称。请保证充当域命名主机的服务器已配置成全局编录服务器,并且服务器及其复制伙伴是最新的。
    8496 目标域必须在本机模式中。
    8497 因为服务器在指定域中没有基础结构容器,所以无法执行操作。
    8498 不允许跨域移动帐户组。
    8499 不允许跨域移动资源组。
    8500 属性的搜索标志无效。ANR 位只在 Unicode 或 Teletex 字符串的属性上有效。
    8501 不允许在将 NC 头作为子体的对象开始删除目录树。
    8502 因为目录树在使用中,目录服务未能为删除目录树而将其锁定。
    8503 删除目录树时,目录服务未能识别要删除的对象列表。
    8505 只有管理员才能修改管理组的成员列表。
    8506 不能改变域控制器帐户的主要组 ID。
    8507 试图修改基础架构。
    8508 不允许进行下列操作: 为现有类别添加新的强制属性;从现有类别删除强制属性;为没有向回链接属性的特殊类别 “Top” 添加可选属性,向回链接属性指的是直接或通过继承。例如: 添加或删除附属类别。
    8509 该域控制器上不允许架构更新。没有设置注册表项,或者 DC 不是架构 FSMO 角色所有者。
    8510 无法在架构容器下创建这个类别的对象。在架构容器下,您只能创建属性架构和类别架构对象。
    8511 副本/子项安装未能获取源 DC 上的架构容器的 objectVersion 属性。架构容器上的属性不存在,或者提供的凭据没有读取属性的权限。
    8512 副本/子项安装未能读取 system32 目录中的文件 schema.ini 的 SCHEMA 段中的 objectVersion 属性。
    8513 指定的组类型无效。
    8514 如果域是安全启用的,在混合型域中不能嵌套全局组。
    8515 如果域是安全启用的,在混合型域中不能嵌套本地组。
    8516 全局组不能将本地组作为成员。
    8517 全局组不能将通用组作为成员。
    8518 通用组不能将本地组作为成员。
    8519 全局组不能有跨域成员。
    8520 本地组不能将另一个跨域本地组作为成员。
    8521 包含主要成员的组不能改变为安全停用的组。
    8522 架构缓冲加载未能转换类架构对象上的字符串默认值 SD。
    8523 只有配置成全局编录服务器的 DSAs 才能充当域命名主机 FSMO 的角色。
    8524 由于 DNS 查找故障,DSA 操作无法进行。
    8525 处理一个对象的 DNS 主机名改动时,服务主要名称数值无法保持同步。
    8526 未能读取安全描述符属性。
    8527 没有找到请求的对象,但找到了具有那个密钥的对象。
    8528 正在添加的链接属性的语法不正确。正向链接只能有语法 2.5.5.1、2.5.5.7 和 2.5.5.14,而反向链接只能有语法 2.5.5.1
    8529 安全帐户管理员需要获得启动密码。
    8530 安全帐户管理员需要从软盘获得启动密钥。
    8531 目录服务无法启动。
    8532 未能启动目录服务。
    8533 客户和服务器之间的连接要求数据包保密性。
    8534 来源域跟目标域不在同一个目录林中。
    8535 目标域必须在目录林中。
    8536 该操作要求启用目标域审核。
    8537 该操作无法为来源域找到 DC。
    8538 来源对象必须是一个组或用户。
    8539 来源对象的 SID 已经在目标目录林中。
    8540 来源对象和目标对象必须属于同一类型。
    8542 在复制请求中不能包括架构信息。
    8543 由于架构不兼容性,无法完成 复制操作。
    8544 由于前一个架构的不兼容性,无法完成复制操作。
    8545 因为源和目标都没有收到有关最近跨域启动操作的信息,所以无法应用复制更新。
    8546 因为还有主控这个域的域控制器,所以无法删除请求的域。
    8547 只能在全局编录服务器上执行请求的操作。
    8548 本地组只能是同一个域中其他本地组的成员。
    8549 外部安全主要成员不能是通用组的成员。
    8550 出于安全,无法将属性复制到 GC。
    8551 由于目前正在处理的修改太多,无法采取 PDC 的检查点。
    8552 操作需要启用那个源域审核。
    8553 安全主要对象仅能在域命名环境菜单中创建。
    8554 服务主要名称(SPN) 无法建造,因为提供的主机名格式不适合。
    8555 筛选器已传递建造的属性。
    8556 unicodePwd 属性值必须括在双引号中。
    8557 您的计算机无法加入域。已超出此域上允许创建的计算机帐户的最大值。请同系统管理员联系,复位或增加此限定值。
    8558 由于安全原因,操作必须在目标 DC 上运行。
    8559 由于安全原因,源 DC 必须是 Service Pack 4 或更新版本。
    8560 在树目录删除的操作中不能删除“关键目录服务系统”对象。数目录删除操作可能只进行了一部分。
    9001 DNS 服务器无法解释格式。
    9002 DNS 服务器失败。
    9003 DNS 名称不存在。
    9004 名称服务器不支持 DNS 请求。
    9005 拒绝 DNS 操作。
    9006 不应该存在的 DNS 名称仍然存在。
    9007 不应该存在的 DNS RR 集仍然存在。
    9008 应该存在的 DNS RR 集不存在。
    9009 DNS 服务器对区域没有权威。
    9010 在更新或 prereq 中的 DNS 名称不在区域中。
    9016 DNS 签名验证失败。
    9017 DNS 不正确密钥。
    9018 DNS 签名验证过期。
    9501 为 DNS 查询找不到记录。
    9502 无效 DNS 包。
    9503 没有 DNS 包。
    9504 DNS 错误,请检查 rcode。
    9505 为保险的 DNS 包。
    9551 无效的 DNS 种类。
    9552 无效的 IP 地址。
    9553 无效的属性。
    9554 稍后再试一次 DNS 操作。
    9555 给出的记录名称和种类不是单一的。
    9556 DNS 名称不符合 RFC 说明。
    9557 DNS 名称是一个完全合格的 DNS 名称。
    9558 DNS 名称以“.”分隔(多标签)。
    9559 DNS 名称是单一部分名称。
    9560 DNS 名称含有无效字符。
    9561 DNS 名称完全是数字的。
    9601 DNS 区域不存在。
    9602 DNS 区域信息无效。
    9603 DNS 区域无效操作。
    9604 无效 DNS 区域配置。
    9605 DNS 区域没有颁发机构记录的开始(SOA)。
    9606 DNS 区域没有“名称服务器” (NS)的记录。
    9607 DNS 区域已锁定。
    9608 DNS 区域创建失败。
    9609 DNS 区域已经存在。
    9610 DNS 自动区域已经存在。
    9611 无效的 DNS 区域种类。
    9612 次要 DNS 区域需要主 IP 地址。
    9613 DNS 区域不是次要的。
    9614 需要一个次要 IP 地址
    9615 WINS 初始化失败。
    9616 需要 WINS 服务器。
    9617 NBTSTAT 初始化呼叫失败。
    9618 颁发机构起始(SOA)删除无效
    9651 主要 DNS 区域需要数据文件。
    9652 DNS 区域的无效数据文件名称。
    9653 为 DNS 区域打开数据文件失败。
    9654 为 DNS 区域写数据文件失败。
    9655 为 DNS 区域读取数据文件时失败。
    9701 DNS 记录不存在。
    9702 DNS 记录格式错误。
    9703 DNS 中节点创建失败。
    9704 未知 DNS 记录类型。
    9705 DNS 记录超时。
    9706 名称不在 DNS 区域。
    9707 检测到 CNAME 循环。
    9708 节点为一个 CNAME DNS 记录。
    9709 指定名称的 CNAME 记录已经存在。
    9710 记录不在 DNS 区域根目录。
    9711 DNS 记录已经存在。
    9712 次要 DNS 区域数据错误。
    9713 不能创建 DNS 缓存数据。
    9714 DNS 名称不存在。
    9715 不能创建指针(PTR)记录。
    9716 DNS 域没有被删除。
    9717 该目录服务无效。
    9718 DNS 区域已经在目录服务中存在。
    9719 DNS 服务器没有为目录服务集合 DNS 区域创建或读取启动文件。
    9751 完成 DNS AXFR (区域复制)。
    9752 DNS 区域复制失败。
    9753 添加了本地 WINS 服务器。
    9801 安全更新呼叫需要继续更新请求。
    9851 TCP/IP 没有安装网络协议。
    9852 没有为本地系统配置 DNS 服务器。
    10004 一个封锁操作被对 WSACancelBlockingCall 的调用中断。
    10009 提供的文件句柄无效。
    10013 以一种访问权限不允许的方式做了一个访问套接字的尝试。
    10014 系统检测到在一个调用中尝试使用指针参数时的无效指针地址。
    10022 提供了一个无效的参数。
    10024 打开的套接字太多。
    10035 无法立即完成一个非阻挡性套接字操作。
    10036 目前正在执行一个阻挡性操作。
    10037 在一个非阻挡套接字上尝试了一个已经在进行的操作。
    10038 在一个非套接字上尝试了一个操作。
    10039 请求的地址在一个套接字中从操作中忽略。
    10040 一个在数据报套接字上发送的消息大于内部消息缓冲器或其它一些网络限制,或该用户用于接收数据报的缓冲器比数据报小。
    10041 在套接字函数调用中指定的一个协议不支持请求的套接字类别的语法。
    10042 在 getsockopt 或 setsockopt 调用中指定的一个未知的、无效的或不受支持的选项或层次。
    10043 请求的协议还没有在系统中配置,或者没有它存在的迹象。
    10044 在这个地址家族中不存在对指定的插槽种类的支持。
    10045 参考的对象种类不支持尝试的操作。
    10046 协议家族尚未配置到系统中或没有它的存在迹象。
    10047 使用了与请求的协议不兼容的地址。
    10048 通常每个套接字地址 (协议/网络地址/端口) 只允许使用一次。
    10049 在其上下文中,该请求的地址无效。
    10050 套接字操作遇到了一个已死的网络。
    10051 向一个无法连接的网络尝试了一个套接字操作。
    10052 当该操作在进行中,由于保持活动的操作检测到一个故障,该连接中断。
    10053 您的主机中的软件放弃了一个已建立的连接。
    10054 远程主机强迫关闭了一个现有的连接。
    10055 由于系统缓冲区空间不足或列队已满,不能执行套接字上的操作。
    10056 在一个已经连接的套接字上做了一个连接请求。
    10057 由于套接字没有连接并且 (当使用一个 sendto 调用发送数据报套接字时) 没有提供地址,发送或接收数据的请求没有被接受。
    10058 由于以前的关闭调用,套接字在那个方向已经关闭,发送或接收数据的请求没有被接受。
    10059 对某个内核对象的引用过多。
    10060 由于连接方在一段时间后没有正确的答复或连接的主机没有反应,连接尝试失败。
    10061 不能做任何连接,因为目标机器积极地拒绝它。
    10062 无法翻译名称。
    10063 名称组件或名称太长。
    10064 由于目标主机坏了,套接字操作失败。
    10065 套接字操作尝试一个无法连接的主机。
    10066 不能删除目录,除非它是空的。
    10067 一个 Windows 套接字操作可能在可以同时使用的应用程序数目上有限制。
    10068 超过限额。
    10069 超过磁盘限额。
    10070 文件句柄引用不再有效。
    10071 项目在本地不可用。
    10091 因为它使用提供网络服务的系统目前无效,WSAStartup 目前不能正常工作。
    10092 不支持请求的 Windows 套接字版本
    10093 应用程序没有调用 WSAStartup,或者 WSAStartup 失败。
    10101 由 WSARecv 或 WSARecvFrom 返回表示远程方面已经开始了关闭步骤。
    10102 WSALookupServiceNext 不能返回更多的结果。
    10103 在处理这个调用时,就开始调用 WSALookupServiceEnd。该调用被删除。
    10104 过程调用无效。
    10105 请求的服务提供程序无效。
    10106 没有加载或初始化请求的服务提供程序。
    10107 从来不应失败的系统调用失败了。
    10108 没有已知的此服务。在指定的名称空间中找不这个服务。
    10109 找不到指定的类别。
    10110 WSALookupServiceNext 不能返回更多的结果。
    10111 在处理这个调用时,就开始调用 WSALookupServiceEnd。该调用被删除。
    10112 由于被拒绝,数据查询失败

    展开全文
  • 数据库学习】数据库总结

    万次阅读 多人点赞 2018-07-26 13:26:41
    1,数据库 1)概念 数据库是长期存储在计算机内、有组织的、可共享的大量数据的集合。 常见数据库管理系统有:Access、mysql、sql server 2)特点 ①数据库数据特点 永久存储、有组织...

    1,概念

    1)数据库

    数据库是长期存储在计算机内、有组织的、可共享的大量数据的集合。
    数据库中存储的是数据及数据之间的关系。

    正常情况读写文件系统比数据库快一到两个数据级;
    数据库的查询,大量并发的时候可能最浪费时间的是connect和close。
    数据库的优势是体现的大量数据的查询、统计以及并发读写,不是在速度上。

    2)数据库数据特点

    永久存储、有组织、可共享。
    (数据的最小存取单位是数据项)

    3)数据库系统的特点

    ①数据结构化

    ②数据的共享性,冗余度,易扩充

    ③数据独立性高

    数据独立性包括:物理独立性和逻辑独立性
    a)物理独立性(外模式\模式映像):
    用户程序不需要了解,应用程序要处理的只是数据的逻辑结构,这样当数据的物理存储改变了,应用程序不用改变。
    b)逻辑独立性(模式\内模式映像):
    逻辑独立性是指用户的应用程序与数据库的逻辑结构是相互独立的,即,当数据的逻辑结构改变时,用户程序也可以不变。
    逻辑数据独立性(logical data independence)是指概念模式改变,外模式和应用程序不变。在逻辑数据独立性里,数据的逻辑结构发生改变或存储关系的选择发生改变时用户不会受到影响。改变概念模式,例如增加和删除实体、增加和删除属性、增加和删除联系,不需要改变现有的外模式或重写应用程序。在DBMS中只需要修改视图的定义和映像来支持逻辑数据独立性。对用户来说,不再关心所做的修改是非常重要的。换句话说,模式经过逻辑重构之后,根据外模式构建的应用程序还是和从前一样工作。

    4)概念模型(E-R模型)

    ①概念

    概念模型的一种表示方法:实体联系方法,用E-R方法(E-R模型)来描述。
    概念模型是用于信息世界的建模,是一种信息模型,与具体的DBMS无关。且能满足用户对数据的处理要求,易于修改。
    概念模型与具体数据模型无关且容易向数据库模型转化。

    实体:举行表示
    属性:椭圆表示,并用直线与实体连接
    联系:菱形表示,用直线与实体连接,同时在边上标上联系的类型(1:1,1:n,m:n)。
    

    一个联系转化为一个关系模式,与该联系相连的各实体的码以及联系的属性转化为关系的属性,该关系的码则有三种情况:
    若联系为1:1,则每个实体的码均是该关系的后选码。
    若联系为1:n,则关系的码为n端实体的码。
    若联系为m:n,则关系的码为诸实体码的组合。

    数据库模式定义语言DDL(Data Definition Language):是用于描述数据库中要存储的现实世界实体的语言。一个数据库模式包含该数据库中所有实体的描述定义。这些定义包括结构定义、操作方法定义等。

    数据库逻辑设计: 将概念设计所得到的概念模型转换为某一具体的数据模型(层次、网状、关系、面向对象).

    5)关系完整性

    在关系模型中,关系完整性主要是指以下三方面:

    实体完整性

    所谓的实体完整性就是指关系(所谓的关系就是表)的主码不能取空值;
    比如学生表的主码通常是取学号为主码

    参照完整性

    是指参照关系中每个元素的外码要么为空(NULL),要么等于被参照关系中某个元素的主码;
    参照关系也称为外键表,被参照关系也称为主键表。

    用户定义的完整性

    指对关系中每个属性的取值作一个限制(或称为约束)的具体定义。比如 性别属性只能取”男“或”女“,再就是年龄的取值范围,可以取值0-130 ,但不能取负数,因为年龄不可能是负数。

    6)关系数据库规范化

    目地:使结构更合理,消除存储异常,使数据冗余尽量小,便于插入、删除和更新。
    原则:遵从概念单一化“一事一地”原则,即一个关系模式描述一个实体或实体间的一种联系。
    规范的实质:概念的单一化。
    规范化的方法:将关系模式投影分解成两个或两个以上的关系模式。

    2,依赖和范式

    1)依赖

    ①部分函数依赖

    设X,Y是关系R的两个属性集合,存在X→Y,若X’是X的真子集,存在X’→Y,则称Y部分函数依赖于X。

        举个例子:通过AB能得出C,通过A也能得出C,通过B也能得出C,那么说C部分依赖于AB。
    

    ②完全函数依赖

    设X,Y是关系R的两个属性集合,X’是X的真子集,存在X→Y,但对每一个X’都有X’!→Y,则称Y完全函数依赖于X。

        举个例子:通过AB能得出C,但是AB单独得不出C,那么说C完全依赖于AB.
    

    ③传递函数依赖

    设X,Y,Z是关系R中互不相同的属性集合,存在X→Y(Y !→X),Y→Z,则称Z传递函数依赖于X。

        举个例子:通过A得到B,通过B得到C,但是C得不到B,B得不到A,那么成C传递依赖于A
    

    ④多值依赖

    设R(U)是属性集U上的一个关系模式。X,Y,Z是U的子集,并且Z=U-X-Y。关系模式R(U)中多值依赖X→→Y成立,当且仅当对R(U)的任一关系r,给定的一对(x,z)值有一组Y的值,这组值仅仅决定于x值而与z值无关。

    举例:
    有这样一个关系 <仓库管理员,仓库号,库存产品号> ,假设一个产品只能放到一个仓库中,但是一个仓库可以有若干管理员,那么对应于一个 <仓库管理员,库存产品号>有一个仓库号,而实际上,这个仓库号只与库存产品号有关,与管理员无关,就说这是多值依赖。

    2)范式

    各个范式联系:
    5NF⊂4NF⊂BCNF⊂3NF⊂2NF⊂1NF

    ①1NF(满足最低要求的范式:字段不可再分,原子性)

    如果一个关系模式R的所有属性都是不可分的基本数据项,则R∈1NF。
    自我理解1NF就是无重复的列。
    如:(X1,X2)→X3,X2→X3 其中x3对x2部分依赖
    如:(X1,X2)→X3,X2→X4 其中有非主属性X4部分依赖于候选键{X1,X2},所以这个关系模式不为第二范式;又因为范式之间的关系满足1NF⊇2NF⊇3NF ⊇ BCNF,所以是第一范式。

    ②2NF(消除部分子函数依赖:一个表只能说明一个事物)

    若R∈1NF,且每一个非主属性完全函数依赖于码,则R∈2NF。
    即要求数据库表中的每个实例或行必须可以被唯一地区分。

    ③3NF(消除传递依赖,即消除非主属性对键的传递依赖:每列都与主键有直接关系,不存在传递依赖。任何非主属性不依赖于其它非主属性。)

    若R∈3NF,则每一个非主属性既不部分依赖于码,也不传递依赖于码。
    自我理解是:表中所有的数据元素不但要能唯一地被主键所标识,而且他们之间还必须相互独立,不存在其他的函数关系。

    ④BCNF(修正第三范式、扩充第三范式 消除主属性对键的传递依赖)

    所有非主属性对每一个码都是完全函数依赖;
    所有主属性对每一个不包含它的码,也是完全函数依赖;
    没有任何属性完全函数依赖于非码的任何一组属性。

    ⑤4NF

    关系模式R<U,F>∈1NF,如果对于R的每个非平凡多值依赖X->->Y(Y∉X),X都含有码,则称R<U,F>∈4NF

    3,数据库平台

    数据库管理系统(DBMS):是系统软件,是数据库系统的核心。
    常见数据库管理系统有:Access、mysql、sql server

    4,数据库语句

    SQL 语言是非过程化的语言,易学习。
    SQL语言具有两种使用方式:一种是在终端交互方式下使用,称为交互式SQL; 另一种是嵌入在高级语言的程序中使用,称为嵌入式SQL,而这些高级语言可以是C、PASCAL、COBOL等,称为宿主语言。

    1)基本对象

    关系数据库系统支持 三级模式结构,其概念模式、外模式和内模式中的基本对象有表、视图和索引。
    三级模式结构有效地组织、管理数据,提高了数据库的逻辑独立性和物理独立性。使数据库达到了数据独立性。

    ①模式(schema,逻辑模式)

    A.概念

    是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。是数据库系统模式结构的中间层,即不涉及数据的物理存储细节和硬件环境,也与具体的应用程序、开发工具及高级设计语言无关。
    模式是数据库数据在逻辑级上的视图,一个数据库只有一个模式。

    也用于区分一个 大项目中的各个小项目,这样若有相同名字的表的话, 不同模式不会发生冲突。相当于编程时的命名空间。
    如:
    一个公司的系统,分2个子系统,分别为财务系统和人力资源系统.
    这2个子系统, 共用一个数据库。
    那么 财务系统的表, 可以放在财务的模式(schema).
    人力资源系统的表,放在人力资源系统的模式里面。
    这2个子系统,能够互相访问对方的表。
    但是又不因为 表重名 的问题,影响对方。

    B.访问

    访问具体的一个表,可以由 4个部分组成
    分别为 服务器名, 数据库名,模式名,表名。

    对于访问本地的数据库:
    不指定模式名的话, 数据库默认使用dbo模式。
    (DBO是每个数据库的默认用户,具有所有者权限,即DbOwner )
    pg不指定模式的话默认使用public模式。

    C.操作

    --创建
    CREATE SCHEMA schema_name;
    

    ②外模式(子模式,用户模式)

    是数据库用户能够看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图,是与某一应用有关的数据的逻辑表示。
    外模式通常是模式的子集,一个数据库可以有多个外模式,但一个应用程序只能有一个外模式。
    外模式是保证数据库安全性的一个有力措施:用户只能访问外模式的数据,其余数据不可见。

    ③内模式(存储模式)

    一个数据库只有一个内模式。
    内模式是数据物理结构和存储方式的描述,是数据在数据库内部的表示方式。

    数据库管理系统在三级模式之间提供了两层映像:
    外模式/模式映像(保证数据的逻辑独立性)
    模式/内模式映像(保证了物理独立性)

    ④表

    表分为临时表和永久表。

    临时表

    临时表存储在tempdb中(如下),当不再使用时会自动删除。

    IF OBJECT_ID('tempdb..#ownerAnnouce') IS NOT NULL
    

    根据进程独立,只有进程的拥有者有表的访问权限,其它用户不能访问该表;
    不同的用户进程,创建的临时表虽然“名字”相同,但是这些表之间相互并不存在任何关系;在SQLSERVER中,通过特别的命名机制保证临时表的进程独立性。

    临时表有两种类型:本地和全局。

    A.本地临时表

    名称以单个数字符号 (#) 打头;它们仅对当前的用户连接是可见的;当用户从 SQL Server 实例断开连接时被删除。

    B.全局临时表

    名称以两个数字符号 (##) 打头,创建后对任何用户都是可见的,当所有引用该表的用户从 SQL Server 断开连接时被删除。

    临时表优点

    真正的临时表利用了数据库临时表空间,由数据库系统自动进行维护,因此节省了表空间。并且由于临时表空间一般利用虚拟内存,大大减少了硬盘的I/O次数,因此也提高了系统效率。

    临时表的创建

    A. create table #临时表名
    B.select * into #临时表名 from 表名(永久表或临时表)

    ⑤视图

    A.概念

    视图是一张虚拟表,视图的字段是自定义的,视图只支持查询,查询数据来源于实体表。

    一般视图是只读的,在pg中通过添加规则可以进行视图的更新。从pg9.1开始,用户可以通过INSTEAD OF的触发器来实现视图更新。

    B.优缺点

    • 优点
      视图可以将多个复杂关联表提取信息,方便查询,但不能优化查询速度(调用视图查询时才进行动态检索数据)。
      即,如果你认为一个sql查询非常慢,为了优化它的速度把它建立成视图,这是不可取的,视图是每次调用的时候生成,并不是数据源变化就刷新数据,并不能提高检索效率。
    • 缺点
      视图就是临时表,即调即用,如果数据源没有任何变化,在反复调用中,临时表会缓存到内存中(SHOW STATUS LIKE ‘Qcache%’;),视图中不能创建索引,但视图可以基于索引生成 。

    C.场景

    1. 重用SQL语句;
    2. 简化复杂SQL操作(生成视图),重用查询且不需要知道基本查询细节。
    3. 保护数据。用户有表的部分权限。
    4. 更改数据格式和表示。视图可返回与底层表不同的表示和格式。

    D.操作

    --创建视图
    CREATE OR REPLACE VIEW view_name(studentName, studentAge)  --(studentName, studentAge) 可以去掉,加上是重命名列名
    AS 
    SELECT user_info.name, user_info.age from user_info;
    
    --删除视图
    DROP VIEW view_name;
    

    ⑥实体视图

    相对于普通的视图来说,实体化视图的不同之处在于实体化视图管理存储数据,占据数据库的物理空间。

    实体化视图的结果会保存在一个普通的数据表中,在对实体化视图进行查询的时候不再会对创建实体化视图的基表进行查询,而是直接查询实体化视图对应的结果表,然后通过定期的刷新机制来更新实体化视图表中的数据。

    demo

    -- 创建物化视图
    CREATE MATERIALIZED VIEW MAX_ID_MVIEW 
    AS
      SELECT PART_ID, MAX(ID)  MAX_ID
      FROM PART_DETAIL GROUP BY PART_ID;
      
    -- 如果刷新时不带CONCURRENTLY则无需创建唯一索引
    CREATE UNIQUE INDEX IDX_MAX_ID ON MAX_ID_MVIEW(PART_ID);
    
    -- 利用watch命令每120s刷新一次物化视图
    REFRESH MATERIALIZED VIEW CONCURRENTLY MAX_ID_MVIEW; \watch 120
    

    作用

    1. 减轻网络负担:通过实体化视图将数据从一个数据库分发到多个不同的数据库上,通过对多个数据库访问来减轻对单个数据库的网络负担。
    2. 搭建分发环境:通过从一个中央数据库将数据分发到多个节点数据库,达到分发数据的目的。
    3. 复制数据子集:实体化视图可以进行行级/列级的筛选,这样可以复制需要的那一部分数据。
    4. 实体化视图是用于汇总,预计算,复制或分发数据的对象, 在大型的数据库中使用它可以提高涉及到的SUM,COUNT,AVG,MIN,MAX等的表的查询的速度。
    5. 物化视图的快速刷新采用了增量的机制,在刷新时,只针对基表上发生变化的数据进行刷新。因此快速刷新是物化视图刷新方式的首选。

    ⑦索引

    为了改变数据库的性能和可访问性所增加的一组辅助性数据。
    详细介绍见下文。

    2)数据结构创建及修改

    1>数据库操作

    --查看数据库
    show databases;
    --建库
    create database children;
    --删库
    drop database children;
    --调用数据库
    use children;
    

    2>表操作

    --pg建表
    CREATE TABLE if not exists public.stu_info(   --创建public模式下的表
        FOREIGN KEY (ID) REFERENCES people_info (ID),  --单个外键,一般情况下不建议增加这种强约束
        id int8 PRIMARY KEY,    --系统会自动为主键创建一个隐含的索引  primary key(Sno,Cno)组合主键
        address VARCHAR (255) UNIQUE NOT NULL,
        birthday TIMESTAMP NOT NULL,  
        age int default 15,  --默认值,影响后续插入值。但对旧数据没有影响。
       CONSTRAINT student2_pkey PRIMARY KEY (id),
       CONSTRAINT ck_age CHECK(age<18), --检查约束,约束某些字段需要满足的要求。NULL被认为满足条件。
       CONSTRAINT uk_tbl_unique_a_b unique(id ,address) --唯一约束。唯一键中可以写入任意多个NULL!即可以存在多组 1,null  
    )
    WITH (
      OIDS=FALSE
    );
    ALTER TABLE myschema.tb_test
      OWNER TO postgres;
    
    --重命名表
    alter table tableName RENAME TO newName;--pg
    

    i>指定默认值

    一般用于数据预置或create_time、update_time的自动录入。各个DBMS获得系统日期如下:

    DBMS函数/变量
    AccessNOW()
    DB2CURRENT_DATE
    MySQLCURRENT_DATE()
    OracleSYSDATE
    PostgreSQLCURRENT_DATE
    SQL ServerGETDATE()
    SQLitedate(‘now’)
    --修改默认值
    alter table tableName alter column age set DEFAULT 15;--pg
    --删除默认值
    alter table tableName alter column age drop DEFAULT 15;--pg
    

    ii>表约束

    表约束有:主键、外键、检查约束、唯一约束、非NULL约束。

    --添加主键(有些DBMS不允许在建表之后修改主键)
    ALTER TABLE tableName ADD PRIMARY KEY(fieldName) ; --fieldName在库中不能有重复数据
    --增加约束
    alter table tableName add check (age<16);--pg 增加检查约束,约束名为:tableName_age_check
    alter table tableName add constraint uk_tbl_unique_a_b unique (a,b);--pg 增加唯一约束
    alter table tableName alter column fieldName set NOT NULL;--pg 增加非空约束
    --删除约束
    alter table tableName drop constraint constraintName;--pg 根据约束名删除检查约束、唯一约束
    alter table tableName alter column fieldName drop NOT NULL;--pg 删除非空约束(非空约束没有约束名)
    

    iii>修改表字段

    --增加列\添加一个字段
    alter table tableName add column columnName varchar(30) default 'a' not null; --column 可加可不加
    --删除列(会连同字段上的约束一并删除)
    alter table tableName drop column columnName; --column 可加可不加
    --修改列名:
    alter table tableName rename column fieldName TO fieldNameNew;--pg、oracle中
    exec sp_rename '[表名].[列名]‘,’[表名].[新列名]'--在sqlserver
    ALTER TABLE 表名 CHANGE 列名 新列名 列类型--mysql
    
    --修改字段类型或长度:
    alter table tableName modify column 字段名 类型;
    alter table tableName alter column fieldName TYPE text;--pg修改字段数据类型。仅在当前数据都可以隐式转换为新类型时才可以执行成功
    --将NAME最大列宽增加到10个字符
    ALTER TABLE CARD ALTER COLUMN NAME varchar(10) 
    
    

    3)数据查询

    数据库处理一个查询的步骤:
    客户端连接->查询缓存->解析器->预处理器->查询优化器->查询执行引擎->数据

    1. 客户端发送一条查询给服务器;
    2. 服务器先会检查查询缓存query cache,如果命中了缓存,则立即返回存储在缓存中的结果。否则进入下一阶段;
    3. 服务器端进行SQL解析parsing、预处理transition,再由优化器optimization生成对应的执行计划;
    4. 根据优化器生成的执行计划,调用存储引擎的API来执行分布distribution查询;
    5. 将结果返回给客户端。
    

    1>简单查询

    select * from student;
    select 1+2; #当表达式与表列无关时,在pg和mysql中不适用“from tableName”
    

    拼接查询:
    Access和 SQL Server使用 + 号。DB2、Oracle、PostgreSQL、SQLite和Open Office Base 使用 ||。

    select label || '_' || id from user_info;  --结果:abc_1
    

    2>条件查询

    功能表达举例备注
    等于=
    不等于<>!=
    空值is null,is not nullselect * from student where class is not null;
    确定集合,ininnot inselect * from student where age not in(21,23);在sql标准中仅支持100个以内的占位符作为查询参数。根据数据库不同,对in的参数和长度有不同的限制,否则会直接报错。
    确定范围between and , not between and
    模糊查询like ,not likeselect * from student where name like '%丽%';’ %代表任意长度(可为0)的字符串;_(下划线):代表任意单个字符。(汉字代表2个字符,所以一个汉字用两个下划线);\为转义字符

    select出的别名是否可以作为where查询条件?不能,因为执行计划中where在selectz之前。如:select label a from asset_field where a = '分类'

    3>排序查询

    非排序查询的数据顺序:pg默认返回数据的顺序是插入表的数据顺序。

    # 单个排序:
    select name,age from student order by age desc; # 默认为asc:升序排列。desc:降序排序。
    
    #多重排序:
    order by 字段5,字段6 asc  //先按字段5排序,再按字段6排序
    

    4>case when then查询

    --简单case函数
    case sex
      when '1' then '男'
      when '2' then '女’
      else '其他' end
    --case搜索函数
    case when sex = '1' then ''
         when sex = '2' then ''
         else '其他' end  
    

    应用:

    select (case sex
    		  when '1' then '男'
    		  when '2' then '女’
    		  else '其他' end)sex from student where class = 11;
    

    5>where、group by、having

    大部分的where都可以背having代替,不同的是where过滤行,而having过滤分组,用在group by之后。(where在分组前过滤,having在分组后过滤)

    select class,avg(age) as age from student 
    group by class 
    having avg(age)>23 /*要求平均年龄大于23*/
    

    where肯定在group by 之前
    where后的条件表达式里不允许使用聚合函数,而having可以。

    6> 函数

    聚合函数

    avg平均数,同min(age)、max(age)、sum(age)

    select avg(age)  as age from student group by class order by age desc; 
    

    count

    select count(class)from student;
    /*数量 因为使用了92标准,所以null不计入count*/
    count(*) 跟count(1) 的结果一样,返回记录的总行数,都包括对NULL 的统计,
    count(column) 是不包括NULL 的统计。
    

    distinct

    select distinct(class)from student;/*去重复,出现所有不同的内容*/
    select count(distinct(class)) from student;
    

    其它

    LEFT(“123456789”,LEN(“数据库”))/*分两步运算,第一步是运算LEN函数,结果是3。第二步针对123456789这个字符从左边开始连续取三个数*/
    
    select top 100 * from student where no=11;/*显示前100行*/
    select isnull(name,'无') as name,age,class from student;/*isnull之后就无列名了 用as给列重命名*/
    select name,age,class,'the name is' + name as introduce from student;/*用加号形成一个自定义列*/
    

    7>SQL-92 规则

    是数据库的一个标准。以下代码 写在存储过程前面,表示遵从SQL-92 规则。
    SQL-92 标准要求在对空值进行等于 (=) 或不等于 (<) 比较时取值为 FALSE。

    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    

    SET ANSI_NULLS ON
    即使 column_name 中包含空值,使用 WHERE column_name = NULL 的 SELECT 语句仍返回零行。
    即使 column_name 中包含非空值,使用 WHERE column_name < NULL 的 SELECT 语句仍会返回零行。

    SET QUOTED_IDENTIFIER ON
    为ON:标识符可以由双引号分隔,而文字必须由单引号分隔。
    为OFF:标识符不可加引号。

    8>多层查询 EXISTS

    如果内层查询语句查询到符合条件的记录,就返回一个真值(true),否则,将返回
    一个假值(false)。

    SELECT * FROM employee
    WHERE EXISTS
    (SELECT d_name FROM department WHERE d_id=1003);
    

    同理还有:NOT EXISTS。

    9>关联查询、联结(JOIN)表

    关系数据库设计中表的设计是把信息分解成多个表,一类数据一个表,各表通过某些共同的值相互关联。
    一般情况下我们不建议建立外键这种强关联的关联信息。

    可伸缩(scale)
    能够适应不断增加的工作量而不失败。关系数据库的可伸缩性远远优于非关系数据库。

    注意:

    1. 联结的表越多效率越低。
    2. SQL本身不限制联结表的数目,但DBMS有最大数目限制。
    3. 一般情况下,联结查询比子查询快,实际应用中应该尝试两种方法看哪种快。
    JSON类型说明备注
    JOIN如果表中有至少一个匹配,则返回行INNER已省略。外联结比内联结返回的行数多(还包括没有关联的行)
    LEFT JOIN即使右表中没有匹配,也从左表返回所有的行OUTER已省略
    RIGHT JOIN即使左表中没有匹配,也从右表返回所有的行OUTER已省略
    FULL JOIN只要其中一个表中存在匹配,就返回行OUTER已省略

    luo_persons表:

    id_plast_namefirst_nameaddresscity

    luo_orders表:

    id_oorder_noid_p

    要求输出:谁订购了产品,并且他们订购了什么产品?

    ①联表查询(等值联结,equijoin)

    SELECT
    	a.last_name, a.first_name, b.order_no
    FROM
    	luo_persons a,
    	luo_orders b 
    WHERE
    	a.id_p = b.id_p	
    

    ②join查询(内联结,inner join, 推荐)

    /*(推荐)等值联结明确指定联结类型可转换为inner join

    SELECT
    	last_name,
    	first_name,
    	order_no 
    FROM
    	luo_persons
    	INNER JOIN luo_orders ON luo_persons.id_p = luo_orders.id_p
    

    ③union查询(复合查询、并查询)

    UNION 操作符用于合并两个或多个 SELECT 语句的结果集。

    注意:

    1. UNION 内部的 SELECT 语句必须拥有相同数量的列、表达式或聚集函数。列也必须拥有相似的数据类型(可以不完全相同,但是可以互相转换)。同时,每条 SELECT 语句中的列的顺序必须相同。
    2. 默认地,UNION 操作符选取不同的值。如果允许重复的值,请使用 UNION ALL。
    3. UNION能组合的最大语句数目限制需要查询具体的DBMS文档。
    	select id_p from luo_persons 
    	union 
    	SELECT id_p from luo_orders
    

    某些DBMS中还支持其它类型的UNION:

    1. EXCEPT(或MINUS):检索在第一个表中存在而在第二个表中不存在的行;
    2. INTERSECT:检索两个表中都存在的行。

    4)数据更新

    ①数据插入

    i> insert

    insert into tableName(no,name) values'1','kate');
    --按表中列的顺序,但如果表结构发生了变化那么对应 sql也要改。不推荐
    insert into product values('001','001','N','N');
    

    有自增长主键(id)的插入:
    i>可以把id的值设置为null或者0,这样mysql会自己做处理
    ii>手动指定需要插入的列,不插入这一个字段的数据!

    ii> insert select

    将select结果插入表中,一般用于可重复执行的sql。
    注:
    1.insert select语句中,如果select返回多行,那么会insert多行数据。

    INSERT INTO "public"."vendors"("vend_name", "vend_id") select 'vend_name1', 1 
    WHERE NOT EXISTS (select 1  FROM "public"."vendors" WHERE vend_id = 1);
    

    iii> select into

    1. SELECT INTO 语句从一个表中选取数据,然后把数据插入另一个表中。
    2. SELECT INTO 语句常用于创建表的备份复件或者用于对记录进行存档。
    3. select into 可以从多个表中检索数据,但只能插入到一个表中。

    函数里面,把一个查询出来的值存入临时变量:

    SELECT LastName,FirstName
    INTO _lName,_fName  FROM Persons
    

    也可以存入临时表中:

    SELECT *
    INTO Persons_backup
    FROM Persons
    

    ②数据修改

    update tableName set name = 'Tom' where name='kate';
    update tableName set age = age + 1;
    

    5)数据删除

    删除表中几行:

    DELETE FROM Person WHERE LastName = 'Wilson' 
    

    删除表中所有行,保留表、不释放空间。所删除的每行记录都会进日志,可以回滚。

    DELETE FROM table_name
    

    删除表:删除内容和定义,释放空间

    drop table user;    
    DROP TABLE IF EXISTS "public"."role_relation"; 可重复执行sql
    

    删除表中所有数据,保留表、同时释放空间(速度比delete快,但是无法撤回,日志里面只记录页释放):

    truncate table book;
    

    truncate是DDL语句(Data Definition,数据定义语句),相当于用重新定义一个新表的方法把原表的内容直接丢弃了,所以执行起来很快。delete语句是DML语句(Data Manipulation,数据操作语句),把数据一条一条的删除,所以删除多行数据执行较慢。

    6)其他注意

    ①加中括号

    列名、表名、存储过程名、函数名等都可以按需要加中括号。防止某些关键字在应用中引起歧义。

    select [select] from 表名;
    

    7)数据库授权

    ①授权GRANT

        GRANT <权限>
        ON <对象类型>  <对象名>
        TO <用户>
        [WITH GRANT OPTION]  // 如果指定了WITH GRANT OPTION子句,则获得某种权限的用户还可以把这种权限再授予其他用户,允许用户传递权限,但是不允许循环授权。
    

    举例:

    例1:把查询Student表的权限授给用户U1
    GRANT SELECT
    ON TABLE Student
    TO U1;
    
    例2:把全部操作权限授予用户U2和U3
    GRANT ALL PRIVILEGES
    ON TABLE Student,Course
    TO U2,U3;
    
    例3:把查询权限授予所有用户
    GRANT SELECT
    ON TABLE SC
    TO PUBLIC;
    

    ③权限的收回 REVOKE

    REVOKE <权限>
    ON <对象类型>  <对象名>
    FROM <用户>
    

    举例:

    例6:收回所有用户对表sc的查询权限
    REVOKE SELECT
    ON TABLE SC
    FROM PUBLIC;
    

    ③对用户模式的授权

    由DBA(数据库管理员,Database Administrator,简称DBA)在创建用户时实现。

    CREATE USER <username>
    [WITH] [DBA|RESOURCE|CONNECT]
    

    只有系统的超级用户才有权创建一个新的数据库用户
    新创建的用户有三种权限:DB,|RESOURCE,CONNECT

    ④数据库角色创建及授权

    CREATE ROLE <角色名>
    

    给角色授权:

    GRANT <权限>
    ON <对象类型>  对象名
    TO <角色>
    

    将一个角色授予其他的角色或用户

    GRANT <角色1>
    TO <角色3>
    [WITH ADMIN OPTION]//如果指定了WITH ADMIN OPTION 子句,则获得某种权限的角色或用户还可以把这种权限再授予其他角色
    

    角色权限的收回

    REVOKE <权限>
    ON <对象类型>  <对象名>
    FROM <角色>
    

    ⑤DENY 拒绝账户访问

    在安全系统中创建一项,以拒绝给当前数据库内的安全帐户授予权限并防止安全帐户通过其组或角色成员资格继承权限。

    DENY { ALL | statement [ ,...n ] }
    TO security_account [ ,...n ]
    

    和授权区别:
    不授权是没有权限,但是如果这个用户属于某个角色,这个角色有了权限,那么这个用户可以从角色继承这个权限。如果选择了deny,即使这个用户属于某个具有权限的角色,他也没有权限。

    8)数据类型

    ①uniqueidentifier

    可存储16字节的二进制值,其作用与全局唯一标记符(GUID)一样。GUID是唯一的二进制数:世界上的任何两台计算机都不会生成重复的GUID值。GUID主要用于在用于多个节点,多台计算机的网络中,分配必须具有唯一性的标识符。

    9)函数

    ①OBJECT_ID

    A. 返回指定对象的对象 ID

    USE master;
    GO
    SELECT OBJECT_ID(N'AdventureWorks.Production.WorkOrder') AS 'Object ID';
    GO
    

    B. 验证对象是否存在

    USE AdventureWorks;
    GO
    IF OBJECT_ID (N'dbo.AWBuildVersion', N'U') IS NOT NULL
    DROP TABLE dbo.AWBuildVersion;
    GO
    

    N是显式的将非unicode字符转成unicode字符,它来自 SQL-92 标准中的 National(Unicode)数据类型,用于扩展和标准化,在这里可以不用,写作object_id(PerPersonData)。

    10)SQL中的借书经典案例

    ①问题描述

    本题用到下面三个关系表:
    CARD 借书卡。 CNO 卡号,NAME 姓名,CLASS 班级
    BOOKS 图书。 BNO 书号,BNAME 书名, AUTHOR 作者,PRICE 单价,QUANTITY 库存册数
    BORROW 借书记录。 CNO 借书卡号,BNO 书号,RDATE 还书日期

    备注:限定每人每种书只能借一本;库存册数随借书、还书而改变。

    要求1. 写出建立BORROW表的SQL语句,要求定义主码完整性约束和引用完整性约束。

    CREATE TABLE BORROW(
        CNO int FOREIGN KEY REFERENCES CARD(CNO),
        BNO int FOREIGN KEY REFERENCES BOOKS(BNO),
        RDATE datetime,
        PRIMARY KEY(CNO,BNO)) 
    

    要求2. 找出借书超过5本的读者,输出借书卡号及所借图书册数。

    SELECT CNO,借图书册数=COUNT(*)
    FROM BORROW
    GROUP BY CNO
    HAVING COUNT(*)>5
    

    要求3. 查询借阅了"水浒"一书的读者,输出姓名及班级

    CARD 借书卡。 CNO 卡号,NAME 姓名,CLASS 班级
    BOOKS 图书。 BNO 书号,BNAME 书名, AUTHOR 作者,PRICE 单价,QUANTITY 库存册数
    BORROW 借书记录。 CNO 借书卡号,BNO 书号,RDATE 还书日期

    SELECT * FROM CARD c
    WHERE EXISTS(
        SELECT * FROM BORROW a,BOOKS b 
        WHERE a.BNO=b.BNO
            AND b.BNAME=N'水浒'
            AND a.CNO=c.CNO) 
    

    要求4. 查询过期未还图书,输出借阅者(卡号)、书号及还书日期。

    SELECT * FROM BORROW 
    WHERE RDATE<GETDATE() 
    

    要求5. 查询书名包括"网络"关键词的图书,输出书号、书名、作者。

    SELECT BNO,BNAME,AUTHOR FROM BOOKS
    WHERE BNAME LIKE N'%网络%' 
    

    N’string’ 表示string是个Unicode字符串

    要求6. 查询现有图书中价格最高的图书,输出书名及作者。

    SELECT BNO,BNAME,AUTHOR FROM BOOKS
    WHERE PRICE=(
        SELECT MAX(PRICE) FROM BOOKS) 
    

    要求7. 查询当前借了"计算方法"但没有借"计算方法习题集"的读者,输出其借书卡号,并按卡号降序排序输出。

    SELECT a.CNO
    FROM BORROW a,BOOKS b
    WHERE a.BNO=b.BNO AND b.BNAME=N'计算方法'
        AND NOT EXISTS(
            SELECT * FROM BORROW aa,BOOKS bb
            WHERE aa.BNO=bb.BNO
                AND bb.BNAME=N'计算方法习题集'
                AND aa.CNO=a.CNO)
    ORDER BY a.CNO DESC 
    

    要求8. 将"C01"班同学所借图书的还期都延长一周。

    UPDATE b SET RDATE=DATEADD(Day,7,b.RDATE)
    FROM CARD a,BORROW b
    WHERE a.CNO=b.CNO
        AND a.CLASS=N'C01' 
    
    DATEADD(datepart,number,date)  
    date 参数是合法的日期表达式。number 是您希望添加的间隔数;对于未来的时间,此数是正数,对于过去的时间,此数是负数。
    

    要求9. 从BOOKS表中删除当前无人借阅的图书记录。

    DELETE FROM BOOKS a
    WHERE NOT EXISTS(
        SELECT * FROM BORROW
        WHERE BNO=a.BNO) 
    

    要求11.在BORROW表上建立一个触发器,完成如下功能:如果读者借阅的书名是"数据库技术及应用",就将该读者的借阅记录保存在BORROW_SAVE表中(注ORROW_SAVE表结构同BORROW表)。

    CREATE TRIGGER TR_SAVE ON BORROW
    FOR INSERT,UPDATE
    AS
    IF @@ROWCOUNT>0
    INSERT BORROW_SAVE SELECT i.*
    FROM INSERTED i,BOOKS b
    WHERE i.BNO=b.BNO
        AND b.BNAME=N'数据库技术及应用' 
    

    要求13.查询当前同时借有"计算方法"和"组合数学"两本书的读者,输出其借书卡号,并按卡号升序排序输出。

    SELECT a.CNO
    FROM BORROW a,BOOKS b
    WHERE a.BNO=b.BNO
        AND b.BNAME IN(N'计算方法',N'组合数学')
    GROUP BY a.CNO
    HAVING COUNT(*)=2
    ORDER BY a.CNO DESC
    

    5,索引

    6,关系运算

    1)集合运算符

    并(∪)、差(-)、交(∩)、笛卡尔积(×)

    笛卡尔积(直积):表示为X × Y,第一个对象是X的成员而第二个对象是Y的所有可能有序对的其中一个成员。
    例如,A={a,b}, B={0,1,2},则
    A×B={(a, 0), (a, 1), (a, 2), (b, 0), (b, 1), (b, 2)}
    

    2)专门的关系运算符

    ①选择(限制、σ)

    在关系R中选择满足给定条件的诸元组。

    ②投影(π)

    关系R上的投影是从R中选择出若干属性列组成新的关系。
    这里写图片描述
    投影之后可既改变行,又改变元组的数量。

    ③连接(θ连接、⋈)

    从两个关系的笛卡尔积中选取属性间满足一定条件的元组。(连接由乘积(笛卡尔积)、选择、投影组成)
    分为等值连接(=)、自然连接(要求比较的分量是相同的属性组,并在结果中把重复的属性列去掉)。
    这里写图片描述

    ④除运算(➗)

    RS÷S的意义就是:“在R和S的联系RS中,找出与S中所有的元组有关系的R元组”。

    3)算术比较符

    4)逻辑运算符

    非与或

    7,数据库完整性

    1)实体完整性

    主键唯一且不为空。

    2)参照完整性

    不允许修改外码
    级连操作:当删除或修改被参照表时,同时删除或修改参照表中的不一致元祖。

    3)用户定义的完整性

    4)触发器(Trigger)

    是用户定义在关系表上的一类由事件驱动的特殊过程。一旦定义,任何用户对标的增删改操作均由服务器自动激活相应触发器,在DBMS核心层进行集中的完整性控制。

    8,存储过程(Stored Procedure)

    1)概念

    存储过程是一组为了完成特定功能的SQL 语句集,存储在数据库中,经过第一次编译后再次调用不需要再次编译,用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它。

    2)优点

    ①执行效率高

    存储过程因为SQL 语句已经预编译过了,因此运行的速度比较快。

    ②降低了客户机和服务器之间的通信

    存储过程在服务器端运行,减少客户端的压力。
    减少网络流量,客户端调用存储过程只需要传存储过程名和相关参数即可,与传输SQL 语句相比自然数据量少了很多。

    ③方便实施企业规则(提高了可维护性、安全性)

    可以把企业规则的运算程序写成存储过程放入数据库服务器中,由RDBMS管理,既有利于集中控制,又能够方便地进行维护。
    当用户规则发生变化时,只要修改存储过程,无须修改其他应用程序。

    允许模块化程序设计,就是说只需要创建一次过程,以后在程序中就可以调用该过程任意次,类似方法的复用。
    增强了使用的安全性,充分利用系统管理员可以对执行的某一个存储过程进行权限限制,从而能够实现对某些数据访问的限制,避免非授权用户对数据的访问,保证数据的安全。程序员直接调用存储过程,根本不知道表结构是什么,有什么字段,没有直接暴露表名以及字段名给程序员。

    ④安全性高

    可设定只有某些用户才具有对指定存储过程的使用权。

    3)缺点

    调试麻烦(至少没有像开发程序那样容易),可移植性不灵活(因为存储过程是依赖于具体的数据库)。

    4)场景

    当一个事务涉及到多个SQL语句时或者涉及到对多个表的操作时就要考虑用存储过程;
    当在一个事务的完成需要很复杂的商业逻辑时(比如,对多个数据的操作,对多个状态的判断更改等)要考虑;还有就是比较复杂的统计和汇总也要考虑,但是过多的使用存储过程会降低系统的移植性。

    sql尽量放在存储过程中。
    面对大量数据,用orcle比sql server稳定。

    5)代码

    ①创建

    use test1
    set ansi_nulls on
    go
    set quoted_identifier on
    go
    create procedure procedure_student
    	-- add the parameters for the stored procedure here
    	@gradeid int,
    	@gradename varchar(10) --传入的参数
    as
    begin
    	--计算内容
    end
    go
    

    ②执行

    exec dbo.procedure_student 1,'g'
    

    9,数据库恢复技术

    1)事务

    10,并发控制

    为了保证事务的隔离性和一致性,DBMS需要对并发操作进行正确调度。

    1)并发操作带来的数据不一致性

    ①更新丢失

    ②读“脏”数据

    事务T1修改数据,T2读取数据,T1由于某种原因被撤销,则数据修改回原值,但T2读取的数据是之前修改的数据,即脏数据、不正确的数据。

    ③不可重复读

    事务T1读数据后,T2修改了数据,T1无法再现上一次读取的结果。

    ④幻读

    事务T1读数据后,T2新增或者删除了数据,T1无法再现上一次读取的结果。

    2)并发控制技术

    悲观锁:封锁
    乐观锁:版本号、时间戳

    3)封锁分类(悲观锁)

    ①共享锁(S锁、读锁)

    (读取)操作创建的锁。其他用户可以并发读取数据,但任何事物都不能获取数据上的排它锁,直到已释放所有共享锁。
    若事务T对数据对象A加上S锁,则事务T只能读A;其他事务只能再对A加S锁,而不能加X锁,直到T释放A上的S锁。这就保证了其他事务可以读A,但在T释放A上的S锁之前不能对A做任何修改。

    ②排它锁(X锁、写锁,eXclusive lock)

    若事物T对数据对象A加上X锁,则只允许T读取和修改A,其它任何事务都不能再对A加任何类型的锁,直到T释放A上的锁。它防止任何其它事务获取资源上的锁,直到在事务的末尾将资源上的原始锁释放为止。

    ③更新锁(U锁)

    用来预定要对此页施加X锁,它允许其他事务读,但不允许再施加U锁或X锁;当被读取的页将要被更新时,则升级为X锁;U锁一直到事务结束时才能被释放。

    4)封锁问题

    ①活锁

    i>饥饿

    考虑一台打印机分配的例子,当有多个进程需要打印文件时,系统按照短文件优先的策略排序,该策略具有平均等待时间短的优点,似乎非常合理,但当短文件打印任务源源不断时,长文件的打印任务将被无限期地推迟,导致饥饿以至饿死。

    ii>活锁概念

    与饥饿相关的另外一个概念称为活锁,在忙式等待条件下发生的饥饿,称为活锁。

    a)忙式等待:不进入等待状态的等待。
    b)阻塞式等待:进程得不到共享资源时将进入阻塞状态,让出CPU 给其他进程使用。
    c)忙等待和阻塞式等待的相同之处:
    在于进程都不具备继续向前推进的条件,不同之处在于处于忙等待的进程不主动放弃CPU,尽管CPU 可能被剥夺,因而是低效的;而处于阻塞状态的进程主动放弃CPU ,因而是高效的。

    iii>举例

    事务T1请求封锁R,T2请求封锁R,T3请求封锁R……
    T1释放R之后,系统批准了T3的请求,然后是T4……请求,T2可能永远等待下去。(在整个过程中,事务T2 在不断的重复尝试获取锁R)。

    iv>与死锁区别

    活锁的时候,进程是不会阻塞的,这会导致耗尽CPU 资源,这是与死锁最明显的区别。
    处于活锁的实体是在不断的改变状态,所谓的“活”, 而处于死锁的实体表现为等待;活锁有一定几率解开,而死锁是无法解开的。

    v>避免方式

    采用先来先服务策略。

    ②死锁

    i>概念

    是指两个或两个以上的进程在执行过程中,因争夺资源而造成的一种互相等待的现象,若无外力作用,它们都将无法推进下去,此时称系统处于死锁状态或系统产生了死锁。

    ii>举例

    T1请求封锁R1,T2请求封锁R2,然后T1又请求封锁R2,T1一直等待T2释放R2,此时,T2请求封锁R1,T2将一直等待T1释放R1。

    iii>死锁原因

    在数据库中,产生死锁的原因主要是:
    两个或多个事务都已封锁了一些数据对象,然后又都请求其他事务已封锁的数据对象,从而出现死等待。

    产生死锁的四个必要条件:
    (1) 互斥条件:一个资源每次只能被一个进程使用。
    (2) 请求与保持条件:一个进程因请求资源而阻塞时,对已获得的资源保持不放。
    (3) 不可剥夺条件: 进程已获得的资源,在末使用完之前,不能强行剥夺。
    (4) 环路等待条件: 若干进程之间形成一种头尾相接的循环等待资源关系。
    只要系统发生了死锁,这些条件必然成立,而只要上述条件之一不满足,就不会发生死
    锁。

    iv>死锁预防

    预防死锁的发生只需破坏死锁产生的四个必要条件之一即可。

    1. 破坏互斥条件
      如果允许系统资源都能共享使用,则系统不会进入死锁状态。但有些资源根本不能同时访问,如打印机等临界资源只能互斥使用。所以,破坏互斥条件而预防死锁的方法不太可行,而且在有的场合应该保护这种互斥性。
    2. 破坏不剥夺条件
      当一个已保持了某些不可剥夺资源的进程,请求新的资源而得不到满足时,它必须释放已经保持的所有资源,待以后需要时再重新申请。这意味着,一个进程已占有的资源会被暂时释放,或者说是被剥夺了,或从而破坏了不可剥夺条件。
      该策略实现起来比较复杂,释放已获得的资源可能造成前一阶段工作的失效,反复地申请和释放资源会增加系统开销,降低系统吞吐量。这种方法常用于状态易于保存和恢复的资源,如CPU 的寄存器及内存资源,一般不能用于打印机之类的资源。
    3. 破坏请求和保持条件
      釆用预先静态分配方法,即进程在运行前一次申请完它所需要的全部资源,在它的资源未满足前,不把它投入运行。一旦投入运行后,这些资源就一直归它所有,也不再提出其他资源请求,这样就可以保证系统不会发生死锁。
      这种方式实现简单,但缺点也显而易见,系统资源被严重浪费,其中有些资源可能仅在运行初期或运行快结束时才使用,甚至根本不使用。而且还会导致“饥饿”现象,当由于个别资源长期被其他进程占用时,将致使等待该资源的进程迟迟不能开始运行。
    4. 破坏环路等待条件
      为了破坏循环等待条件,可釆用顺序资源分配法。首先给系统中的资源编号,规定每个进程,必须按编号递增的顺序请求资源,同类资源一次申请完。也就是说,只要进程提出申请分配资源Ri,则该进程在以后的资源申请中,只能申请编号大于Ri 的资源。
      这种方法存在的问题是,编号必须相对稳定,这就限制了新类型设备的增加;尽管在为资源编号时已考虑到大多数作业实际使用这些资源的顺序,但也经常会发生作业使甩资源的顺序与系统规定顺序不同的情况,造成资源的浪费;此外,这种按规定次序申请资源的方法,也必然会给用户的编程带来麻烦。

    都不好用,一般采用死锁的诊断和解除。

    v>死锁的诊断和解除

    a)超时法
    如果一个事务等待时间超时,则认为发生死锁。(可能误判)
    b)事务等待图法
    事务等待图是一个有向图,反映了事务的等待情况。如果图中出现回路,就表示出现了死锁。

    处理方案是:选择一个处理代价最小的事务,将其撤销并释放所有锁。
    a) 从死锁进程处剥夺资源
    b) 终止部分或全部进程

    5) 两段锁协议(Two-Phase Locking――2PL)

    两段锁协议规定所有的事务应遵守的规则:
    ① 在对任何数据进行读、写操作之前,首先要申请并获得对该数据的封锁。
    ② 在释放一个封锁之后,事务不再申请和获得其它任何封锁。
    即事务的执行分为两个阶段:
    第一阶段是获得封锁的阶段,称为扩展阶段。
    第二阶段是释放封锁的阶段,称为收缩阶段。

    定理:若所有事务均遵守两段锁协议,则这些事务的所有交叉调度都是可串行化的。
    对于遵守两段协议的事务,其交叉并发操作的执行结果一定是正确的。值得注意的是,上述定理是充分条件,不是必要条件。一个可串行化的并发调度的所有事务并不一定都符合两段锁协议,存在不全是2PL的事务的可串行化的并发调度。
    同时我们必须指出,遵循两段锁协议的事务有可能发生死锁。

    此时事务T1 、T2同时处于扩展阶段,两个事务都坚持请求加锁对方已经占有的数据,导致死锁。
    为此,又有了一次封锁法。一次封锁法要求事务必须一次性将所有要使用的数据全部加锁,否则就不能继续执行。因此,一次封锁法遵守两段锁协议,但两段锁并不要求事务必须一次性将所有要使用的数据全部加锁,这一点与一次性封锁不同,这就是遵守两段锁协议仍可能发生死锁的原因所在。

    11,常见图

    DFD 数据流图(Data Flow Diagram):
    这里写图片描述
    ER图 实体-联系图(Entity-Relationship Diagram)
    这里写图片描述

    12,数据库连接:JDBC与JdbcTemplate

    13,数据库安全

    1)SQL注入

    ①概念

    在SQL 语句在拼接的情况下,用户输入为一部分sql语句。

    ②解决方法

    i> 对特殊字符进行过滤、转义或者使用预编译的sql 语句绑定变量

    SQL执行时,2种方式:
    ①字符串处理(拼接),然后执行SQL
    用户输入的时候,可以通过输入sql语句来进行SQL注入。
    ②传参,执行SQL -->交给SQL引擎**(推荐)**
    用prepareStatement,参数用set 方法进行填装。

    String sql= "insert into userlogin values(?,?)";
    PreparedStatement ps=conn.prepareStatement(sql);
    for(int i=1;i<100;i++){
    ps.setInt(1, i);
    ps.setInt(2, 8888);
    ps.executeUpdate();
    ps.close();
    conn.close();
    

    ii> 当sql 语句运行出错时,不要把数据库返回的错误信息全部显示给用户,以防止泄漏服务器和数据库相关信息

    iii>检查变量的数据类型和格式

    只要是有固定格式的变量,在SQL 语句执行前,应该严格按照固定格式去检查,确保变量是我们预想的格式,这样很大程度上可以避免SQL 注入攻击。
    例如:对于where id={$id}这种形式,数据库里所有的id 都是数字,那么就应该在SQL 被执行前,检查确保变量id 是int 类型。

    iv>所有的SQL 语句都封装在存储过程中

    所有的SQL 语句都封装在存储过程中,这样不但可以避免SQL 注入,还能提高一些性能。

    14,分布式数据库

    1)概念

    分布式数据库是一个物理上分散的而逻辑上集中的数据集。
    它有三大特点: 数据分布性 逻辑关联性 站点自治性

    2)五个基本原则

    ①资源的重复性
    指分布式系统中硬件,软件以及数据的冗余配置。
    ②物理上的分布性
    从硬件,软件以及数据上看都是相互独立地分布。
    ③高层操作系统(或者分布式操作系统)
    高层操作系统负责对分布性的资源进行统一的控制,它使一个简单的硬件堆积转变为一个统一协调的工作系统。
    ④系统的透明性
    透明性是分布式系统的灵魂,实现不同层次的透明性是分布式系统必须解决的关键问题之一。
    ⑤协作的自治性
    每一节点都是一个完整的处理系统,同时又是合作的。 简而言之:分布式系统是一个多节点的,处理或数据分布的,在统一下提高综合处理能力的协作体。

    3)待解决问题

    不完整系统状态信息
    时间延迟
    通信的代价
    负载均衡

    4)分类(从控制方式角度)

    ①紧耦合式DDBMS

    全局控制信息放在一个称为中心站点的站点上。所有的全局访问都必须通过中心站点来确定远程数据片的位置。
    优点:容易实现数据的一致性和完整性。
    缺点:易产生访问瓶颈,系统效率不高,可靠性较差。

    ②联邦式DDBMS

    每个站点都包含全局控制信息的一个副本,都可以接受全局访问。任何对远程数据的请求,都可以通过广播方式传播到其他节点。
    优点:具有较好的可靠性和可用性,并行性好,更容易适应旧有的系统集成和异构分布式数据库系统的建立。
    缺点:保持数据的一致性很困难,实现难度大。

    ③组合式DDBMS

    是上述方案的折衷,它把站点分为两类,一类具有全局控制信息,称为主节点,可以接受全局任务,另一类没有全局信息,只能为主节点提供数据服务。
    优点:灵活性较好,易于实现层次控制结构。
    缺点:设计复杂。

    5)分布透明性

    即在分布式数据库系统中用户不必关心数据的分布情况。分为三个层次:

    ①分片透明性

    它是分布式数据库系统的最高透明性层次,它向用户完全屏蔽了DDB的分片信息。这样的透明性保持了高水平的数据独立性。

    ②位置透明性

    用户的应用程序不需要关心数据分片的具体存储站点,当数据库的数据片的存储站点发生改变时,只需改变对应的GRS/NRS映射就可以保持全局表示模式不发生改变

    ③数据模型透明性

    它向用户屏蔽的只是本站点的具体数据库存储及其管理情况。 在异构的情况下,这种透明性避免了用户对不同数据模型的转换的实现。
    本地透明性是3种透明方式中最低的。

    6)数据分割方法

    ①水平分割

    把全局关系的元组分割成一些子集,这些子集被称为数据分片或段(Fragment)。
    水平分割可以通过关系运算“选择”来定义。

    水平分片是对全局关系执行“选择”操作,把具有相同性质的元组进行分组,构成若干个不相交的子集.水平分片的方法可归为初级分片和导出分片两类。

    ②垂直分割

    把全局关系按照属性组(纵向)分隔成一些数据分片或段。
    垂直分割可以通过关系运算“投影”来定义。

    ③混合分割

    可把水平分割和垂直分割这两种方法结合起来使用,产生混合式数据分片。

    ④数据分片应遵循的原则

    若R={R1,R2,…,Rn}满足:
    1)完整性(completeness)条件:
    如果分片 a∈R,则必有a∈Ri,i=l,2,…,n
    2)可重构(reconstructed)条件:
    R=∪ Ri,(水平分片)或R=∞Ri,(垂直分片)
    3)不相交(disjoint)条件:
    Ri∩ Rj=φ,i≠j,I,j:=1,2,…,,n(水平 分片)
    Ri∩Rj=主键属性,I,j=1,2,…,n(垂直分片)

    7)分布式数据库和集中式区别

    分布式(distributed)是指在多台不同的服务器中部署不同的服务模块,通过远程调用协同工作,对外提供服务。
    集群(cluster)是指在多台不同的服务器中部署相同应用或服务模块,构成一个集群,通过负载均衡设备对外提供服务。

    15,数据库优化

    1)优化SQL 语句

    ①explain

    通过explain(查询优化神器)用来查看SQL 语句的执行效果,可以帮助选择更好的索引和优化查询语句,写出更好的优化语句。
    通常我们可以对比较复杂的尤其是涉及到多表的SELECT 语句,把关键字EXPLAIN 加到前面,查看执行计划。例如:explain select * from news;

    explain语法:

    explain select … from … [where ...] 
    

    ② 用具体的字段列表代替“*

    任何地方都不要使用select * from t ,不要返回用不到的任何字段。

    ③ 不在索引列做运算或者使用函数

    ④ 查询尽可能使用limit 减少返回的行数,减少数据传输时间和带宽浪费。

    2)优化表的数据类型

    ① 使用procedure analyse()函数对表进行分析

    该函数可以对表中列的数据类型提出优化建议。能小就用小。表数据类型第一个原则是:使用能正确的表示和存储数据的最短类型。这样可以减少对磁盘空间、内存、cpu 缓存的使用。
    使用方法:select * from 表名procedure analyse();

    ② 对表进行拆分

    通过拆分表可以提高表的访问效率。有2 种拆分方法:
    1.垂直拆分
    把主键和一些列放在一个表中,然后把主键和另外的列放在另一个表中。如果一个表中某些列常用,而另外一些不常用,则可以采用垂直拆分。
    2.水平拆分
    根据一列或者多列数据的值把数据行放到二个独立的表中。

    ③ 使用中间表来提高查询速度

    创建中间表,表结构和源表结构完全相同,转移要统计的数据到中间表,然后在中间表上进行统计,得出想要的结果。

    3)硬件优化

    ①CPU 的优化

    选择多核和主频高的CPU。

    ②内存的优化

    使用更大的内存。将尽量多的内存分配给MYSQL 做缓存。

    ③磁盘I/O 的优化

    i>使用磁盘阵列

    RAID 0 没有数据冗余,没有数据校验的磁盘陈列。实现RAID 0至少需要两块以上的硬盘,它将两块以上的硬盘合并成一块,数据连续地分割在每块盘上。
    RAID1 是将一个两块硬盘所构成RAID 磁盘阵列,其容量仅等于一块硬盘的容量,因为另一块只是当作数据“镜像”。
    使用RAID-0+1 磁盘阵列。RAID 0+1 是RAID 0 和RAID 1 的组合形式。它在提供与RAID 1 一样的数据安全保障的同时,也提供了与RAID 0 近似的存储性能。

    ii>调整磁盘调度算法

    选择合适的磁盘调度算法,可以减少磁盘的寻道时间。

    4)MySQL 自身的优化

    对MySQL 自身的优化主要是对其配置文件my.cnf 中的各项参数进行优化调整。如指定MySQL 查询缓冲区的大小,指定MySQL 允许的最大连接进程数等。

    5)应用优化

    ①使用数据库连接池

    ②使用查询缓存

    它的作用是存储select 查询的文本及其相应结果。如果随后收到一个相同的查询,服务器会从查询缓存中直接得到查询结果。查询缓存适用的对象是更新不频繁的表,当表中数据更改后,查询缓存中的相关条目就会被清空。

    6)大访问量的优化

    ①使用优化查询的方法

    (见上面)

    ②主从复制,读写分离

    i>主从复制(master,slave):

    通过配置两台(或多台)数据库的主从关系,可以将一台数据库服务器的数据更新同步到另一台服务器上。网站可以利用数据库的这一功能,实现数据库的读写分离,从而改善数据库的负载压力。一个系统的读操作远远多于写操作,因此写操作发向master,读操作发向slaves 进行操作(简单的轮循算法来决定使用哪个slave)。
    利用数据库的读写分离,Web 服务器在写数据的时候,访问主数据库(Master),主数据库通过主从复制机制将数据更新同步到从数据库(Slave),这样当Web 服务器读数据的时候,就可以通过从数据库获得数据。这一方案使得在大量读操作的Web 应用可以轻松地读取数据,而主数据库也只会承受少量的写入操作,还可以实现数据热备份,可谓是一举两得的方案。
    这里写图片描述

    负载均衡(Load Balance,简称LB)

    7)数据库分表、分区、分库

    分表见上面描述。
    分区就是把一张表的数据分成多个区块,这些区块可以在一个磁盘上,也可以在不同的磁盘上,分区后,表面上还是一张表,但数据散列在多个位置,这样一来,多块硬盘同时处理不同的请求,从而提高磁盘I/O 读写性能,实现比较简单。包括水平分区和垂直分区。
    分库是根据业务不同把相关的表切分到不同的数据库中,比如web、bbs、blog 等库。

    17,应用

    1)服务器与服务器之间传输文件夹下的文件,一个文件夹下有10 个文件,另一个文件夹下有100 个文件,两个文件夹大小相等,问,哪个传输更快?

    10 个文件更快。
    1)建立连接数更少,建立连接的开销比传输文件的开销大。
    2)文件写入磁盘,要计算文件的起始位置,文件数目少的话,这个开销就小了

    展开全文
  • 数据库面试

    千次阅读 多人点赞 2019-02-13 09:03:42
    一、数据库问答题 1. SQL语言包括哪些类型? 数据定义DDL:Create Table,Alter Table,Drop Table, Create/Drop Index等 数据操纵DML:Select ,insert,update,delete, 数据控制DCL:grant,revoke 2. 内联接,外联接...

    数据库常见问题

    1. SQL语言包括哪些类型?
    数据定义DDL:Create Table,Alter Table,Drop Table, Create/Drop Index等
    数据操纵DML:Select ,insert,update,delete,
    数据控制DCL:grant,revoke

    2. 内联接,外联接区别?
    内连接是保证两个表中所有的行都要满足连接条件,而外连接则不然。
    在外连接中,某些不满条件的列也会显示出来,也就是说,只限制其中一个表的行,而不限制另一个表的行。分左连接、右连接、全连接(mysql不支持)三种。

    3. 什么是存储过程?用什么来调用?
    答:存储过程是一组为了完成特定功能的SQL 语句集,经编译创建并保存在数据库中,一次编译后永久有效。通过Call语句指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它。
    由于存储过程是经过预编译处理的,因此如果某次操作需要执行多次SQL,使用存储过程比单纯SQL语句执行要快。存储过程不允许执行return语句,但是可以通过out参数返回多个值,存储过程一般是作为一个独立的部分来执行,存储过程是一个预编译的SQL语句。

    4.触发器的作用?
    答:触发器是一种特殊的存储过程,主要是通过事件来触发而被执行的。
    它可以强化约束,来维护数据的完整性和一致性,可以跟踪数据库内的操作从而不允许未经许可的更新和变化。可以联级运算。如,某表上的触发器上包含对另一个表的数据操作,而该操作又会导致该表触发器被触发。触发器无法由用户直接调用,而是由于对表的【增/删/改】操作被动引发的。

    5. 索引的作用?和它的优点缺点是什么?
    答:索引就一种特殊的查询表,可以利用它加速对数据的检索。它很类似与现实生活中书的目录,不需要查询整本书内容就可以找到想要的数据。索引可以是唯一的,创建索引允许指定单个列或者是多个列。
    缺点:它减慢了数据录入和修改的速度,同时索引也会占用一定的存储资源,因此我们在建索引的时候需要斟酌。

    6. 维护数据库的完整性和一致性,你喜欢用触发器还是自写业务逻辑?为什么?
    答:我是这样做的,尽可能使用约束,如主键,外键,非空字段等来约束(Check约束在mysql中可以使用但是对数据验证没有任何作用),这样做效率最高,也最方便。其次是使用触发器,这种方法可以保证,无论什么业务系统访问数据库都可以保证数据的完整新和一致性。触发器是针对每一行的;对增删改非常频繁的表上切记不要使用触发器,因为它会非常消耗资源。 最后考虑的是自写业务逻辑,但这样做麻烦,编程复杂,效率低下。

    7. 什么是事务?什么是锁?事务有哪些类型?

    1. 事务:就是被绑定在一起作为一个逻辑工作单元的SQL语句分组。如果任何一个语句操作失败那么整个操作就被失败,以后操作就会回滚到操作前状态,或者是上有个节点。为了确保要么执行,要么不执行,就可以使用事务。要将有组语句作为事务考虑,就需要通过ACID测试,即原子性,一致性,隔离性和持久性。
    2. 锁:在所以的DBMS中,锁是实现事务的关键,锁可以保证事务的完整性和并发性。与现实生活中锁一样,它可以使某些数据的拥有者,在某段时间内不能使用某些数据或数据结构。当然锁还分级别的。
    • 扁平化事务:在扁平事务中,所有的操作都在同一层次,这也是平时使用最多的事务,主要限制是不能提交或回滚事务的某一部分,要么都成功要么都回滚。
      带保存点的扁平事务:解决了扁平事务的弊端,它允许事务在执行过程中回滚到较早的状态而不是全部回滚,通过在事务中插入保存点,当操作失败后可以选择回滚到最近的保存点处。
      链事务:可看做第二种事务的变种,它在事务提交时,会将必要的上下文隐式传递给下一个事务,当事务失败时,可以回滚到最近的事务,不过链事务只能回滚到最近的保存点,而带保存点的扁平化事务是可以回滚到任意一个保存点。
      嵌套事务:由顶层事务和子事务构成,类似于树的结构,一般顶层事务负责逻辑处理,子事务负责具体的工作,子事务可以提交,但真正的提交要等到顶层事务的提交,如果顶层事务回滚,那么所有的子事务都将回滚。
      分布式事务:在分布式环境中的扁平化事务。
      常用的分布式事务解决方案:
      (1) XA规范,是保证强一致性的刚性事务,实现方式有两段式提交(2PC)和三段式提交(3PC),2PC需要一个事务协调者来保证事务的参与者都完成了第一阶段的准备工作,如果协调者收到了所有的参与者都准备好的消息,就会通知所有的事务执行第二阶段的提交,一般场景下两段式提交已经能很好的解决分布式事务了。然而两阶段在即使只有一个进程发生故障时,也会导致整个系统存在较长时间的阻塞。三段式提交通过增加pre-commit阶段来减少两段式提交提到的系统阻塞时间,三段式提交很少在实际中使用,简单了解就行了。
      (2) TCC:是满足最终一致性的柔性事务方案。TCC采用补偿机制,核心的思想是对每一个操作都要注册对应的确认和补偿操作,分为三个阶段,try阶段主要对业务系统进行检测及资源预留,confirm阶段对业务系统进行确认提交,cancel阶段是对业务执行错误,执行回滚释放预留的资源。
      (3) 消息一致性方案:基本思路是将本地操作和发送消息封装在一个事务中,保证本地的操作和消息发送要么都成功,要么都失败。下游应用订阅消息,收到消息后执行对应的操作。
      (4)GTS:阿里云的全局事务服务,对应的开源版本是Fescar,Fescar基于两段式提交进行改良,剥离了分布式事务方案对数据库在协议支持上的要求,使用Fescar的前提是分支事务中涉及的资源必须支持ACID事务的关系型数据库,分支的提交和回滚都依赖于本地事务来保障。了解即可。

    8. 事务的基本要素?
    原子性Atomicity,指事务由原子的操作序列组成,所有操作要么全部成功,要么全部失败回滚。
    一致性Consistency,指事务的执行不能破坏数据库数据的完整性和一致性,一个事务在执行之前和执行之后,数据库都必须处以一致性状态。比如在做多表操作时,多个表要么都是事务后新的值,要么都是事务前的旧值。
    隔离性Isolation,指多个用户并发访问数据库时,数据库为每个用户执行的事务,不能被其他事务的操作所干扰,多个并发事务之间要相互隔离。事务的隔离级别在后文中介绍。
    持久性Durability,指一个事务一旦提交并执行成功,那么对数据库中数据的改变就是永久性的,即便是在数据库系统遇到故障的情况下也不会丢失提交事务的操作。

    9. 事务的并发问题?事务的隔离级别有哪些?

            事务的并发问题

      1、脏读:事务A读取了事务B更新的数据,然后B回滚操作,那么A读取到的数据是脏数据

      2、不可重复读:在一个事务里面读取了两次某个数据,读出来的数据不一致,事务 A 多次读取同一数据,事务 B 在事务A多次读取的过程中,对数据作了更新并提交,导致事务A多次读取同一数据时,结果不一致。

      3、幻读:在一个事务里面的操作中发现了未被操作的数据,系统管理员A将数据库中所有学生的成绩从具体分数改为ABCDE等级,但是系统管理员B就在这个时候插入了一条新的学生成绩具体分数的记录,当系统管理员A改结束后发现还有一条记录没有改过来,就好像发生了幻觉一样,这就叫幻读。

      小结:不可重复读的和幻读很容易混淆,不可重复读侧重于修改,幻读侧重于新增或删除。解决不可重复读的问题只需锁住满足条件的行,解决幻读需要锁表

    事务隔离级别脏读不可重复读幻读
    读未提交(read-uncommitted)
    读已提交(read-committed)
    可重复读(repeatable-read)
    串行化(serializable)

    10. 什么叫视图?游标是什么?
    答:视图是对一些原表选择部分列合并成的一个虚拟表格,具有和物理表相同的功能。可以对视图进行插入、更新、删除操作。对视图的修改会同步到具体数据表中。注意以下几种情况不能对视图进行插入、更新、删除的操作:

    1. 视图列中含有统计函数的情况
    2. 视图使用了GROUP BY /HAVING,DISTINCT,UNION语句的情况
    3. 视图定义时使用了子查询的情况
    4. 对视图的修改涉及到了多个基础表的数据

    游标:是对查询出来的结果集作为一个单元来有效的处理。游标可以定在该单元中的特定行,从结果集的当前行检索一行或多行。可以对结果集当前行做修改。一般不使用游标,但是需要逐条处理数据的时候,游标显得十分重要。

    11. 什么是主键?什么是外键?
    主键是表格里的(一个或多个)字段,只用来定义表格里的行;主键里的值总是唯一的。外键是一个用来建立两个表格之间关系的约束。这种关系一般都涉及一个表格里的主键字段与另外一个表格(尽管可能是同一个表格)里的一系列相连的字段。那么这些相连的字段就是外键。

    12.一个表有过多索引需要有什么样的性能考虑?
    时间和空间。对一个表格的索引越多,数据库引擎用来更新、插入或者删除数据所需要的时间就越多,因为在数据操控发生的时候索引也必须要维护。

    13.你可以用什么来确保表格里的字段只接受特定范围里的值?
    这个问题可以用多种方式来回答,但是只有一个答案是"好"答案。您希望听到的回答是Check限制(MYSQL有,但是没有强制约束,使用了也没用),它在数据库表格里被定义,用来限制输入该列的值。
    触发器也可以被用来限制数据库表格里的字段能够接受的值,但是这种办法要求触发器在表格里被定义,这可能会在某些情况下影响到性能。因此,微软建议使用Check限制而不是其他的方式来限制域的完整性。

    15. 使用索引查询一定能提高查询的性能吗?为什么
    通常,通过索引查询数据比全表扫描要快.但是我们也必须注意到它的代价.
    索引需要空间来存储,也需要定期维护, 每当有记录在表中增减或索引列被修改时,索引本身也会被修改. 这意味着每条记录的INSERT,DELETE,UPDATE将为此多付出磁盘I/O. 因为索引需要额外的存储空间和处理,那些不必要的索引反而会使查询反应时间变慢.使用索引查询不一定能提高查询性能,索引范围查询(INDEX RANGE SCAN)适用于两种情况:
        1.基于一个范围的检索,一般查询返回结果集小于表中记录数的30%宜采用;
        2.基于非唯一性索引的检索
    索引就是为了提高查询性能而存在的,如果在查询中索引没有提高性能,只能说是用错了索引,或者讲是场合不同

    16. 列举几种表连接方式,并写出SQL语句? 什么是相关子查询?关联查询和相关子查询的区别?
    内连接、外连接(左、右、全)、自连接(特殊的内连接)、交叉连接
    Or hash join/merge join/nest loop(cluster join)/index join 
    1)内连接:只连接匹配的行
    select A.c1,B.c2 from A join B on A.c3 = B.c3;
    2)左外连接:包含左边表的全部行(不管右边的表中是否存在与它们匹配的行)以及右边表中全部匹配的行,最终结果数大于等于左表行数
    select A.c1,B.c2 from A left join B on A.c3 = B.c3;
    3)右外连接:包含右边表的全部行(不管左边的表中是否存在与它们匹配的行)以及左边表中全部匹配的行,最终结果数大于等于右表结果数
    select A.c1,B.c2 from A right join B on A.c3 = B.c3;
    4)全外连接:包含左、右两个表的全部行,不管在另一边的表中是否存在与它们匹配的行
    select A.c1,B.c2 from A full join B on A.c3 = B.c3;
    5)交叉连接又称隐式的内联查询:生成笛卡尔积——它不使用任何匹配或者选取条件,而是直接将一个数据源中的每个行与另一个数据源的每个行一一匹配
    select A.c1,B.c2 from A,B;
    6)相关子查询是一种包含子查询的特殊类型的查询。查询里包含的子查询会用到外部查询的值。
        SELECT * FROM A WHERE A.id IN(SELECT B.aId FROM B  WHERE B.name=A.name)
     7)表关联可能有多条记录,子查询只有一条记录,如果需要唯一的列,最好走子查询

    交叉连接与内连接,查询的结果是一样的,但是效率不同,内连接查询的效率更高。

    17 如何优化数据库,如何提高数据库的性能?
    主要从:表结构、索引、sql语句考虑
    (1)表结构如:合适的字段类型、适当增加中间表、适当拆分表、增加冗余字段避免关联查询、尽量不要使用null
    (2)索引:不要盲目使用索引、要在数据差别大的列上使用索引、要在查询常用到的列上增加索引、根据具体查询情况选择合适的索引数据结构
    (3)查询时不要select *,注意查询是否使用了索引、减少关联查询、减少in和not in这些查询、针对不同的情况选择in或者exists查询
    (4)适当的使用存储过程

    18. 谈谈数据库设计的三范式
    第一范式的定义:所有的域都应该是原子性的,即数据库表的每一列都是不可分割的原子数据项,则这个表属于第一范式(常记成1NF)。简而言之:"每一字段只存储一个值"。例如:职工号,姓名,电话号码组成一个表(一个人可能有一个办公室电话 和一个家里电话号码)
    第二范式的定义:如果一个表属于1NF,任何属性只依赖于关键字,则这个表属于第二范式(常记成2NF )。简而言之:必须先符合1NF的条件,且每一行都能被唯一的识别。将1NF转换成2NF的方法是添加主键。例如:学号,姓名,课程名,成绩
    第三范式的定义:如果一个表属于2NF,且不包含传递依赖性,则这个表是第三范式(常记成 3NF)。简而言之,第三范式就是属性不依赖于其它非主属性。例如,存在一个部门信息表,其中每个部门有部门编号(dept_id)、部门名称、部门简介等信息。那么在员工信息表中列出部门编号后就不能再将部门名称、部门简介等与部门有关的信息再加入员工信息表中。如果不存在部门信息表,则根据第三范式(3NF)也应该构建它,否则就会有大量的数据冗余。

    19. 设计数据库应注意那些问题
    首先应尽量满足三范式的要求,在一定程度上打破三范式的要求以提高数据库的性能。例如,我们创建某些表的时候,不仅会插入外键,还会插入相关的属性,这违反了第三范式,但这样做的好处,就是我们在业务查询的时候会减少很多关联查询,从而提高查询效率。

    20. 表与表之间的关联关系
    分为3种:一对一、一对多、多对多。

    21. 主键和外键的区别
    主键在本表中是唯一的、不可为空的,外键可以重复可以唯空;外键和另一张表的主键关联,不能创建对应表中不存在的外键。

    22. 游标的作用?如何知道游标已经到了最后?
    游标用于定位结果集的行,在mysql中用DECLARE CONTINUE HANDLER FOR SQLSTATE '02000' SET done = 1; 可以判断是否到了最后,通常此变量不等于0表示出错或到了最后。

    23. 事前触发和事后触发有何区别?语句级触发和行级触发有何区别?
    事前触发器运行于触发事件发生之前,如表的插入、更新、删除之前,而事后触发器运行于触发事件发生之后,如表的插入、更新、删除之后。通常事前触发器可以获取事件之前和新的字段值。语句级触发器可以在语句执行前或后执行,而行级触发在触发器所影响的每一行触发一次。

    24. 数据库设计的必要性及设计步骤
    好的数据库结构有利于:节省数据的存储空间,能够保证数据的完整性,方便进行数据库应用系统的开发
    设计不好的数据库结构将导致:数据冗余、存储空间浪费和内存空间浪费
    不管数据库的大小和复杂程度如何,可以用下列基本步骤来设计数据库:收集信息--标识对象--设计数据模型--标识每个对象--存储的信息类型–标识对象之间的关系

    25. 什么是数据模型?什么是规范化?
    数据模型是一种标识实体类型及其实体间联系的模型。典型的数据模型有网状模型、层次模型和关系模型。
    从关系数据库的表中,除去冗余数据的过程称为规范化。包括:精简数据库的结构,从表中删除冗余的列,标识所有依赖于其它数据的数据

    26. 说出一些数据库优化方面的经验?
    用PreparedStatement 一般来说比Statement性能高:一个sql 发给服务器去执行,涉及步骤:语法检查、语义分析, 编译,缓存
    “inert into user values(1,1,1)”-?二进制
    “inert into user values(2,2,2)”-?二进制
    “inert into user values(?,?,?)”-?二进制

    有外键约束会影响插入和删除性能,如果程序能够保证数据的完整性,那在设计数据库时就去掉外键。(比喻:就好比免检产品,就是为了提高效率,充分相信产品的制造商)
    (对于hibernate来说,就应该有一个变化:empleyee->Deptment对象,现在设计时就成了employee?deptid)

    看mysql帮助文档子查询章节的最后部分,例如,根据扫描的原理,下面的子查询语句要比第二条关联查询的效率高:
    1)select e.name,e.salary where e.managerid=(select id from employee where name='zxx');
    2)select e.name,e.salary,m.name,m.salary from employees e,employees m where
    e.managerid = m.id and m.name='zxx';

    表中允许适当冗余,譬如,主题帖的回复数量和最后回复时间等
    将姓名和密码单独从用户表中独立出来。这可以是非常好的一对一的案例哟!
    sql语句全部大写,特别是列名和表名都大写。特别是sql命令的缓存功能,更加需要统一大小写,sql语句?发给oracle服务器?语法检查和编译成为内部指令?缓存和执行指令。根据缓存的特点,不要拼凑条件,而是用?和PreparedStatment
    还有索引对查询性能的改进也是值得关注的。

    27. union和union all有什么不同?
    Union和Union All的区别之一在于对重复结果的处理。

    UNION在进行表链接后会筛选掉重复的记录,所以在表链接后会对所产生的结果集进行排序运算,删除重复的记录再返回结果。
    而UNION ALL只是简单的将两个结果合并后就返回。这样,如果返回的两个结果集中有重复的数据,那么返回的结果集就会包含重复的数据了。
    从效率上说,UNION ALL 要比UNION快很多,所以,如果可以确认合并的两个结果集中不包含重复的数据的话,那么就使用UNION ALL

    28. 几种索引类型?

    MySQL数据库几个基本的索引类型:普通索引、唯一索引、主键索引、组合索引、全文索引

    • 索引加快数据库的检索速度
    • 索引降低了插入、删除、修改等维护任务的速度
    • 唯一索引可以确保每一行数据的唯一性
    • 通过使用索引,可以在查询的过程中使用优化隐藏器,提高系统的性能
    • 索引需要占物理和数据空间 

    29. 数据库的乐观锁和悲观锁是什么?数据库表锁和行锁又是什么?

    数据库管理系统(DBMS)中的并发控制的任务是确保在多个事务同时存取数据库中同一数据时不破坏事务的隔离性和统一性以及数据库的统一性。
    乐观并发控制(乐观锁)和悲观并发控制(悲观锁)是并发控制主要采用的技术手段。

    • 悲观锁:假定会发生并发冲突,屏蔽一切可能违反数据完整性的操作
    • 乐观锁:假设不会发生并发冲突,只在提交操作时检查是否违反数据完整性。

    在MySQL中 引擎为InnoDB的表支持表锁和行锁,而引擎为MyISAM的表只支持表锁

    • 表锁:开销小,加锁快;不会出现死锁;锁定力度大,发生锁冲突概率高,并发度最低
    • 行锁:开销大,加锁慢;会出现死锁;锁定粒度小,发生锁冲突的概率低,并发度高

    30. char和vachar区别?

    char是固定长度,处理速度比vachar快,费内存空间,当存储的值没有达到指定的范围时,会用空格替代。
    vachar是不固定长度,节约存储空间,存储的是真实的值。
    如:存储字符串'abc'
    使用char(10),表示存储的字符将占10个字节(包括7个空字符)
    使用varchar(10),则表示只占3个字节,10是最大值,当存储的字符小于10时,按照实际的长度存储。

    31. 什么是E-R图?

    E-R图也称实体-联系图(Entity Relationship Diagram),提供了表示实体类型、属性和联系的方法,用来描述现实世界的概念模型。

    ER图中有如下四个成分:

    矩形框:表示实体,在框中记入实体名。

    菱形框:表示联系,在框中记入联系名。

    椭圆形框:表示实体或联系的属性,将属性名记入框中。对于主属性名,则在其名称下划一下划线。

    连线:实体与属性之间;实体与联系之间;联系与属性之间用直线相连,并在直线上标注联系的类型。(对于一对一联系,要在两个实体连线方向各写1; 对于一对多联系,要在一的一方写1,多的一方写N;对于多对多关系,则要在两个实体连线方向各写N,M。

    E-R图的3个基本要素是实体、属性和联系

    32.MySQL两种引擎InnoDB和MyISAM的区别?

    1. MyISAM不支持事务,而InnoDB支持事务。
    2. MyISAM锁的是表锁(表锁又分读锁和写锁),而InnoDB锁为行级锁。
    3. MyISAM支持全文类型索引,而InnoDB不支持。
    4. MyISAM相对简单,所以在效率上要优于InnoDB,小型应用可以考虑使用MyISAM。
    5. MyISAM表是保存成文件的形式,在跨平台的数据转移中使用MyISAM存储会省去不少的麻烦。
    6. InnoDB表比MyISAM表更安全,可以在保证数据不会丢失的情况下,切换非事务表到事务表(alter table tablename type=innodb)。

    33. 如何解决MYSQL数据库中文乱码问题?

    建表和建库的时候指定字符集。

    SQL练习

    1.为管理业务培训信息,建立3个表:
    S(S#,SN,SD,SA)S#,SN,SD,SA分别代表学号,学员姓名,所属单位,学员年龄
    C(C#,CN)C#,CN分别代表课程编号,课程名称
    SC(S#,C#,G) S#,C#,G分别代表学号,所选的课程编号,学习成绩
    1)使用标准SQL嵌套语句查询选修课程名称为’税收基础’的学员学号和姓名?
    答案:select s# ,sn from s where S# in(select S# from c,sc where c.c#=sc.c# and cn=’税收基础’)
    2) 使用标准SQL嵌套语句查询选修课程编号为’C2’的学员姓名和所属单位?
    答:select sn,sd from s,sc where s.s#=sc.s# and sc.c#=’c2’
    3) 使用标准SQL嵌套语句查询不选修课程编号为’C5’的学员姓名和所属单位?
    答:select sn,sd from s where s# not in(select s# from sc where c#=’c5’)
    4)查询选修了课程的学员人数
    答:select 学员人数=count(distinct s#) from sc
    5) 查询选修课程超过5门的学员学号和所属单位?
    答:select sn,sd from s where s# in(select s# from sc group by s# having count(distinct c#)>5)

    2. 查询表A(id,name)中存在id重复三次以上的记录,查询语句请写出来?
    SELECT * FROM A GROUP BY id HAVING COUNT(id)>3

    3. 适用于MySql的分页查询语句?
    --limit函数,从数据库表中的m条记录开始,检索n条记录。
    select * from 表名 limit m,n;

    4. 适用于Oracle的分页查询语句?使用rownum关键字,oracle特有的分析函数和树查询非常有用可以看看。
    --从m条开始,检索n条记录。
    select * from (select rownum r,t1.* from 表名称 t1 where rownum < m + n) b where b.r >= m;

    5. 所有部门之间的比赛组合
    一个叫department的表,里面只有一个字段name,一共有4条纪录,分别是a,b,c,d,对应四个球对,现在四个球对进行比赛,用一条sql语句显示所有可能的比赛组合.

    答:SELECT t1.name AS whiteName,t2.name AS blackName FROM department t1 INNER JOIN department t2 ON t1.name>t2.name

    6.简单说一说drop、delete与truncate的区别

    SQL中的drop、delete、truncate都表示删除,但是三者有一些差别

    • delete和truncate只删除表的数据不删除表的结构
    • 速度,一般来说: drop> truncate >delete 
    • delete语句是dml,这个操作会放到rollback segement中,事务提交之后才生效;
      如果有相应的trigger,执行的时候将被触发. truncate,drop是ddl, 操作立即生效,原数据不放到rollback segment中,不能回滚. 操作不触发trigger. 

     7. 每个月份的发生额都比101科目多的科目
    请用SQL语句实现:从TestDB数据表中查询出所有月份的发生额都比101科目相应月份的发生额高的科目。
    请注意:TestDB中有很多科目,都有1-12月份的发生额。
    表名:TestDB
    字段:AccID:科目代码,Occmonth:发生额月份,DebitOccur:发生额。
    答案:
    SELECT DISTINCT t1.AccID FROM TestDB t1 INNER JOIN TestDB t2 ON t2.Occmonth=t1.OccMonth AND t1.DebitOccur>t2.DebitOccur AND t2.AccID=101

    8. 统计每年每月的信息
    year month amount
    1991 1 1.1
    1991 2 1.2
    1991 3 1.3
    1991 4 1.4
    1992 1 2.1
    1992 2 2.2
    1992 3 2.3
    1992 4 2.4
    查成这样一个结果
    year m1 m2 m3 m4
    1991 1.1 1.2 1.3 1.4
    1992 2.1 2.2 2.3 2.4
    答案一:
    select sales.year ,
    (select t.amount from sales t where t.month='1' and t.year= sales.year) '1',
    (select t.amount from sales t where t.month='1' and t.year= sales.year) '2',
    (select t.amount from sales t where t.month='1' and t.year= sales.year) '3',
    (select t.amount from sales t where t.month='1' and t.year= sales.year) as '4' 
    from sales group by year;
    答案二:

    SELECT sales.`year`,GROUP_CONCAT(CONCAT(sales.`year`,':',sales.amount))
     FROM sales GROUP BY sales.`year`

    9. 显示文章标题,发帖人、最后回复时间
    表:id,title,postuser,postdate,parentid
    准备sql语句:
    drop table if exists articles;
    create table articles(id int auto_increment primary key,title varchar(50), postuser varchar(10), postdate datetime,parentid int references articles(id));
    insert into articles values
    (null,'第一条','张三','1998-10-10 12:32:32',null),
    (null,'第二条','张三','1998-10-10 12:34:32',null),
    (null,'第一条回复1','李四','1998-10-10 12:35:32',1),
    (null,'第二条回复1','李四','1998-10-10 12:36:32',2),
    (null,'第一条回复2','王五','1998-10-10 12:37:32',1),
    (null,'第一条回复3','李四','1998-10-10 12:38:32',1),
    (null,'第二条回复2','李四','1998-10-10 12:39:32',2),
    (null,'第一条回复4','王五','1998-10-10 12:39:40',1);

    答案:
    select a.title,a.postuser,
    (select max(postdate) from articles where parentid=a.id) reply 
    from articles a where a.parentid is null;

    10. 查出比经理薪水还高的员工信息:
    Drop table if not exists employees;
    create table employees(id int primary key auto_increment,name varchar(50)
    ,salary int,managerid int references employees(id));
    insert into employees values (null,' lhm',10000,null), (null,' zxx',15000,1
    ),(null,'flx',9000,1),(null,'tg',10000,2),(null,'wzg',10000,3);

    Wzg大于flx,lhm大于zxx

    解题思路:
    根据sql语句的查询特点,是逐行进行运算,不可能两行同时参与运算。
    涉及了员工薪水和经理薪水,所有,一行记录要同时包含两个薪水,所有想到要把这个表自关联组合一下。
    首先要组合出一个包含有各个员工及该员工的经理信息的长记录,譬如,左半部分是员工,右半部分是经理。而迪卡尔积会组合出很多垃圾信息,先去除这些垃圾信息。

    select e.* from employees e,employees m where e.managerid=m.id and e.sala
    ry>m.salary;

    11. 求出小于45岁的各个老师所带的大于12岁的学生人数
    数据库中有3个表 teacher 表,student表,tea_stu关系表。 
    teacher 表 teaID name age 
    student 表 stuID name age 
    teacher_student表 teaID stuID 
    要求用一条sql查询出这样的结果 
    1)显示的字段要有老师name, age 每个老师所带的学生人数 
    SELECT t1.teaID,COUNT(*) FROM teacher_student t1 LEFT JOIN teacher t2 ON t1.teaID=t2.teaID GROUP BY t1.teaID
    2)只列出老师age为40以下,学生age为12以上的记录
    SELECT t1.teaID,t2.name AS teaName,t1.stuID,t3.name AS stuName FROM teacher_student t1 INNER JOIN teacher t2 ON t1.teaID=t2.teaID AND t2.age<40 INNER JOIN student t3 ON t1.stuID=t3.stuID AND t3.age>12


    12. 求出发帖最多的人:
    select authorid,count(*) total from articles group by authorid ORDER BY total DESC LIMIT 1

    13. 一个用户表中有一个积分字段,假如数据库中有100多万个用户,若要在每年第一天凌晨将积分清零,你将考虑什么,你将想什么办法解决?
    alter table drop column score;
    alter table add colunm score int;
    可能会很快,但是需要试验,试验不能拿真实的环境来操刀,并且要注意,
    这样的操作时无法回滚的,在我的印象中,只有inert update delete等DML语句才能回滚,
    对于create table,drop table ,alter table等DDL语句是不能回滚。

    解决方案一,update user set score=0; 
    解决方案二,假设上面的代码要执行好长时间,超出我们的容忍范围,那我就
    alter table user drop column score;
    alter table user add column score int。

    14. xxx公司的sql面试
    Table EMPLOYEES Structure:
    EMPLOYEE_ID NUMBER Primary Key,
    FIRST_NAME VARCHAR2(25),
    LAST_NAME VARCHAR2(25),
    Salary number(8,2),
    HiredDate DATE,
    Departmentid number(2)
    Table Departments Structure:
    Departmentid number(2) Primary Key,
    DepartmentName VARCHAR2(25).

    1)基于上述EMPLOYEES表写出查询:写出雇用日期在今年的,或者工资在[1000,2000]之间的,或者员工姓名(last_name)以’Obama’打头的所有员工,列出这些员工的全部个人信息。
    select * from employees 
    where Year(hiredDate) = Year(date()) 
    or (salary between 1000 and 200)
    or left(last_name,3)='abc';

    2) 基于上述EMPLOYEES表写出查询:查出部门平均工资大于1800元的部门的所有员工,列出这些员工的全部个人信息。
    mysql> select id,name,salary,deptid did from employee1 where (select avg(salary)
    from employee1 where deptid = did) > 1800;

    3) 基于上述EMPLOYEES表写出查询:查出个人工资高于其所在部门平均工资的员工,列出这些员工的全部个人信息及该员工工资高出部门平均工资百分比。
    select employee1.*,(employee1.salary-t.avgSalary)*100/employee1.salary 
    from employee1,
    (select deptid,avg(salary) avgSalary from employee1 group by deptid) as t
    where employee1.deptid = t.deptid and employee1.salary>t.avgSalary;

    二、数据库选择题:
    1. 下面叙述正确的是___C___。 
    A、算法的执行效率与数据的存储结构无关 
    B、算法的空间复杂度是指算法程序中指令(或语句)的条数 
    C、算法的有穷性是指算法必须能在执行有限个步骤之后终止D、以上三种描述都不对

    2. 以下数据结构中不属于线性数据结构的是__C____。
    A、队列 B、线性表 C、二叉树 D、栈

    3. 在一棵二叉树上第5层的结点数最多是__B____。
    A、8 B、16 C、32 D、15

    4. 在结构化方法中,用数据流程图(DFD)作为描述工具的软件开发阶段是__B__。 
    A、可行性分析 B、需求分析 C、详细设计 D、程序编码

    5. 在软件开发中,下面任务不属于设计阶段的是___D___。 
    A、数据结构设计 B、给出系统模块结构 C、定义模块算法 D、定义需求并建立系统模型

    6. 数据库系统的核心是___B___。 
    A、数据模型 B、数据库管理系统 C、软件工具 D、数据库

    7. 下列叙述中正确的是___C___。 
    A、数据库是一个独立的系统,不需要操作系统的支持 
    B、数据库设计是指设计数据库管理系统 
    C、数据库技术的根本目标是要解决数据共享的问题 
    D、数据库系统中,数据的物理结构必须与逻辑结构一致

    8. SQL语句中修改表结构的命令是__C____。 
    A、MODIFY TABLE B、MODIFY STRUCTURE C、ALTER TABLE D、ALTER STRUCTURE

    9. 如果要创建一个数据组分组报表,第一个分组表达式是"部门",第二个分组表达式是"性别",第三个分组表达式是"基本工资",当前索引的索引表达式应当是___B___。 
    A、部门+性别+基本工资 B、部门+性别+STR(基本工资) 
    C、STR(基本工资)+性别+部门 D、性别+部门+STR(基本工资) 

    10. 数据库DB、数据库系统DBS、数据库管理系统DBMS三者之间的关系是___A___。 
    A、DBS包括DB和DBMS B、DBMS包括DB和DBS 
    C、DB包括DBS和DBMS D、DBS就是DB,也就是DBMS

    11. 要控制两个表中数据的完整性和一致性可以设置"参照完整性",要求这两个表__A___。 
    A、是同一个数据库中的两个表 B、不同数据库中的两个表 
    C、两个自由表 D、一个是数据库表另一个是自由表

    12. 在关系模型中,实现"关系中不允许出现相同的元组"的约束是通过___B___。 
    A、候选键 B、主键 C、外键 D、超键

    13. 只有满足联接条件的记录才包含在查询结果中,这种联接为___C___。 
    A、左联接 B、右联接 C、内部联接 D、完全联接

    14. 索引字段值不唯一,应该选择的索引类型为___B___。 
    A、主索引 B、普通索引 C、候选索引 D、唯一索引

    15. 从数据库中删除表的命令是__A____。 
    A、DROP TABLE B、ALTER TABLE C、DELETE TABLE D、USE

    16. DELETE FROM S WHERE 年龄>60语句的功能是__B____。 
    A、从S表中彻底删除年龄大于60岁的记录 B、S表中年龄大于60岁的记录被加上删除标记 
    C、删除S表 D、删除S表的年龄列

    17. SELECT-SQL语句是__B____。 
    A、选择工作区语句 B、数据查询语句 C、选择标准语句 D、数据修改语句

    18. SQL语言是___C___语言。
    A、层次数据库 B、网络数据库 C、关系数据库 D、非数据库

    19. 在SQL中,删除视图用___C___。 
    A、DROP SCHEMA命令 B、CREATE TABLE命令 C、DROP VIEW命令 D、DROP INDEX命令

    20. 在命令窗口执行SQL命令时,若命令要占用多行,续行符是__D____。 
    A、冒号(:) B、分号(;) C、逗号(,) D、连字符(-)

    21. 设有图书管理数据库: 
    图书(总编号C(6),分类号C(8),书名C(16),作者C(6),出版单位C(20),单价N(6,2)) 
    读者(借书证号C(4),单位C(8),姓名C(6),性别C(2),职称C(6),地址C(20)) 
    借阅(借书证号C(4),总编号C(6),借书日期D(8)) 
    对于图书管理数据库,查询0001号借书证的读者姓名和所借图书的书名。 
    SQL语句正确的是___A___。 
    SELECT 姓名,书名 FROM 借阅,图书,读者 WHERE; 
    借阅.借书证号="0001" AND; 
    ______ 
    ______ 
    A、图书.总编号=借阅.总编号 AND; 
    读者.借书证号=借阅.借书证号 
    B、图书.分类号=借阅.分类号 AND; 
    读者.借书证号=借阅.借书证号 
    C、读者.总编号=借阅.总编号 AND; 
    读者.借书证号=借阅.借书证号 
    D、图书.总编号=借阅.总编号 AND; 
    读者.书名=借阅.书名

    22. 设有图书管理数据库: 
    图书(总编号C(6),分类号C(8),书名C(16),作者C(6),出版单位C(20),单价N(6,2)) 
    读者(借书证号C(4),单位C(8),姓名C(6),性别C(2),职称C(6),地址C(20)) 
    借阅(借书证号C(4),总编号C(6),借书日期D(8)) 
    对于图书管理数据库,分别求出各个单位当前借阅图书的读者人次。下面的SQL语句正确的是___A___。 
    SELECT 单位,______ FROM 借阅,读者 WHERE; 
    借阅.借书证号=读者.借书证号 ______ 
    A、COUNT(借阅.借书证号) GROUP BY 单位 B、SUM(借阅.借书证号) GROUP BY 单位 
    C、COUNT(借阅.借书证号) ORDER BY 单位 D、COUNT(借阅.借书证号) HAVING 单位

    23. 设有图书管理数据库: 
    图书(总编号C(6),分类号C(8),书名C(16),作者C(6),出版单位C(20),单价N(6,2)) 
    读者(借书证号C(4),单位C(8),姓名C(6),性别C(2),职称C(6),地址C(20)) 
    借阅(借书证号C(4),总编号C(6),借书日期D(8)) 
    对于图书管理数据库,检索借阅了《现代网络技术基础》一书的借书证号。下面SQL语句正确的是___B___。 
    SELECT 借书证号 FROM 借阅 WHERE 总编号=; 
    ______ 
    A、(SELECT 借书证号 FROM 图书 WHERE 书名="现代网络技术基础") 
    B、(SELECT 总编号 FROM 图书 WHERE 书名="现代网络技术基础") 
    C、(SELECT 借书证号 FROM 借阅 WHERE 书名="现代网络技术基础") 
    D、(SELECT 总编号 FROM 借阅 WHERE 书名="现代网络技术基础")


    三、Oracle面试题
    1. 解释冷备份和热备份的不同点以及各自的优点 
    解答:热备份针对归档模式的数据库,在数据库仍旧处于工作状态时进行备份。而冷备份指在数据库关闭后,进行备份,适用于所有模式的数据库。热备份的优点在于当备份时,数据库仍旧可以被使用并且可以将数据库恢复到任意一个时间点。冷备份的优点在于它的备份和恢复操作相当简单,并且由于冷备份的数据库可以工作在非归档模式下,数据库性能会比归档模式稍好。(因为不必将archive log写入硬盘)
    2. 你必须利用备份恢复数据库,但是你没有控制文件,该如何解决问题呢?
    解答:重建控制文件,用带backup control file 子句的recover 命令恢复数据库。
    3. 如何转换init.ora到spfile?
    解答:使用create spfile from pfile 命令.
    4. 解释data block , extent 和 segment的区别(这里建议用英文术语)
    解答:data block是数据库中最小的逻辑存储单元。当数据库的对象需要更多的物理存储空间时,连续的data block就组成了extent . 一个数据库对象
    拥有的所有extents被称为该对象的segment.
    5. 给出两个检查表结构的方法
    解答:
    1)DESCRIBE命令
    2)DBMS_METADATA.GET_DDL 包
    6. 怎样查看数据库引擎的报错
    解答:alert log.

    7. 比较truncate和delete 命令
    解答:两者都可以用来删除表中所有的记录。区别在于:truncate是DDL操作,它移动HWK,不需要 rollback segment .而Delete是DML操作, 需要rollback segment 且花费较长时间.

    8. 使用索引的理由
    解答:快速访问表中的data block

    9. 给出在STAR SCHEMA中的两种表及它们分别含有的数据
    解答:Fact tables 和dimension tables. fact table 包含大量的主要的信息而 dimension tables 存放对fact table 某些属性描述的信息

    10. FACT Table上需要建立何种索引?
    解答:位图索引 (bitmap index)

    11. 给出两种相关约束?
    解答:主键和外键

    12. 如何在不影响子表的前提下,重建一个母表
    解答:子表的外键强制实效,重建母表,激活外键

    13. 解释归档和非归档模式之间的不同和它们各自的优缺点
    解答:归档模式是指你可以备份所有的数据库 transactions并恢复到任意一个时间点。非归档模式则相反,不能恢复到任意一个时间点。但是非归档模式可以带来数据库性能上的少许提高.

    14. 如何建立一个备份控制文件?
    解答:Alter database backup control file to trace.

    15. 给出数据库正常启动所经历的几种状态 ?
    解答:
      STARTUP NOMOUNT – 数据库实例启动
      STARTUP MOUNT - 数据库装载
      STARTUP OPEN – 数据库打开

    16. 哪个column可以用来区别V$视图和GV$视图?
    解答: INST_ID 指明集群环境中具体的 某个instance 。

    17. 如何生成explain plan?
    解答:运行utlxplan.sql. 建立plan 表
    针对特定SQL语句,使用 explain plan set statement_id = 'tst1' into plan_table
    运行utlxplp.sql 或 utlxpls.sql察看explain plan

    18. 如何增加buffer cache的命中率?
    解答:在数据库较繁忙时,适用buffer cache advisory 工具,查询v$db_cache_advice . 如果有必要更改,可以使用 alter system set db_cache_size 命令

    19. ORA-01555的应对方法?
    解答:具体的出错信息是snapshot too old within rollback seg , 通常可以通过
    增大rollback seg来解决问题。当然也需要察看一下具体造成错误的SQL文本

    20. 解释$ORACLE_HOME和$ORACLE_BASE的区别?
    解答:ORACLE_BASE是oracle的根目录,ORACLE_HOME是oracle产品的目录。

    21. 如何判断数据库的时区?
    解答:SELECT DBTIMEZONE FROM DUAL;

    22. 解释GLOBAL_NAMES设为TRUE的用途
    解答:GLOBAL_NAMES指明联接数据库的方式。如果这个参数设置为TRUE,在建立数据库链接时就必须用相同的名字连结远程数据库

    23。如何加密PL/SQL程序?
    解答:WRAP

    24. 解释FUNCTION,PROCEDURE和PACKAGE区别
    解答:function 和procedure是PL/SQL代码的集合,通常为了完成一个任务。procedure 不需要返回任何值而function将返回一个值在另一
    方面,Package是为了完成一个商业功能的一组function和proceudre的集合

    25. 解释TABLE Function的用途
    解答:TABLE Function是通过PL/SQL逻辑返回一组纪录,用于普通的表/视图。他们也用于pipeline和ETL过程。

    26. 举出3种可以收集three advisory statistics
    解答:Buffer Cache Advice, Segment Level Statistics, Timed Statistics

    27. Audit trace 存放在哪个oracle目录结构中?
    解答:unix $ORACLE_HOME/rdbms/audit Windows the event viewer

    28. 解释materialized views的作用
    解答:Materialized views 用于减少那些汇总,集合和分组的信息的集合数量。它们通常适合于数据仓库和DSS系统。

    29. 当用户进程出错,哪个后台进程负责清理它
    解答: PMON

    30. 哪个后台进程刷新materialized views?
    解答:The Job Queue Processes.

    31. 如何判断哪个session正在连结以及它们等待的资源?
    解答:V$SESSION / V$SESSION_WAIT

    32. 描述什么是 redo logs
    解答:Redo Logs 是用于存放数据库数据改动状况的物理和逻辑结构。可以用来修复数据库.

    33. 如何进行强制LOG SWITCH?
    解答:ALTER SYSTEM SWITCH LOGFILE;

    34. 举出两个判断DDL改动的方法?
    解答:你可以使用 Logminer 或 Streams

    35. Coalescing做了什么?
    解答:Coalescing针对于字典管理的tablespace进行碎片整理,将临近的小extents合并成单个的大extent.

    36. TEMPORARY tablespace和PERMANENT tablespace 的区别是?
    解答:A temporary tablespace 用于临时对象例如排序结构而 permanent tablespaces用来存储那些'真实'的对象(例如表,回滚段等)

    37. 创建数据库时自动建立的tablespace名称?
    解答:SYSTEM tablespace.

    38. 创建用户时,需要赋予新用户什么权限才能使它联上数据库。
    解答:CONNECT

    39. 如何在tablespace里增加数据文件?
    解答:ALTER TABLESPACE ADD DATAFILE SIZE

    40. 如何变动数据文件的大小?
    解答:ALTER DATABASE DATAFILE RESIZE ;

    41. 哪个VIEW用来检查数据文件的大小?
    解答: DBA_DATA_FILES

    42. 哪个VIEW用来判断tablespace的剩余空间
    解答:DBA_FREE_SPACE

    43. 如何判断谁往表里增加了一条纪录?
    解答:auditing

    44. 如何重构索引?
    解答: ALTER INDEX REBUILD;

    45. 解释什么是Partitioning(分区)以及它的优点。
    解答:Partition将大表和索引分割成更小,易于管理的分区。

    46. 你刚刚编译了一个PL/SQL Package但是有错误报道,如何显示出错信息?
    解答:SHOW ERRORS

    47. 如何搜集表的各种状态数据?
    解答: ANALYZE
    The ANALYZE command.

    48. 如何启动SESSION级别的TRACE
    解答: DBMS_SESSION.SET_SQL_TRACE
    ALTER SESSION SET SQL_TRACE = TRUE;

    49. IMPORT和SQL*LOADER 这2个工具的不同点
    解答:这两个ORACLE工具都是用来将数据导入数据库的。
    区别是:IMPORT工具只能处理由另一个ORACLE工具EXPORT生成
    的数据。而SQL*LOADER可以导入不同的ASCII格式的数据源

    50。用于网络连接的2个文件?
    解答: TNSNAMES.ORA and SQLNET.ORA

    展开全文
  • DB2数据库错误码大全

    万次阅读 2018-03-01 10:29:08
    DB2数据库错误代码大全sqlcode sqlstate 说明000 00000 SQL语句成功完成01xxx SQL语句成功完成,但是有警告+012 01545 未限定的列名被解释为一个有相互关系的引用+098 01568 动态SQL语句用分号结束+100 02000 ...
    
    DB2数据库错误代码大全
    sqlcode sqlstate 说明
    000 00000 SQL语句成功完成
    01xxx SQL语句成功完成,但是有警告
    +012 01545 未限定的列名被解释为一个有相互关系的引用
    +098 01568 动态SQL语句用分号结束
    +100 02000 没有找到满足SQL语句的行
    +110 01561 用DATA CAPTURE定义的表的更新操作不能发送到原来的子系统
    +111 01590 为2型索引设置了SUBPAGES语句
    +117 01525 要插入的值的个数不等于被插入表的列数
    +162 01514 指定的表空间被置为检查挂起状态
    +203 01552 使用非唯一的名字来解决命名的限定列
    +204 01532 命名的对象未在DB2中定义
    +206 01533 命名的列不在SQL语句中指定的任何表中存在
    +218 01537 因为SQL语句引用一个远程对象,不能为该SQL语句执行EXPLAIN
    +219 01532 命名的PLAN TABLE不存在
    +220 01546 不正确定义PLAN TABLE,检查命名列的定义
    +236 01005 SQLDA中的SQLN的值至少应于所描述的列的个数一样大
    +237 01594 至少有一个被描述的列应该是单值类型,因此扩展的SQLVAR条目需要另外的空间
    +238 01005 至少应有一个被描述的列是一个LOB,因此扩展的SQLVAR条目需要另外的空间
    +239 01005 至少应有一个被描述的列应是单值类型,因此扩展的SQLVAR条目需要另外的空间
    +304 01515 该值不能被分配给宿主变量,因为该值不再数据类型的范围之内
    +331 01520 不能被翻译的字符串,因此被设置为NULL
    +339 01569 由于与DB2 2.2版本的子系统连接,所以可能存在字符转换问题
    +394 01629 使用优化提示来选择访问路径
    +395 01628 设置了无效的优化提示,原因代码指定了为什么,忽略优化提示
    +402 01521 未知的位置
    +403 01522 本地不存在CREAT ALIAS对象
    +434 01608 在DB2未来发布的版本中将不支持指定的特性,IBM建议你停止使用这些特性
    +445 01004 值被CAST函数截取
    +462 01Hxx 由用户定义的函数或存储过程发出的警告
    +464 01609 命名的存储过程超出了它可能返回的查询结果集的个数限制
    +466 01610 指定由命名的存储过程返回的查询结果集的个数。成功完成
    +494 01614 由存储过程返回的结果集的个数超过了由ASSOCIATE LOCATORS语句指定的结果集定位器的个数
    +495 01616 因为倒台SQL的成本估算超出了在ELST中指定的警告阀值,所以发出警告
    +535 01591 请求一个主健的定位更新,或请求一个使用自我引出 约束的表的删除操作
    +541 01543 命名外健是一个重复的引用约束
    +551 01548 命名的授权ID缺少在命名的DB2对象上执行命名操作的权限
    +552 01542 命名的授权ID缺少执行命名操作的权限
    +558 01516 已经被授权该PUBLIC,因此WITH GRANT OPTION不可用
    +561 01523 对ALTER REFERENCES INDEX 和TRIGGER特权,PUBLIC AT ALL LOCATION无效
    +562 01560 因为GRANTEE已经拥有这些特权,所以一个或更多的特权被忽略
    +585 01625 模式名指定了不止一次
    +599 01596 没有为长字符数据类型(BLOB,CLOB和DBCLOB)建立比较函数
    +610 01566 由于建立了一个指定为DEFER YES的索引,指定的对象处于PENDING状态,或者因为使用了ALTER INDEX改变关键值的范围,所以指定的对象处于PENDING状态
    +625 01518 因为删除了主健索引,所以表定义被标注为不完整
    +626 01529 删除了加强UNIQUE约束的索引,唯一性不在被加强
    +645 01528 因为建立的索引中没有包含NULL,所以WHERE NOT NULL被忽略
    +650 01538 不能更改或者建立已命名的表为从属表
    +653 01551 在已指定的分区表空间中尚没有建立指定的分区索引,所以分区索引不可得
    +655 01597 为CREATE或ALTER STOGROUP语句指定特定或者非特定的卷ID,在DB2较新发布的版本中(版本6以后)将不再支持他们
    +658 01600 当建立目录索引时,不能指定SUBPAGES语句,SUBPAGES将被忽略,并缺省为1
    +664 01540 分区索引的限制关键字超出了最大值
    +738 01530 已命名的对象的更改可能像只读系统中对象的改变要求一样
    +799 0157 SET语句中引用的特定寄存器不存在,将忽略 SET请求
    +802 01519 数据溢出或者因除法异常而引起的数据异常错误
    +806 01553 ISOLATION(RR)与LOCKSIZE PAGE 冲突
    +807 01554 由于十进制乘法导致溢出
    +863 01539 连接成功,但是只支持SBCS
    +2000 56094 SUBPAGES不等于1的1型索引不能成为数据共享环境中的缓冲池组依赖者
    +2002 01624 因为指定的缓冲池不允许超高速缓存,GNPCACHE指定被忽略
    +2007 01602 因为DB2子系统的参数禁用“提示(hiats)”所以不能指定优化提示
    +30100 01558 分布式协议错误被检测到,提供原来的SQLCODE和SQLSTATE
    -007 42601 SQL语句中由非法字符
    -010 42603 字符串常量非正常终止;检查到有遗漏的引号标志
    -029 42601 需要INTO语句
    -060 42815 某特定数据类型的长度或者标量规范无效
    -084 42612 不能执行SQL语句,因为该语句对动态SQL无效或者对OS/390的DB2无效
    -097 42601 在单位类型、用户自定义的函数以及过程中不能使用带有CAST的LONG VARCHAR或LONGVARGRAPHIC
    -101 54001 SQL语句超出了已确定的DB2限制:例如,表的数目太多,语句中的字节太多
    -102 54002 字符串常量太长
    -103 42604 无效数学文字
    -104 42601 SQL语句中遇到非法符号
    -105 42604 无效的字符串格式;通常引用一个格式不正确的图形字符串
    -107 42622 对象名太长
    -108 42601 RENAME语句中指定的名字有错误,不能使用限定词
    -109 42601 指定了无效语句;例如CREATE VIEW不能包含ORDER BY 语句
    -110 42606 遇到了无效的十六进制的文字
    -111 42901 指定的列函数没有给出列名
    -112 42607 无效的列函数语法;列函数不能运行与其他的列函数之上
    -113 42602 遇到无效字符
    -114 42961 该语句的位置名称必须与当前服务器匹配,但是却没有匹配
    -115 42601 因为比较运算符没有伴着一个表达式或者列表,遇到了无效谓词
    -117 42802 待插入的数值的个数于被插入的行中的列数不相等
    -118 42902 数据修改语句(UPDATE或DELETE)和FROM语句中的表和视图命名不合法
    -119 42803 HAVING语句中的列的列表与GROUP BY语句中的列列表不匹配
    -120 42903 不允许WHERE语句、SET语句、VALUES语句或者SET ASSIGNMENT语句引用列函数
    -121 42701 在INSERT或UPDATE语句中,某一列被非法引用了两次
    -122 42803 非法使用了列函数。因为没有用于一个列函数的所有列不再GROUP BY语句中
    -123 42601 特定位置的参数必须是一个常数或者一个关键词
    -125 42805 ORDER BY语句中指定了无效数字,该数字要么小于1要么大于选定的列数
    -126 42829 不能为一个UPDATE语句指定ORDER BY语句
    -127 42905 在子选择中DISTINCT只能指定一次
    -128 42601 SQL谓词中NULL使用不当
    -129 54004 SQL语句中包含的表多于15个
    -130 22019 ESCAPE语句必须为一个字符
    22025 无效的ESCAPE模式
    -131 42818 LIKE谓词只能用于字符数据
    -132 42824 LIKE语句、ESCAPE语句、LOCATE函数或POSSTR函数中有无效运算对象
    -133 42906 无效相关子查询引用
    -134 42907 大于255字节的列被不正确使用
    -136 54005 排序关键字的长度大于4000字节
    -137 54006 被连接的字符串太大;字符的最大值为32767;图形的最大值为16382
    -138 22011 SUBSTR列函数的第二个或第三个操作符无效
    -142 42612 不支持的SQL语句。该语句可能在另外的RDBMS上有效,也有可能在其他的上下文中有效(例如,VALUES只能在触发器中出现)
    -144 58003 指定的段号无效
    -147 42809 某一源函数不能更改。要改变源函数,必须删除该源函数并重新建立他
    -148 42809 RENAME和ALTER无法执行。RENAME不能对视图或者活动RI.ST表重新命名。ALTER不能用于改变列的长度,因为该列参与了RI、一个用户退出程序、全局的临时表或打开DATACAPTURE CHANGES表的列
    -150 42807 触发活动的INSERT,UPDATE或DELETE语句中指定了无效的视图更新或一个无效的转换表
    -151 42808 试图更新一个不可更新的视图的列、一个DB2 CATALOG表的列或者一个ROWID列
    -152 42809 DROP CHECK试图删除一个参照约束,或者DROP FOREIGN试图删除一个检查约束
    -153 42908 无效的视图建立请求,必须为旋转列表中列出的列出的未命名的列或者重复的列提供一个名字
    -154 42909 不能用UNION、UNION ALL或者一个远程表建立视图
    -156 42809 在视图上建立索引是非法的,或者在ALTER TABLE,CREATE TRIGGER,DROP TABLE或LOCK TABLE语句上指定一个不是表的其他对象这是无效的
    -157 42810 必须在FOREIGN KEY语句中指定一个表名
    -158 42811 视图的列和选择列表中的列不相匹配
    -159 42089 无效DROP或COMMENT ON语句
    -160 42813 对该视图的WITH CHECK OPTION无效
    -161 44000 正被更新的视图WITH CHECK OPTION语句使得这行不能被插入或更新
    -164 42502 用户没有建立这个视图的权限
    -170 42605 标量函数指定了无效的参数个数
    -171 42815 标量函数指定了无效的数据类型长度或者无效数值
    -173 42801 在非只读型的游标上不能指定隔离级别UR
    -180 22007 DATE、TIME、TIMESTAMP值的字符串表示法的语法不对
    -181 22001 不是有效的DATE、TIME、TIMESTAMP值
    -182 42816 在算术表达式中的日期/时间值无效
    -183 22008 在算术表达式中返回的日期/时间值的结果不在有效值的范围内
    -184 42610 没有正确使用日期/时间值的参数标记
    -185 57008 没有定义本定的日期/时间出口
    -186 22505 改变本定的日期/时间出口引发这个程序的长度无效
    -187 22506 MVS返回无效的当前日期/时间
    -188 22503 字符串表示无效
    -189 22522 指定的编码字符集的ID无效或没有定义
    -190 42837 不能象所设定的那样改变(ALTER)列。只能改变(ALTER)VARCHAR列的长度
    -191 22504 字符串中包含了无效的混合数据
    -197 42877 当两个或多个表被联合在一起排序时,限定的列名不能在ORDER BY语句中使用
    -198 42617 试图对空的字符串发布一个PREPARE或EXECUTE IMMEDIATE语句
    -199 42601 SQL语句中使用了非法关键词
    -203 42702 模糊列引用
    -204 42704 没有定义的对象名
    -205 42703 指定的表的列名无效
    -206 42703 列名没有在FROM语句所引用的任何表中,或者没有在定义触发器所在的表中
    -208 42707 不能ORDER BY指定列,应为该列不在选择列表中
    -212 42712 指定的表名在触发器中不允许多次使用,只能使用一次
    -214 42822 DISTINCT、ORDER BY 引起的无效表达式
    -219 42704 因为PLAN_TABLE不存在,EXPLAIN无法执行
    -220 55002 遇到无效的PLAN_TABLE列
    -221 55002 如果为PLAN_TABLE定义了可供选择的列,那么,必须定义所有的列
    -229 42708 指定的现场找不到
    -240 428B4 LOCK TABLE语句的PART子句无效
    -250 42718 没有定义本地位置名
    -251 42602 记号无效
    -300 22024 宿主变量或参数中的字符串不是以NULL为终止
    -301 42895 无效的宿主变量数据类型
    -302 22001 输入的变量值对指定的列无效
    22003 输入的变量值对指定的列而言太大
    -303 42806 因为数据类型不兼容,不能分配数值
    -304 22003 因为数据超出了范围,不能分配数值
    -305 22002 没有NULL指示符变量
    -309 22512 因为引用的宿主变量被设置成NULL,所以谓词无效
    -310 22501 十进制的宿主变量或参数包含非十进制数据
    -311 22501 输入的宿主变量长度无效,或者时负值或者太大
    -312 42618 没有定义宿主变量或者宿主变量不可用
    -313 07001 宿主变量的个数不等于参数标识的个数
    -314 42714 模糊的宿主变量引用
    -327 22525 在最后分区的关键字范围内,不能插入行
    -330 22021 不能成功的翻译字符串
    -331 22021 字符串不能分配到宿主变量,因为其不能成功的被翻译
    -332 57017 不能为两个命名的编码字符集的ID定义翻译规则
    -333 56010 子类型无效导致翻译失败
    -338 42972 ON语句无效,必须引用连接的列
    -339 56082 访问DB2 2.2版本的子系统被拒绝,原因时ASCII到EBCDIC翻译不能进行
    -350 42962 无效的大对象规范
    -351 56084 SELECT列表中有不支持的数据类型
    -352 56084 输入列表中有不支持的数据类型
    -355 42993 LOB列太大,以至不能被记录在日志中
    -372 428C1 每个表只允许有一个ROWID列
    -390 42887 在上下文中指定的函数无效
    -392 42855 自从前一次FETCH以来,指定游标的SQLDA已被不恰当的改变
    -396 38505 在最后的访问过程中,视图执行SQL语句
    -397 428D3 在某一列上不恰当的指定了GENERATED因为该列不是ROWID数据类型
    -398 428D2 为某一个宿主变量请求LOCATOR,但是该宿主变量不是一个LOB
    -399 22511 在INSERT语句中为ROWID列指定的值无效
    -400 54027 在DB2编目中定义的用户自定义索引不能超过100个
    -401 42818 算术操作符或比较操作符的操作对象不是兼容的
    -402 42819 算术函数不能用于字符或日期时间数据
    -404 22001 SQL语句指定的字符串太长
    -405 42820 数值文字超出了范围
    -406 22003 计算出的或者倒出的数值超出了范围
    -407 23502 不能把NULL值插到定义为NOT NULL的列中
    -408 42821 数值不能被更新或插入,因为他与列的数据类型不兼容
    -409 42607 COUNT函数指定的运算对象无效
    -410 42820 浮点文字笔30个字符的最大允许长度长
    -411 56040 CURRENT SQLID使用无效
    -412 42823 在子查询的选择列表中遇到了多个列
    -413 22003 当转换为一个数字型数据类型时,数据溢出
    -414 42824 LIKE谓词不能运行于用数字或日期时间类型定义的列
    -415 42825 为UNION操作指定的选择列表不是联合兼容的
    -416 42907 包含UNION操作符的SQL语句不允许有长的字符串列
    -417 42609 两参数标识符作为运算对象被指定在同一谓词的两边
    -418 42610 参数标识符使用无效
    -419 42911 十进制除法无效
    -420 22018 字符串自变量值不符合函数的要求
    -421 42826 UNION操作的选择列表中没有提供相同数目的列
    -423 0F001 为LOB或结果集定位器指定的值无效
    -426 2D528 在不允许更新的应用服务器不允许执行COMMIT语句
    -427 2D529 在不允许更新的应用服务器不允许执行ROLLBACK语句
    -430 38503 在用户自定义的函数或存储过程中遇到了错误
    -433 22001 指定的值太长
    -435 428B3 无效的应用定义的SQLSTATE
    -438 xxxxx 使用了RAISE_ERROR函数的应用发出了一个错误
    -440 42884 存储过程或用户自定义函数的参数列表参数个数于预期的个数不匹配
    -441 42601 与标量函数一起使用DISTINCT或ALL是不正确的用法
    -443 42601 指定的外部函数返回错误的SQLSTATE
    -444 42724 与被称为存储过程或用户自定义函数有关的程序不能找到
    -449 42878 对存储过程或用户自定义的 函数,CREATE或ALTER语句不正确(缺失EXTERNAL NAME 子句)
    -450 39501 存储过程或用户自定义函数写入存储器的值超过了参数声明的长度
    -451 42815 CREATE FUNCTION中指定了不正确的数据类型
    -453 42880 用户自定义函数中的RETURNS语句无效
    -454 42723 指定的函数识别标记与已存在的另一函数的识别标记冲突
    -455 42882 模式名不比配
    -456 42710 为用户自定义函数指定的函数名已经存在
    -457 42939 用户自定义函数或用户自定义类型正试图使用系统中定义的函数或者类型所用的名称
    -458 42883 没有找到函数
    -463 39001 特定的外部例程返回无效的SQLSTATE
    -469 42886 参数定义为OUT或INOUT的CALL语句必须提供宿主变量
    -470 39002 指定了NULL参数,但是该例程却不支持NULL
    -471 55023 存储过程或用户自定义函数失败:提供原因代码
    -472 24517 外部的函数程序使游标处于打开状态
    -473 42918 用户自定义数据类型命名不能和系统定义的数据类型一样
    -475 42866 结果类型不能被转换成RETURNS类型
    -476 42725 在其模式中该函数不是独一无二的
    -478 42893 不能DROP或REVOKE特定的对象,因为其他对象依赖于该对象
    -480 51030 直到存储过程已经被CALL后,DESCRIBE PROCEDURE和ASSOCIATE LOCATORS才能被发布
    -482 51030 存储过程不返回到任何一个定位器
    -483 42885 CREATE FUNCTION语句中的参数个数与源函数中的参数个数不匹配
    -487 38001 选择了NO SQL选项建立指定的存储过程或用户自定义函数,但却视图发布SQL语句
    -491 42601 CREATE FUNCTION语句无效,因为该语句没有RETURNS语句或者因为该语句没有指定有效的SOURCE或者EXTERNAL语句
    -492 42879 指定函数的指定参数的个数有错误
    -495 57051 语句的估计处理器成本超出了资源限制
    -496 51033 语句无法执行,因为当前服务器与调用存储过程的服务器不同
    -497 54041 指定的数据库超过了32767 OBID的上限,或者CREATE DATABASE语句使之达到了32511DBID的上限
    -499 24516 指定的游标已被分配到结果集,该结果集来自已经指定的存储过程
    -500 24501 因为连接被破坏,WITH HOLD游标被关闭
    -501 24501 在试图获取数据或关闭一个游标前必须打开一个游标
    -502 24502 在没有关闭游标前不能再次打开游标
    -503 42912 因为列在游标的FOR UPDATE OF语句中没有被指定,该游标用于获取该列,所以不能更新该列
    -504 34000 不能引用一个游标,因为他不是定义到程序里的
    -507 24501 在试图更新或者删除WHERE CURRENT OF前,必须打开游标
    -508 24504 因为被引用的游标当前不是处于数据行上,所以不能被更新或删除
    -509 42827 除了在游标上指定的那个表(该表由WHERE CURRENT OF语句引用的)以外,再也不能从别的表上更新数据
    -510 42828 表或视图不能被修改
    -511 42829 对不可修改的表或视图,FOR UPDATE OF语句无效
    -512 56023 对远程对象的无效引用
    -513 42924 一个别名不能再被定义成另外的别名
    -514 26501 游标尚没有被准备
    -516 26501 试图描述未准备好的SQL语句
    -517 07005 因为SQL语句尚没有准备好,游标无效
    -518 07003 试图执行尚没有准备好的SQL语句
    -519 24506 当为游标的SQL语句发布一个准备语句是,游标不能是打开的
    -525 51015 不能在已指定的程序包中执行SQL语句,因为在绑定时间内该程序包无效
    -526 42995 在给定的上下文中,不能使用全局的临时表
    -530 23503 对特定的约束名指定了无效的外健值
    -531 23504 从版本5开始,父关键字的多行更新将试图删除一个外关键字依赖的父关键字值,在版本5以前,当引用主关键值外健值当前存在时,试图更新该主健值
    -532 23504 删除操作违反了已指定的参照约束
    -533 21501 多行插入无效,试图将多行插到自我引用的表中
    -534 21502 可改变主健列值的更新语句不能在同一时刻用于更新多行
    -535 21502 当从自我引用表中删除数据或者更新主健列时,不能指定WHERE CURRENT OF。不是版本5的子系统才调用该代码
    -536 42914 因为某一特定表的参照约束存在,所以删除语句无效
    -537 42709 在外健语句或主健语句的规范中,每个列的出现不能多于一次
    -538 42830 无效的外健;不符合引用的表没有主健
    -539 42888 不能定义外健,因为被引用的表没有主健
    -540 57001 表定义不完整,直到为主健建立了唯一索引或UNIQUE语句、或者包含GENERATED BYDEFAULT属性的ROWID列
    -542 42831 可以为空的列不允许作为主健的一部分包含在内
    -543 23511 因为该表是指定了SET NULL删除规则的参照约束的父表而且检查约束不允许NULL,所以DELETE不能发生
    -544 23512 不能用ALTER添加检查约束,因为已存在的某行与该检查约束冲突
    -545 23513 INSERT或者UPDATE导致检查约束冲突
    -546 42621 在CREATE或ALTER TABLE中指定的检查约束无效
    -548 42621 因为指定的列而引起的检查约束无效
    -549 42509 DYNAMICRULES(BIND)计划或程序包的无效SQL语句
    -551 42501 用户试图对不拥有权限的特定的对象进行操作,或者表不存在
    -552 42502 用户试图执行未被授权的操作
    -553 42503 不能指定CURRENT SQLID,因为用户尚没有被允许改变那个ID
    -554 42502 不能对你本身赋予一个权限
    -555 42502 不能对你本身撤销一个权限
    -556 42504 不能撤销用户没有拥有的权限
    -557 42852 指定了不一致的授予或撤销关键词
    -558 56025 为授予或撤销语句指定了无效的语句(一个或一组)
    -559 57002 DB2权限机制已经禁用,授予或者撤销不能被发布
    -567 42501 指定的权限ID缺少对指定的程序包的绑定权限
    -571 25000 不允许多点更新
    -573 42890 不能定义参照约束,因为已指定的父表中在指定的列上没有唯一健
    -574 42864 指定的缺省与列定义冲突
    -577 38002 试图修改用户自定义函数中的数据或者存储过程中的数据,但这些对象的建立没有选择MODIFIES SQL DATA选项
    -579 38004 试图修改用户自定义函数中的数据或者存储过程中的数据,但这些对象的建立没有选择READ SQL DATA选项,也没有选择MODIFIES SQL DATA选项
    -580 42625 CASE表达式中的结果表达式不能都是空的
    -581 42804 CASE表达式中的结果表达式为不兼容的数据类型
    -582 42625 SEARCHED-WHEN-CLAUSE中的查找条件指定了一个限定的、IN或EXISTS谓词
    -583 42845 指定的函数失败,因为他不是决定性的,或者可能有外部动作
    -585 42732 在当前路径中模式名不止一次出现
    -586 42907 CURRENT PATH专用寄存器在长度上不能超过254字符
    -587 428C6 项目引用的列表必须是同一个家族
    -590 42734 在命名的存储过程或用户自定义的函数中的参数必须是独一无二的
    -592 42510 没有授权权限,让你在WLM环境中建立的存储过程或者用户自定义函数
    -601 42710 试图创建(或重命名)已经存在的对象
    -602 54008 CREATE INDEX语句中指定的列太多
    -603 23515 因为发现有重复值,所以不能建立唯一的索引
    -604 42611 在CREATE或ALTER TABLE语句中的为数据类型指定的长度、精度以及标度无效
    -607 42832 指定的INSERT、UPDATE或DELETE语句不能被发布,应为这些语句对DB2 CATLOG表执行写操作
    -611 53088 当LOCKSIZE是TABLE或者TABLESPACE时,LOCKMAX必须为0
    -612 42711 在同一个表、索引或试图中不允许有重复列名
    -613 54008 主健或UNIQUE约束太长或者包含了太多的列
    -614 54008 已经超过了索引的内部健长度的最大长度(255)限制
    -615 55006 不能删除这个程序包,因为该程序包目前正在执行
    -616 42893 指定的对象不能被删除,因为其他对象依赖于该对象
    -617 56089 对于DB2版本6,1型索引无效。对于以前的版本,1型索引不能用LOCKSIZE ROW或LARGE表空间定义
    -618 42832 对DB2 CATALOG表的请求操作时不允许的
    -619 55011 DSNDB07不能修改,除非他先被停止了
    -620 53001 对在DSNDB07中的表空间不允许指定该关键词
    -621 58001 遇到了重复的DBID,遇到了系统问题
    -622 56031 不能指定FOR MIXED DATA因为没有安装混合数据选项
    -623 55012 不能为单一的表定义多个族索引
    -624 42889 不能为单一的表定义多个主健
    -625 55014 用主健定义的表要求唯一索引
    -626 55015 不能发布ALTER语句来改变PRIQTY SECQTY或ERASE,除非先停止了表空间
    -627 55016 不能发布ALTER语句来改变PRIQTY SECQTY或ERASE,除非先把表空间定义为使用存储器组的表空间
    -628 42613 指定语句时相互排斥的(例如,不能分区一个分段的表空间)
    -629 42834 因为该外健不能包含空值,所以SET NULL无效
    -630 56089 不能为1型索引指定WHERE NOT NULL
    -631 54008 无效的外健;要么是比254个字节长,要么包含的列数多于40
    -632 42915 指定的删除规则禁止把这个表定义为已制定表的从属表
    -633 42915 无效删除规则;必须使用特定的强制删除规则
    -634 42915 在这种情况下,DELETE CASCADE不允许
    -635 42915 删除规则不能有差异或者不能为SET NULL
    -636 56016 在分区索引健的升序或降序规范中,分区所以必须与该规范一致
    -637 42614 遇到重复的关键词
    -638 42601 在CREATE TABLE语句中缺少列定义
    -639 56027 带有SET NULL的删除规则的外健的可空列不能是分区索引的列
    -640 56089 不能为这个表空间指定LOCKSIZE ROW,因为在该表空间中的表上定义了1型索引
    -642 54021 唯一约束包含太多的列
    -643 54024 检查约束超出了3800个字符的最大长度
    -644 42615 在SQL语句中为关键词指定的值无效
    -646 55017 在指定的分区表空间或者缺省表空间中不能创建表,因为指定的表空间已经包含了一个表
    -647 57003 指定的缓冲池无效,因为他没有被激活
    -650 56090 ALTER INDEX不能被执行;提供了原因代码
    -651 54025 如果CREARE或ALTER TABLE被允许,表对象的描述词(object descriptor,OBD)将超过最大值(32KB)
    -652 23506 遇到了EDITRPROC或VALIDPROC冲突
    -653 57004 在分区表空间中的表不可用,因为分区索引尚未被创建
    -655 56036 在卷的列表中,STOGROUP不能指定为特定的或不特定(“*”)的卷
    -658 42917 当试图删除指定的对象时,无法删除该对象,该对象的删除必须通过删除与之相关联的对象完成
    -660 53035 不正确的分区索引规范,必须为族索引定义有限制的关键字
    -661 53036 分区索引没有指定恰当的分区数目
    -662 53037 试图在未分区的表空间(分段的或简单的)上建立分区索引
    -663 53038 为分区索引指定的关键字限制值是一个无效数字
    -665 53039 为ALTER TABLESOACE语句指定了无效的PART语句
    -666 57005 SQL语句不能被处理,因为指定的函数当前正处于进行过程中
    -667 42917 不能明确的删除分区表空间的族索引,必须除去分区表空间来去掉分区索引
    -668 56018 不能向用EDITPROC定义的表中添加列
    -669 42917 不能显式的删除分区表空间中的表,必须删除分区表空间来删除表
    -670 54010 表的记录长度超过了页面的大小
    -671 53040 不能更改指定的表空间的缓冲池,因为这将改变表空间的页面大小
    -672 55035 在命名的表上不允许DROP
    -676 53041 只有4KB的缓冲池可被用于一个索引
    -677 57011 缓冲池扩展失败,由于可用的虚拟内存的大小不足
    -678 53045 为才分区索引中指定的限制健提供的值与数据类型不符
    -679 57006 不能创建某一个特定对象,因为该对象的一个drop目前正在挂起
    -680 54011 对DB2表不能超过750列
    -681 23507 列违反了指定的FIELDPROC
    -682 57010 不能载入FIELDPROC
    -683 42842 列、单值类型、函数或者过程无效,因为不兼容语句。例如,指定的INTEGER具有FORBITDATA选项
    -684 54012 指定的文字列表不能超过254个字节
    -685 58002 FIELDPROC返回一个无效的域描述
    -686 53043 用FIELDPROC定义的一个列不能与一个使用不同的FIELDPROC定义的列作比较
    -687 53044 列不能与一个非兼容字段类型的列比较
    -688 58002 返回不正确的数据
    -689 54011 从属表定义了太多的列
    -690 23508 数据定义的控制支持拒绝这个语句
    -691 57018 命名的注册表不存在
    -692 57018 命名的索引不存在,但命名的注册表需要该索引
    -693 55003 命名的注册表/索引的命名列无效
    -694 57023 DROP正在命名的注册表上挂起
    -696 42898 由于相关的名字或者转换表的名字使用不正确,指定的触发器无效
    -697 42899 FOR EACH语句被指定,因此与OLD合NEW相关的名字是不允许的,或者不能为一个BEFORE触发器指定OLD_TABLE和NEW_TABLE
    -713 42815 指定的专用寄存器是无效的
    -715 56064 命名的程序不能被运行,因为他依赖与你所安装的DB2版本的部件,但是你的数据中心没有安装这个部件
    -716 56065 命名的程序使用这个版本的不正确的发行版本做了预编译
    -717 56066 BIND失败,因为他依赖与你所安装的DB2版本的部件,但是你的数据中心没有安装这个部件
    -718 56067 REBIND失败,因为IBMREQD列无效
    -719 42710 不能BIND ADD一个已经存在的程序包
    -720 42710 不能BIND REPLACE一个已经存在的程序包版本
    -721 42710 程序包的一致性记号必须是独一无二的
    -722 42704 绑定错误,因为指定的程序包不存在
    -723 09000 一个触发的SQL语句接受到一个错误
    -724 54038 达到了(16)级联间接的SQL语句的最大项目
    -725 42721 对专门指定的寄存器提供了一个无效值
    -726 55030 因为SYSPKSYSTEM条目,不能绑定这个程序包
    -728 56080 指定的数据类型不能与私有协议发布一起使用
    -729 429B1 用COMMIT ON RETURN定义的存储过程不能用作嵌套的CALL过程的目标
    -730 56053 在只读的共享数据库中为表定义的参照完整性无效
    -731 56054 VSAM数据集必须用SHAREOPTION(1.3)定义
    -732 56055 被定义为只读型数据库却拥有没有定义空间或者索引空间的DB2子系统
    -733 56056 只读共享数据库的定义不一致
    -734 56057 一旦一个数据库被定义为ROSHARE READ,他将不能被更改为其他不同的ROSHARE状态
    -735 55004 用DBID名称标识的数据库不再是一个只读共享数据库
    -736 53014 命名的DBID无效
    -737 53056 在这种状况下,不能建立一个隐含的表空间
    -739 56088 因为同时指定了ALLOW PARALLEL和MODIELES SQL DATA这两个语句,因此已设定的函数将不能再被更改
    -740 51034 在这种方式下不能用MODIELES SQL DATA定义指定的函数
    -741 55030 已经为命名的共享组成员的数据定义了工作文件数据库
    -742 53004 DSNDB07是隐含的工作文件数据库
    -746 57053 在特定的触发器、存储过程或函数中的SQL语句违反嵌套SQL限制
    -747 57054 指定的表是不可用的除非为LOB数据列建立起必须的辅助表
    -748 54042 在指定的辅助表上已经有一个索引
    -750 42986 不能对已指定的表重新命名,因为他至少在一个现存的视图或触发器中被引用
    -751 42987 存储过程或用户自定义的函数试图执行一个不允许执行的SQL语句。DB2的线程被置于MUST_ROLLBACK状态
    -752 0A001 无效CONNECT语句
    -763 560A1 无效的表空间名
    -764 560A2 LOB表空间必须与其相关的基表空间同在一个数据库中
    -765 560A3 表和数据库不兼容
    -766 560A4 不能对辅助表进行请求的操作
    -767 42626 CREATE INDEX失败,因为在辅助表中为索引指定了列,或者因为没有为非辅助表的索引指定列
    -768 560A50 不能为指定的列或者指定的分区建立辅助表,因为其辅助表已经存在
    -769 53096 CREATE AUX TABLE的规格与基表不匹配
    -770 530A6 指定的表必须有一个ROWID列,那么该表才可以包含一个LOB列
    -771 428C7 无效的ROWID列规范
    -797 42987 CREATE TRIGGER包含不被支持的语法
    -798 428C9 不能把一个值插入到用GENERATED ALWAYS定义的ROWID列
    -802 22012 某一特定操作发生了异常错误。被零除
    22003 某一特定操作发生了异常错误。但不是被零除
    -803 23505 不能插入行,因为这将违反唯一索引的约束
    -804 07002 SQLDA的调用参数列表有误
    -805 51002 在计划中没有发现DBRM或程序包名
    -807 23509 对已指定的环境和连接,该程序包不可用
    -808 08001 CONECT语句与程序中的第一个CONNECT语句不一致
    -811 21000 当多行作为一内嵌的选择语句的返回结果是,必须使用游标
    -812 22508 在CURRENT PACKAGESET中的ID集合是空白的,语句不能被执行
    -815 42920 在一个内置选择语句或者一个基本谓词的子查询中,显式的或隐含的指定了GROUP BY或HAVING语句
    -817 25000 执行SQL语句将可能导致禁止更新用户数据或DB2编目
    -818 5103 计划<->载入组件的时间戳不匹配,在执行计划中没有从同一个预编译中建立DBRM,该预编译是作为组件载入的
    -819 58004 视图不能重建,因为在DB2编目中存储的分析树长度为0
    -820 58004 在这个DB2版本的DB2编目中遇到了无效值
    -822 51004 在SQLDA中遇到了无效地址
    -840 54004 在选择列表或插入列表中返回的项目太多
    -842 08002 到指定位置的连接已经存在
    -843 08003 SET CONNECTION或RELEASE语句无法执行,因为连接不存在
    -870 58026 宿主变量描述符的个数不等于语句中宿主变量的个数
    -872 51302 这个子系统已指定了有效的CCSID
    -873 53090 同一SQL语句中,不能同时引用EBCDIC表中的定义的列和ASCII表中定义的列
    -874 53901 指定对象的编码方案与其表空间的编码方案不匹配
    -875 42988 指定的操作符不能用于ASCII数据
    -876 53092 不能为指定的原因创建对象:提供了原因代码
    -877 53093 数据库或表空间不允许用ASCII,必须使用EBCDIC
    -878 53094 该PLAN——TABLE不能是ASCII,必须使用EBCDIC
    -879 53095 指定对象的CREATE或ALTER语句不能将列、单值类型,某个存储过程或用户自定义函数的参数定义为以下类型:MAXED DATA,GRAPHIC,VARGRAPHIC,LONGVARGRAPHIC,因为系统没有为指定的编码方案定义相应的CCSID
    -900 08003 应用处理没有连接到应用服务器,语句不能被执行
    -901 58004 遇到时断时续的系统错误,该错误不能抑制后继的SQL语句的执行
    -902 58005 内部控制块的指针错误,要求重新绑定
    -904 57011 指定的资源不可用
    -905 57014 超出了资源上限
    -906 51005 因为重大错误,SQL语句无法执行
    -908 23510 当前资源限制设施的规范或者自动重绑定的系统参数不允许BIND,REBIND,AUTOREBIND
    -909 57007 对象已被删除
    -910 57007 因为在该对象上挂起DROP,所以不能访问该对象
    -911 40001 当前工作单元已被回滚
    -913 57033 因为死锁或超时导致不成功执行
    -917 42969 绑定程序包已经失败
    -918 51021 SQL语句不能被执行,因为连接丢失
    -919 56045 需要一个ROLLBACK
    -922 42505 连接权限失败。试图从TSO、CICS或IMS访问DB2,同时相应的连接设施处于非活动的状态
    -923 57015 因为DB2不可用,所以不能建立连接
    -924 58006 遇到了DB2内部的连接错误:提供了原因代码
    -925 2D521 SQL的COMMIT语句不能从CICS或IMS/TM发布
    -926 2D521 SQL的ROLLBACK语句不能从CICS或IMS/TM发布
    -927 51006 当正在连接的环境没有建立时,语言接口被调用。利用DSN命令激发该程序
    -929 58002 数据获取退出已经失败(DPROP)
    -939 51021 由于远程服务器的未请求的回滚,要求一个回滚
    -947 56038 SQL语句失败,因为更新不能被传播(DPROP)
    -948 56062 DDF没有启动,分布式操作无效
    -950 42705 在SQL语句中指定的位置在SYSIBM.LOCATIONS中没有定义
    -965 51021 存储过程非正常终止(在DB2 6之前的版本)
    -981 57015 当前不是处于允许SQL的状态时,试图在RRSAF中执行SQL
    -991 57015 调用连接不能建立一个到DB2的隐含或开放连接
    -2001 53089 为储存过程指定的宿主变量参数的个数不等于预期的参数个数
    -20003 560A7 不能为GRECP中的表空间或索引指定GBPCACHE NONE
    -20004 560A8 对于WORKFILE对象。8KB或16Kb的缓冲池页面大小无效
    -20005 54035 指定的对象类型超出了内部的ID极限
    -20006 53097 当没有指定WLM环境时,LOB不能被指定为参数
    -20070 53098 不能非LOB列建立一个辅助表
    -20071 53099 必须指定WLM环境名
    -20072 56052 指定的权限ID不拥有在触发器程序包上执行BIND所需的权限
    -20073 42927 不能按照指定的要求更改命名的函数,因为在现存的视图定义中引用了该函数
    -20074 42939 不能建立指定的对象,因为“SYS”是一个保留的前缀
    -20100 56059 在被触发的SQL语句中有BIND错误,指定了错误的SQLCODE和SQLSTATE
    -20101 56059 由于指定的原因代码,该函数失败
    -20102 42849 在CREATE或ALTER FUNCTION语句中不能使用指定的选项
    -20104 42856 更改一个CCSID失败
    -20106 42945 不能改变表空间或数据库的CCSID,因为现存的试图引用
    -30000 58008 DRDA分布协议错误;处理可以继续
    -30002 57057 使用DRDA的分布式客户把OPEN语句连接到PREPARE,但PREPARE接受到一个SQLCODE为+495的警告
    -30020 58009 DRDA分布协议错误;对话被解除
    -30021 58010 DRDA分布协议错误;处理不能继续
    -30030 58013 违反分布协议:COMMIT不成功,对话被解除(AS)
    -30040 57012 因为不能得到资源,执行失败,处理可以继续(AS)
    -30041 57013 因为不能得到资源,执行失败,处理不能成功的继续(AS)
    -30050 58011 执行不成功,在BIND过程中不能执行语句
    -30051 58012 特定的BIND过程不是处于活动状态(远程BIND),从而导致失败
    -30052 42932 程序准备的假设错误
    -30053 42506 程序包的拥有者遭遇授权失败
    -30060 08004 RBD遭遇授权失败
    -30061 08004 指定了无效或者没有存在的RDB
    -30070 58014 目标子系统不支持这个命令
    -30071 58015 目标子系统不支持这个对象
    -30072 58016 目标子系统不支持这个参数
    -30073 58017 目标子系统不支持这个参数值
    -30074 58018 应答信息不被支持
    -30080 08001 SNA通信错误
    -30081 58019 TCP/IP通信错误
    -30082 08001 由于安全冲突、通信失败:提供了原因代码
    -30090 25000 指定的操作对远程执行失败
    -30104 56095 在绑定选项与绑定值中有错误
    -30105 56096 指定的绑定选项不兼容
    展开全文
  • 数据库管理系统

    千次阅读 2018-10-24 00:14:00
    一、数据库管理系统的基本功能 数据库管理系统主要是实现对共享数据有效的组织、存储、管理和存取。围绕数据,数据库管理系统的功能为: 1、数据库定义和创建 创建数据库主要是用数据定义语言定义和创建数据库模式、...
  • Java知识体系最强总结(2021版)

    万次阅读 多人点赞 2019-12-18 10:09:56
    更新于2019-12-15 10:38:00 本人从事Java开发已多年,平时有记录问题解决方案和总结知识点的...特此分享给大家,本人见识有限,写的博客难免有错误或者疏忽的地方,还望各位大佬指点,在此表示感激不尽。 文章目录...
  • 数据库原理》— 数据库系统概论第五版习题解析

    万次阅读 多人点赞 2017-05-29 14:57:48
    数据库系统概论前七章习题解析 第1章绪论 1.试述数据、数据库数据库系统、数据库管理系统的概念。答: (l)数据(Data):描述事物的符号记录称为数据。数据的种类有数字、文字、图形、图像、声音、正文等。...
  • http协议常见错误状态码 总结: 2xx - 成功。表示服务器成功地接受了客户端请求。 3xx - 重定向。表示要完成请求,需要进一步操作。客户端浏览器必须采取更多操作来实现请求。例如,浏览器可能不得不请求服务器上的...
  • Oracle数据库错误码大全

    千次阅读 2015-11-18 10:41:42
    ORA-00319: 日志 (线程 ) 具有错误的日志重置状态 ORA-00320: 无法从日志 (线程 ) 读取文件标题 ORA-00321: 日志 (线程 ),无法更新日志文件标题 ORA-00322: 日志 (线程 ) 不是当前副本 ORA-00323: 线程 的...
  • 105 插入0行记录 106 更新0行记录 107 跨语句游标操作 108 回收权限时无相应权限 109 试图转换空字符串 110 编译没有结束 111 结果集数据获取完成 112 不支持UTF8 113 结果集缓存满 114 刻度截断 115 不完整的字符 ...
  • Oracle数据库错误代码大全总结

    千次阅读 2018-09-03 14:03:38
    ORACLE数据库错误代码大全总结 ORA-00001: 违反唯一约束条件 (.) ORA-00017: 请求会话以设置跟踪事件 ORA-00018: 超出最大会话数 ORA-00019: 超出最大会话许可数 ORA-00020: 超出最大进程数 () ORA-00021: ...
  • 错误码: 100 空结果集 101 字符串截断 102 在集函数中计算NULL值 103 无效的表名 104 删除0行记录 105 插入0行记录 106 更新0行记录 107 跨语句游标操作 108 回收权限时无相应权限 109 试图转换空字符串 110 编译...
  • CI框架获取数据库错误码

    千次阅读 2016-03-18 18:30:09
    开发中长会碰到用数据库唯一索引控制数据的重复插入处理,这时就会用到根据错误代码来判断并处理程序。 在CI中通过以下方法获取信息 $this->db->_error_number(); //获取错误码$this->db->_error_message(); /...
  • 数据库系统概论》复习

    千次阅读 多人点赞 2019-05-27 12:13:27
    数据库系统概论》复习 第一章 绪论 1.1 数据库系统概述 1、数据库系统的四个基本概念 数据(Data):描述事物的符号记录称为数据,数据是数据库存储的基本对象。 数据库(DB):长期存储在计算机内、有组织的...
  • 2021年前端面试题及答案

    万次阅读 多人点赞 2020-02-11 19:29:34
    前端http相关问题 1 HTTP常用状态码及其含义? 1xx:指示信息--表示请求已接收,继续处理 100 Continue 初始的请求已经接受,客户应当继续发送请求的其余部分。(HTTP 1.1新) 101 Switching Protocols 服务器将...
  • 参考教材:数据库系统概论 第五版(王珊萨师煊版本) 文章目录1. 绪论1.1. 数据库系统概述1.2. 什么是数据管理1.3. 数据库系统与人工管理、文件系统比1.4. 数据库系统特点1.5. 数据模型1.6. 数据库系统模式的概念...
  • 测试开发笔记

    万次阅读 多人点赞 2019-11-14 17:11:58
    CMM与CMMI的区别 23 第五章 SQL 24 约束: 29 1主键约束 29 2 非空约束 not null 30 3 外键约束 FOREIGN KEY 30 4 默认约束 31 5 检查约束 check 31 6 唯一约束 unique 32 SQL语句 32 创建数据库. 32 表、字段、...
  • 另外,MyBatis也可以替换Hibernate,正因为MyBatis的半自动特点,我们程序猿可以完全掌控SQL,这会让有数据库经验的程序猿能开发出高效率的SQL语句,而且XML配置管理起来也非常方便。 好了,如果你也认同我的看法,...
  • MySQL如何使用

    千次阅读 多人点赞 2019-02-20 21:19:25
    大部分网站都要用到数据库,其中较为常见的是mysql,其他数据库大同小异,这里我就以mysql为例,在Ubuntu lts 18.04中讲讲如何使用数据库。 首先是搭建mysql环境,Ubuntu使用apt安装就行了。 # apt install mysql-...
  • 基于SSM的校园二手交易平台的设计与实现

    万次阅读 多人点赞 2018-05-06 14:24:44
    数据库:MySQL 框架:Spring + Spring MVC + MyBatis 服务器:Tomcat 前端解析框架:Thymeleaf 开发工具:Idea 2017 版本管理工具:Maven 版本控制工具:GitHub 下载地址:...
  • PostgreSQL 数据库错误代码解释

    千次阅读 2019-11-28 09:48:03
    PostgreSQL服务器发出的所有消息都赋予了五个字符 的错误代码, 这些代码遵循 SQL 的"SQLSTATE"代码的习惯。需要知道发生了什么错误条件的应用通常应该测试错误代码, 而不是查看文本错误信息。这些错误 代码轻易...
  • 离散数学在计算机科学中的应用

    万次阅读 多人点赞 2018-02-03 11:56:44
    一个典型的编译程序一般都含有八个部分:词法分析程序、语法分析程序、语义分析程序、中间代码生成程序、代码优化程序、目标代码生成程序、错误检查和处理程序、各种信息表格的管理程序。离散数学里的计算模型章节里...
  • JavaWeb

    千次阅读 多人点赞 2017-12-26 09:09:24
    通过response设置状态码:setStatus(int status); 通过response设置响应头:setHeader(String name,String value); 通过response设置响应体:getOutputStream(),getWriter(); 文件下载: 设置两个头...
  • boost库asio错误码

    千次阅读 2018-10-24 16:53:55
    boost库asio常见错误码 boost::asio::error::bad_descriptor (10009) 在一个已经关闭了的套接字上执行async_receive() boost::asio::error::operation_aborted (995) 正在async_receive()异步任务等待时,本端关闭...
  • C#基础教程-c#实例教程,适合初学者

    万次阅读 多人点赞 2016-08-22 11:13:24
    中间语言代码不是CPU可执行的机器,在程序运行时,必须由通用语言运行环境(Common Language Runtime,CLR)中的既时编译器(JUST IN Time,JIT)将中间语言代码翻译为CPU可执行的机器,由CPU执行。CLR为C#语言中间...
  • oracle数据库错误码一览表

    千次阅读 2012-10-15 20:51:26
     DB_BLOCK_SIZE 必须为才可安装此数据库(非 ) ORA-00059:  超出 DB_FILES 的最大值 ORA-00060:  等待资源时检测到死锁 ORA-00061:  另一个例程设置了不同的 DML_LOCKS ORA-00062:  无法获得 ...
  • 达梦数据库密码参数、会话参数

    千次阅读 2020-07-26 22:52:22
    这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、...
  • Microsoft SQL Server 数据库 错误号大全

    千次阅读 2019-07-17 00:16:34
    panchzh :Microsoft SQL Server 数据库 错误号大全0 操作成功完成。 1 功能错误。 2 系统找不到指定的文件。 3 系统找不到指定的路径。 4 系统无法打开文件。 5 拒绝访问。 6 句柄无效。 7 存储控制块被损坏。 8 ...
  • 数据库系统概论第五版 课后习题答案王珊

    万次阅读 多人点赞 2020-01-11 14:15:14
    试述数据、数据库数据库系统、数据库管理系统的概念。 答: ( l )数据( Data ) :描述事物的符号记录称为数据。数据的种类有数字、文字、图形、图像、声音、正文等。数据与其语义是不可分的。解析在现代计算机...
  • 数据库概论总结

    万次阅读 2018-07-11 18:05:12
    数据库 绪论 数据管理的三个阶段 人工管理阶段 文件系统阶段 数据库系统阶段 基本术语 数据(Data) 计算机用来描述事物的记录(文字.图形.图像.声音) 数据的形式本身并不能完全表达其内容,需要...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 92,709
精华内容 37,083
关键字:

数据库插入错误状态码