"无效的描述符索引"解决方法

一、读取信息的顺序不一致

原因:这也是最容易犯的错误,主要是由于用户在编程环境里面引用的字段顺序与数据库建表的字段顺序不一致导致:

下面是网友的几种解决方案:

网友1:

Microsoft][ODBC SQL Server Driver]无效的描述符索引问题的解决
在jsp对sqlserver数据库进行数据读取的时候,
必须按照表中列名的顺序读取,否则会出现错误

取数据的时候要按照数据库字段的顺序来取
比如数据库 varchar id
          varchar name
          varchar address

取的时候一定要按下面顺序来取:
        rs.getString("id")
        rs.getString("name")
        rs.getString("address")

另外在 vc 中,会生成一个 基于 CRecordSet 的类,在 ***View 中有一个该类型的指针 m_pSet ,在用这个指针

open(strSQL)的 时候,会报错:无效的描述符索引。这还可能是你的 SQL 语句中 SELECT 的字段与

m_pSet 的域变量个数不一致造成的。(当然,前面说的顺序问题也是一个问题)。

 

网友2:

TOMCAT日志报告“无效的描述符索引”,引起这个问题主要原因是连接数据库的时候指针指向错误的列名。

解决办法:在这样的类里,肯定涉及到了数据库的操作,只要把数据库检索的列与下面要使用的列,顺序一一对应即可。

注:最近发现在写纯java程序的时候,编译运行,在命令提示符下也会报告这个错误,看来这个错误不是tomcat的原因,应该是java jdk引起的。如果使用的web 服务器是IBM WebSphere,则不会出现这个错误。

 

网友3:

问题:org.apache.jasper.JasperException: [Microsoft][ODBC SQL Server Driver]无效的描述符索引  

 

org.apache.jasper.JasperException: [Microsoft][ODBC SQL Server Driver]无效的描述符索引
弄了大半天搞得郁闷。终于明白是怎么回事。。

原来是用rs.getXXXX()取字段值时,必须按照select 语句得到的顺序取数据,就这么一点小问题。唉。。。

 

 

二、MFC在添加CRecordset派生类时默认选择了(Bind All Column)

原因:这个是网友最不容易发现和避免的错误,就是在MFC编程时通过"建立类向导"来添加CRecordset派生类时,容易容易忽略的问题:如图

 

网友1:

我用的是sql server2012,用CDataBase类打开一个数据库,用CRecordset的派生类来操作数据,注意了,在添加CRecordset的派生类时选择ODBC数据源时有三个选项"动态集","快照",“绑定所有列”,注意,这个绑定所有列不打勾,你用GetFieldValue就不会报那样问题了,我觉得选择了绑定所在列就意味着你选择了他提供的数据交换功能来访问数据,我这程序还有其他问题,到时有别的发现再来改正

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Microsoft Windows 系统错误代码简单分析:   0000 操作已成功完成。   0001 错误的函。   0002 系统找不到指定的文件。   0003 系统找不到指定的路径。   0004 系统无法打开文件。   0005 拒绝访问。   0006 句柄无效。   0007 存储区控制块已损坏。   0008 可用的存储区不足, 无法执行该命令。   0009 存储区控制块地址无效。   0010 环境错误。   0011 试图使用不正确的格式加载程序。   0012 访问代码无效。   0013 无效。   0014 可用的存储区不足,无法完成该操作。   0015 系统找不到指定的驱动器。   0016 无法删除该目录。   0017 系统无法将文件移到其他磁盘驱动器上。   0018 没有其他文件。   0019 媒体写保护。   0020 系统找不到指定的设备。   0021 设备尚未准备好。   0022 设备无法识别该命令。   0023 据错误(循环冗余检查)。   0024 程序发出命令,但是该命令的长度错误。   0025 驱动器在磁盘上无法定位指定的区域或磁道。   0026 无法访问指定的磁盘或软盘。   0027 驱动器找不到所请求的扇区。   0028 打印机缺纸。   0029 系统无法写入指定的设备。   0030 系统无法读取指定的设备。   0031 与系统连接的设备不能正常运转。   0032 其他进程正使用该文件,因此现在无法访问。   0033 另一进程已锁定该文件的某一部分,因此现在无法访问。   0034 驱动器中的软盘不正确。请将 %2 (卷标序列号: %3)插入驱动器 %1。   0036 打开共享的文件太多。   0038 已到达文件结尾。   0039 磁盘已满。   0050 不支持此网络请求。   0051 远程计算机无法使用。   0052 网络中存在重名。   0053 找不到网络路径。   0054 网络正忙。   0055 指定的网络资源或设备已不可用。   0056 已经达到网络命令的极限。   0057 网络适配器出现错误。   0058 指定的服务器无法执行所请求的操作。   0059 网络出现意外错误。   0060 远程适配器不兼容。   0061 打印机队列已满。   0062 服务器上没有存储等待打印的文件的空间。   0063 已经删除等候打印的文件。   0064 指定的网络名无法使用。   0065 拒绝访问网络。   0066 网络资源类型错误。   0067 找不到网络名。   0068 已超过本地计算机网络适配器卡的名称极限。   0069 已超过网络 BIOS 会话的极限。   0070 远程服务器已经暂停或者正在启动过程中。   0071 由于该计算机的连接目已达到上限,此时无法再连接到该远程计算机。   0072 指定的打印机或磁盘设备已经暂停。   0080 该文件存在。   0082 无法创建该目录或文件。   0083 INT 24 失败。   0084 处理该请求的存储区不可用。   0085 正在使用该本地设备名。   0086 指定的网络密码不正确。   0087 参错误。   0088 网络出现写入错误。   0089 此时系统无法启动其他进程。 0100 无法创建其他系统标志。   0101 属于其他进程的专用标志。   0102 标志已经设置, 无法关闭。   0103 无法再次设置该标志。   0104 中断时无法请求专用标志。   0105 此标志先前的所有权已终止。   0106 请将软盘插入驱动器 %1。   0107 后续软盘尚未插入,程序停止。   0108 磁盘正在使用或已由其他进程锁定。   0109 管道已经结束。   0110 系统无法打开指定的设备或文件。   0111 文件名太长。   0112 磁盘空间不足。   0113 没有其他可用的内部文件标识符。   0114 目标内部文件标识符不正确。   0117 该应用程序所运行的 IOCTL 调用
25312 提高了面板的打开速度,例如“属性”和“视图配置”面板。 26036 修改了引脚映射器中的据列排序,以匹配网络名称和引脚编号顺序。 26554 修复了按组件容差排序后,Explorer面板中显示错误组件参的问题。 26927 改进了滚动条的UI动作(在面板,网格,对话框中),使它们更易于使用。 27405 修复了访问多维组时出现“变量或安全索引超出范围”错误消​​息的问题。 27113 修复了在删除VCS Provider-GIT服务时尝试检出时引发异常的问题(BC:9551)。 27906 修复了以下问题:“属性”面板中的修改字段值(在SCHDOC或SCHLIB上编辑对象时),如果当前所选项目已更改为另一个项目,或取消选择(BC:9641)。 27975 改善了多板装配中板组件和外部零件之间的移动和锁定行为。 28216 修复了.PrjPCB文件中克隆变体复制UniqueID导致具有相同足迹的备用零件的无限ECO循环参的错误。 28304 更新登录下拉菜单UI以提供所有可用的托管内容服务器。 28482 减少和优化系统注册表的查询量(BC:9106)。 28582 更新了“打开项目”对话框,从文件浏览器到对话框,以访问所有项目源,包括托管项目。 28907 添加了新的“创建项目”对话框,简化了项目目标位置和应用模板的选择。 29828 修复了导致对关联服务器进行多次重新连接尝试的无效会话ID错误。 29880 名称Design Workspace已更改为Project Group,以避免与新的云工作区混淆。已保存的项目组保留了* .DsnWrk文件扩展名。 据管理 21617 修改了ActiveBOM中的“过滤器编辑器”对话框UI。 22430 添加了在组件编辑器,资源管理器和ActiveBOM中为托管组件设置制造商零件选择排名的功能。 22653 将供应商部件号和制造商部件号的检索更改为批处理模式,以防止与BOM报告,SchLib编辑器和带有活动物料清单的OutJob中的顺序单个据请求相关的延迟。 22982 修复了“据管理 - 首选项的服务器”页面中的问题,该页面在未进行任何更改时标记为已修改。 23120 恢复了“发布文档到”功能,以便从Explorer面板发布已发布的文档。 23348 在BOM报告中实施BOM文档过滤器选项。 23824 导入排名功能现在支持手动解决方案。将组件的手动解决方案从一个项目BOM导入另一个项目。 23999 修复了项目属性的变化未传递到BOM输出的问题(BC:9580 ; 7072)。 24029 向云组件据添加了新的“供应商包装”参,以区分制造商的“包装”参(BC:8063 ; BC:8986)。 24443 解决了BOM过滤选项在设计项量增加或减少后发生变化的问题(BC:5572)。 24619 在BOM报告和BOM集中引入了对ActiveBOM过滤器选项的支持。 24832 修复了在“首选项”中更改“部件提供者”位置时,BOM文档中的“部件供应商”未动态更新的问题。 24844 添加了在ActiveBOM中直接更改组件源(设计项)的功能,如在项目管理器中。 24876 为ActiveBOM解决方案添加了新的创建/编辑制造商链接功能(BC:9437)。 25271 添加了在未安装MS Office时以xls / xlsx格式导出BOM的功能(BC:4646)。 25441 修复了PCB 3D打印输出的打印预览为空白的问题。 25760 使用ActiveBOM文档时,粘贴功能已得到改进,并且至少选择了一个目标单元格。 25801 修复了无法在“存储”面板(BC:8643)中成功重命名设计文件的问题。 26014 修复了SVN连接错误问题,其中在重新启动软件后无法提交创建的SVN v1.9文件存储库。 26111 解决了当PC屏幕缩放设置为125%时,“项目发布选项”对话框中无法显示大量列出的OutJobs的问题。 26133 在Explorer面板中搜索受管组件时,“Resistor”部件类型的已还原过滤器选项。 26267 已解决BOM报告中指定参类型优先级的问题。 26496 尝试从单组件编辑器编辑特定组件占用空间时出现已解决的异常错误。 26699 已解决的问题,其中Vault 3.0中的现有部件请求未显示在“资源管理器”面板中。 26967 解决了Project Releaser的问题,如果任何参之间的唯一区别是存在特殊字符(_,&,\等),则发布会产生“相同的密钥”错误。 27026 修复了组件的符号和占用空间之间的区分大小写的问题。将组件释放到服务器时,引脚名称会导致多个错误。 27048 将供应商包装据添加到制造商零件搜索UI作为详细信息部分中的参条目(BC:8986 ; BC:8063)。 27064 已解决的问题,如果在组件值参中使用了希腊字符,则BomDoc行号为空。 27268 修复了“属性”面板中的错误,该错误导致NEXUS Server托管组件的“无法在可用库中找到组件”错误,该组件也损坏了引用。 27404 修复了从服务器更新组件据时由于过多的据请求导致的ActiveBOM延迟问题。 27535 修复了BOM报表中组件的供应商链接顺序与该组件的供应商链接参的实际顺序(BC:9691)不匹配的问题。 27714 修复了BOM报告问题,其中“包含服务器参”功能将不同的供应商返回到组件“属性”中指定的供应商。 27959 修复了目标SVNDbLib缓存文件夹路径缺少导致SVN进程失败的'\'字符的回归。 28081 修复了在准备据期间发生的项目发布器中的“在000000010DA15E92处发生了一个或多个错误”的错误。 28291 BOM报告首选项中添加了“在消息面板中报告BOM违规”选项。 28443 将“带有ActiveBOM文档的BOM检查”项添加到“验证输出”菜单中。 28448 “缓存文件夹”选项已添加到“首选项”对话框的“据管理 - SVN库”页面(BC:1195)。 29089 Altium Infrastructure Server Packager现在可以正确使用部署包的更新首选项。 29090 安装期间不再需要Altium Infrastructure Server部署包(BC:8488)。 29809 固定组件面板错误,在执行基于文件的库搜索后无法重新打开所选组件类别。 进口商/出口商 17619 修复了导致P-CAD导入导出错误和PCAD16LD.DLL访问冲突的错误。 24746 修复了导入xDxDesigner项目时未正确转换总线的问题。 25221 更新了xDxDesigner导入器,改进了层和连接的解释以及Net Labels的对齐。 25427 DXF导入现在可以正确支持样条线对象并创建相应的多边形对象。 25959 解决了导入xDX Designer项目时未转换某些组件的问题。 27588 修复了在使用多部件组件导入特定xDxDesigner设计期间发生“访问冲突”的问题。 28014 修复了远征导入器中的一个错误,其中仅为特定项目导入了顶层和底层。 28735 P-CAD Importer现在可以正确导入连接和端口(BC:9577)。 29014 改进的Eagle进口商,包括许多修复; 分层块,板轮廓,图层分配和对象形状。 28067 在字符串对象中使用多行文本时,生成IPC-2581输出不再导致访问冲突(BC:10407)。 30293 添加了新扩展 - Ansys EDB Exporter。安装后,使用File> Export> Ansys EDB在PCB Editor中访问。 起草者 15059 添加了新的Board Region View对象,以显示Draftsman文档中的板堆叠区域。 16063 在Draftsman自定义表(BC:7698)中添加了对特殊字符串的支持。 18439 向Draftsman添加了板3D逼真3D视图对象(BC:6991)。 18441 添加了绑定到圆弧和圆弧中心的Draftsman Center Mark对象(BC:9029)。 18756 修复了刚度Flex设计在等轴测视图和具有真几何的Board装配视图中显示不正确的问题。 22669 改进了Dimension对象点的捕捉行为。 24616 修复了(特定用户的设计)导出到PDF (BC:9184)后出现“绘图员文档已过期”的冗余警告消息的问题。 25766 添加了在Draftsman Board Assembly和Fabrication视图中选择显示的图层叠加层的功能。(BC:6910 ; BC:7716)。 25779 在Draftsman中添加了新的传输线结构表对象,该对象填充了来自层堆栈管理器的阻抗计算据。 25784 添加了绘图符号对象,用于表示焊接和粘合点。 25785 改进了在Draftsman中添加文本的过程,只需单击鼠标即可在默认文本框中添加默认文本。 25786 为Draftsman添加了新类型的Sheet Number参,允许GOST兼容的纸张编号。 26114 修复了移动或调整大小的Draftsman图形对象可以折叠为单行的问题(BC:9471)。 26164 修复了由PCB库更新引起的PCB中3D体位置的变化未更新到Draftsman中的电路板视图的问题。 26266 修复了在单击表格单元格时,Space Navigator无法放大Draftsman文档的问题。 26443 修复了一个问题,即在重命名相关的PCB文档后,Draftsman会崩溃。 26542 修复了回归,其中未选择丝网印刷图形的组件的装配视图中缺少阴影线(BC:9416)。 26867 修复了回归,其中没有显示缺少3D体的Not Fitted组件的阴影线。 26934 解决了从OutJob生成PDF输出时性能下降的问题。 27359 修复了在特定用户设计的装配视图中显示某些未装配的组件的错误(BC:9416)。 27601 修复因PCB上的重复指示符导致长时间挂起的错误(BC:9203 ; BC:9632)。 27694 添加了在放置后移动Draftsman Callouts和Dimensions的起点(目标)点的能力(BC:7740)。 27699 修复了重新打开文档时,绘图员图层堆栈图例中的填充图案将恢复为其默认设置的问题(BC:9756)。 27854 修复了Draftsman bug,其中Variants未应用于输出作业生成的等轴测视图。 28416 在3D模型存在潜在错误的情况下(BC:9944)改进了Draftsman Assembly View的显示。 28803 径向尺寸现在可以在Draftsman中正确复制/粘贴(BC:9969)。 29424 修复了使用自定义视图选项时Draftsman Realistic View和Outjob PCB 3D Print的3D相机捕捉定位不一致的问题。 29443 修复了在PCB编辑器(BC:9857)中工作时自动保存备份崩溃绘图员的问题。 29463 添加了Draftsman支持,以在Board Assembly View中显示Flex区域拓扑。 30087 Draftsman的“更新板”命令已更改为“从[PCB文档]导入更改”以更好地描述其功能。 多板 21572 修复了Space Navigator中MbaDoc中3D运动与PcbDoc不一致的问题。 23734 修复了拆分Multi-Board Schematic的信号Entry (BC:9406)时“输入字符串格式不正确”的错误。 24498 修复了在尝试拆分多板原理图模块条目(BC:9406)时抛出“输入字符串格式不正确”错误的问题。 28431 在多板设计中增加了对3D鼠标的支持 - 缩放/平移/旋转。 28432 添加了对以STEP和Parasolid X_T格式导出多板装配的支持。 28433 多板组件现在支持并显示刚挠结构设计的最终折叠状态。 概要 23846 修复了“属性”面板“参”列表(BC:9153)中无法使用剪切/复制/粘贴的问题。 24226 修复了在“属性”面板中按“更新” (BC:9637)时未更新原理图库组件的名称/ URL链接(除非使用“输入”或“焦点更改” )的问题。 25412 修复了使用暂停的交互式进程关闭原理图文档时发生的“地址访问冲突”错误。 25459 在对具有大量供应商链接的原理图库进行参更改后执行ECO时,解决了非常慢的响应。 25864 修复了Port对象的“属性”面板中的“名称”字段未提供所有现有端口名称的下拉列表的问题。 27672 修复了原理图文本框架对象的问题,当通过“属性”面板进行编辑时,从外部编辑器粘贴文本时,选项卡将替换为空格(BC:9663)。 27900 修复了在编译后将组件放置在原理图表上变得缓慢的问题。 28442 现在,使用“属性”面板同时编辑多个原理图中的多个对象,可以正确地将所有工作表标记为已修改(BC:9236)。 28446 在原理图首选项(默认值)(BC:10072)中启用“覆盖库原语”选项时,不再覆盖原理图组件(指示符或注释)值。 28539 “属性”面板的“组件”模式现在在“参”选项卡上包含“规则”部分,允许在原理图上指定组件类型设计规则(BC:9445 ; BC:8903)。 28565 现在,当使用Altium Light Grey UI主题时,参表编辑器会正确显示所有据(BC:9931)。 28716 恢复了通过其属性添加和编辑与原理图组件或文档关联的设计规则的功能。在“属性”面板的“参”选项卡下的“规则”部分中访问。 PCB 16383 修复了导致基于嵌入式主板的ODB ++输出失败的错误。 24425 Gloss和Retrace现在能够对联合对象进行操作。 24595 对路由友好的移动组件功能进行了各种增强,包括更好地支持何时:组件被扇出; 它的引脚布线; 目标区域有路线(BC:1048 ; BC:2866)。 24805 继续开发交互式路由器跟随模式,修复各种错误和行为。 25517 添加了HDI - microvia(uVia)支持。 25634 解决了在某些视角下半透明自由3D体不能看到捕捉点和测量线的问题。 25666 当无法在信号完整性的“模型分配”对话框中更改“值/类型”列值时,修复了回归。 25671 解决了交互式差分对长度调整命令不遵守设置为匹配路由差分对的目标长度的问题。 25724 修复了交互式多路径过程中的回归,其中未通过“属性”面板应用总线间距的更改。 25809 单击选项卡时,图层选项卡不再自动滚动。只要最左侧的选项卡不是第一个可见选项卡(BC:9927),就会发生这种情况。 25853 现在,使用From Diff时,“目标长度”值在“属性”面板中正确排序。对设置。 25951 添加首选项选项以在移动组件功能后启用/禁用重新连接。 25975 修复了在特定电路板设计中启动交互式路由器时存在很长延迟的问题。 25982 为焊盘和过孔添加并集成了新的热释放选项。 26034 修复了“PCB列表”面板“智能编辑”功能中的错误,其中“批量替换”功能无效。 26128 增加了定义,使用和输出无限量机械层的功能(BC:8976)。 26144 修复了在删除上一组时选择图层集时在“视图配置”面板中出现的“被销毁后访问的对象”错误消息。 26361 解决了IPC Compliant Footprint Wizard中的回归问题,当未选择Full Matrix时,无法更改(或插入)LGA,BGA包布局选项的任何参。 26459 修复了“属性”面板中的“网络类别”排序,以匹配软件其他区域中使用的网络排序,例如PCB面板。 26610 更新了图层堆栈管理器,其中包含用于堆栈定义,uVia支持,材料库,阻抗计算器等的新文档界面和UI增强功能。 26862 解决了CAMtastic问题,其中设计规则值被错误地舍入到一个小位。 26953 修复了在PCB库编辑器(BC:9535)中错误地提供定义新组件层对的能力的问题。 26970 解决了Extract 3D Models功能无法从源PCB库(BC:9418)创建3D模型文件输出的问题。 27000 修复了特殊字符串中的项目参未响应参值的更改而更新的问题。 27451 修复了使用嵌入式板阵列创建的PCB面板错误地将板轮廓(“轮廓”)层输出到ODB ++的问题。 27575 修复了DRC标记反钻停止层的最小环形环违规时的问题。 27661 添加了在交互式路由期间从Ctrl + L热键打开的下拉菜单中直接选择首选图层的功能。 27662 添加了在交互式路由期间使用字键盘键选择所需图层的功能。 27666 添加了“显示图层编号”选项以在PCB编辑器图层选项卡中启用图层编号。 27673 修复了在多边形浇筑上粘贴自由垫或通道时不接受该多边形的网络设置的问题,导致短路和间隙违规(BC:9229)。 27689 添加了交互式路由逻辑,以防止子通道在推送和拥抱过程中与其堆叠的通路设置轴分离。 27708 修复了在特定项目中打开PCB文档后未出现反钻的问题。 27771 在Interactive Routing Properties面板中添加了完全标记的Via侧视图。 27871 为独立区域实现了Arc Approximation属性。此属性可用于“属性”面板,“PCB列表”面板和“FSO”对话框中的选定区域。 28086 修复了在特定电路板设计中针对阴影多边形报告错误的未路由网络违规的问题。 28114 修复了通过Make PCB Library功能(BC:9847)将第17-32层上的某些对象(如Line和Arc)转换为第16层的错误。 28174 为“垫”和“过孔”的“属性”面板添加了“热释放”连接样式选项,这些选项将覆盖PolygonConnect规则中定义的样式。 28188 现在,Gerber-X2 Exporter在使用arcs \ curves (BC:9868)时可以正确生成Profile层。 28275 现在可以在放置可以连接到多个网络的PCB对象时正确处理网络继承,将显示一个列出所有可能网络的选择窗口。 28427 添加了在PCB库中放置尺寸的功能,这些功能未出现在PCB布局中(BC:903)。 28428 添加了从选定的轨迹,弧线和实体区域创建3D实体的功能。使用工具>转换>从所选基元创建3D体(BC:1868)。 28441 按下L快捷键将移动组件翻转到电路板的另一侧不再导致显示不正确的焊盘违规(BC:5427)。 29176 在交互式路由的层转换期间,6快捷键可用于通过选项循环可用。现在包括所有可能的通道组合,例如uVia + blind via。 29179 增加了在3D模式下在叠加层上移动字符串的可能性(BC:584)。 29262 修复了PCB 3D体点中的回归,其中使用“位置3D体”工具时无法选择添加的自定义捕捉点。 29269 在使用移除未使用的垫形状工具移除未使用的垫/通孔环(BC:4701)后,DRC不再错误地检测到最小环形环错误。 29698 解决了组件错误启用“翻转图层”设置的突出情况,包括:在移动然后执行撤消时翻转组件; 使用当前图层上的粘贴功能(Alt + Ins或选择性粘贴)在粘贴时交换图层; 或者从启用了该设置的旧版本导入首选项(BC:9238 ; BC:10235)。 29727 修复了无法将特殊字符粘贴到文本字符串的Text属性框中的回归(BC:10221)。 29778 解决了使用RMB多次拖动视图后PCB编辑器性能下降的问题。 29786 “PCB规则和违规”面板中的缩放行为得到了改进 - 现在缩放到违规细节而不是违规对象(BC:7987)。 29887 解决了3D模型中的透明对象在3D命令期间变得可见的问题,例如从3D主体创建,与板对齐面或测量3D对象(BC:8699)。 29932 添加了新的查询关键字:IsBlindVia,IsBuriedVia,IsMicroVia和IsThruVia。 30270 修复了在3D模式下拖动PCB组件指示符时突出显示不起作用的问题。
章节详细,涵盖大学文献检索课件资料 第一章 信息检索的基本知识 第一节 信息、知识、文献、情报 信息: 应用文字、据和信号形式通过一定的传递和处理,来表现各种相互联系的客观事物在运动变化中所具有特征性的内容的总称。 知识: 人们通过实践对客观事物极其运动过成和规律的认识。是人脑对客观事物传来的信息进行加工的过程。 文献: 是记录有知识的一切载体。也是将人类的知识用文字、符号、图形、声频、视频、信号等记录方式在甲骨、竹棉 纸张、感光材料、磁性材料等载体上记录下来而形成的。 情报:当文献中记录的知识一旦传递 到用户并为其所利用时,文献中被利用到的这部分知识就转化为情报。 关系:信息(知识(情报,文献)) 第二节 信息检索的目的和作用 1.通过科技文献检索能够打开人类知识宝库的钥匙。 2.通过科技文献检索能使科技工作者及时把握科技发展的动态和趋势。 3.通过科技文献检索能有助于开拓知识面,改善知识结构。 4.通过科技文献检索可避免科研重复,加快科研工作的进程. 5.通过科技文献检索能加强科技交流,促进技术合作。 第三节 科技文献的特点及类型 1.什么是科技文献? 含有知识内容的信息载体。 2.构成文献的三要素:知识内容、物质载体、记录手段。 3.文献的基本功能:存储知识信息、传播知识信息。 4. 科技文献的特点: 形式多、文种多。量多、增长快。交叉重复。失效快、寿命短。 5.科技文献的类型: 1:按文献的载体形式划分:印刷型、缩微型、声像型、电子型。 2:按文献的出版形式划分:科技图书、 科技期刊、 科技报告、会议文献、 专利文献、 学位论文、标准文献、 政府出版物、 产品样本、技术档案。 3:按文献被加工处理的深度划分:零次文献、一次文献、二次文献、三次文献。 第四节 信息检索及类型 信息检索:是指将文献信息按一定的方式组织、存储起来,并针对用户的需要查找出所需信息的过程。 信息检索的类型: 1.文献检索 2.据检索 3.事项检索 一、什么是检索工具?用以存储、报道和查找文献信息的工具。 二、检索工具的特征:1.有丰富的文献记录。2.每条记录都必须具有各种检索标识。 3.全部描述记录科学地组织成一个有机的整体。4.能够提供多种检索途径。 三、信息检索工具的职能: 1.报道职能。 2.存储职能。3.检索职能。 四、检索工具的类型: 1.按检索方法划分:手工、机械 2.按收录的文献范围划分:综合性、 专业性、 单一性 3.按出版形式划分: 期刊式检索工具,单卷式检索工具,附录式检索工具,卡片式检索工具, 缩微制品、磁带、磁盘。 4.按收录文献对象和揭示文献方式划分:目录、题录、文摘(指示性、报道性)、 索引 五、检索工具的结构: 目次表、使用说明、正文部分、索引、附录部分。 第二节 信息检索语言 信息检索语言是用来描述文献特征和表达信息提问,沟通信息存储人员和信息检索者双方思想的一种人工语言。 信息检索语言的分类:按描述文献特征划分; • 描述文献外部特征的检索语言:书名、刊名、篇名等著者名。号码(如报告号、专利号、序号等)文献类型,文献出版事项 • 描述文献内容特征的检索语言: 分类语言 主题语言(关键词语言、标题词语言、叙词语言) 第三节 信息检索原理及步骤 一、信息检索原理: 文献信息检索实际上包括文献的存储和文献的检索两个相互依存的过程。 二、信息检索的步骤: 1.分析研究课题: 2.选择检索工具: 3.确定检索途径:分类途径、主题途径、题名途径、著作途径、号码途径、其他途径。 4. 选择检索方法:常用法(顺查法、倒查法、抽查法)追溯法 综合法(或循环法) 5.查找文献线索:6.索取原始文献。 第三章 专利文献及其检索 第一节 专利的基本知识  什么是专利? 所谓专利是指一项技术性的创造发明在一定的年限和国家范围内受法律保护的技术专有权利。  专利的类型(发明专利、实用新型专利、外观设计专利)  取得专利的条件(新颖性、实用性、创造性)  专利的审批程序 我国专利的审批程序:(发明专利的审批程序)专利申请, 初步审查(形式审查),公布专利申请(早期公开),实质审查,审定并公告 , 公众异议 , 授予专利权,专利权无效请求 ,专利权终止 (实用新型专利和外观设计专利的审批程序)专利申请,初步审查(形式审查),审定并公告,公众异议,授予专利权 第二节 专利文献  专利文献的特点:1,新颖及时 2,技术可靠、详尽 3,内容广泛 4,格式统一 5,从复出版量大  中国专利文献的符号系统: 89年前 89年
[client] port = 3306 socket=/home/mysql/data/mysql.sock [mysqld] lower_case_table_names=1 user = mysql #--- 表示MySQL的管理用户 port = 3306 #--- 端口 #basedir=/usr/local/mysql socket=/home/mysql/data/mysql.sock #-- 启动的sock文件 datadir=/home/mysql/data log-bin=/home/mysql/mysql-bin log-error=/home/mysql/log/mysqld.log pid-file =/home/mysql/mysqld.pid bind-address = 0.0.0.0 server-id = 1 #表示是本机的序号为1,一般来讲就是master的意思 skip-grant-tables skip-name-resolve # 禁止MySQL对外部连接进行DNS解析,使用这一选项可以消除MySQL进行DNS解析的时间。但需要注意,如果开启该选项, # 则所有远程主机连接授权都要使用IP地址方式,否则MySQL将无法正常处理连接请求 #skip-networking back_log = 600 # MySQL能有的连接量。当主要MySQL线程在一个很短时间内得到非常多的连接请求,这就起作用, # 然后主线程花些时间(尽管很短)检查连接并且启动一个新线程。back_log值指出在MySQL暂时停止回答新请求之前的短时间内多少个请求可以被存在堆栈中。 # 如果期望在一个短时间内有很多连接,你需要增加它。也就是说,如果MySQL的连接据达到max_connections时,新来的请求将会被存在堆栈中, # 以等待某一连接释放资源,该堆栈的量即back_log,如果等待连接的量超过back_log,将不被授予连接资源。 # 另外,这值(back_log)限于您的操作系统对到来的TCP/IP连接的侦听队列的大小。 # 你的操作系统在这个队列大小上有它自己的限制(可以检查你的OS文档找出这个变量的最大值),试图设定back_log高于你的操作系统的限制将是无效的。 max_connections = 500 # MySQL的最大连接,如果服务器的并发连接请求量比较大,建议调高此值,以增加并行连接量,当然这建立在机器能支撑的情况下,因为如果连接越多,介于MySQL会为每个连接提供连接缓冲区,就会开销越多的内存,所以要适当调整该值,不能盲目提高设值。可以过'conn%'通配符查看当前状态的连接量,以定夺该值的大小。 max_connect_errors = 6000 # 对于同一主机,如果有超出该参值个的中断错误连接,则该主机将被禁止连接。如需对该主机进行解禁,执行:FLUSH HOST。 open_files_limit = 65535 # MySQL打开的文件描述符限制,默认最小1024;当open_files_limit没有被配置的时候,比较max_connections*5和ulimit -n的值,哪个大用哪个, # 当open_file_limit被配置的时候,比较open_files_limit和max_connections*5的值,哪个大用哪个. table_open_cache = 128 # MySQL每打开一个表,都会读入一些据到table_open_cache缓存中,当MySQL在这个缓存中找不到相应信息时,才会去磁盘上读取。默认值64 # 假定系统有200个并发连接,则需将此参设置为200*N(N为每个连接所需的文件描述符目); # 当把table_open_cache设置为很大时,如果系统处理不了那么多文件描述符,那么就会出现客户端失效,连接不上 max_allowed_packet = 1000000000 # 接受的据包大小;增加该变量的值十分安全,这是因为仅当需要时才会分配额外内存。例如,仅当你发出长查询或MySQLd必须返回大的结果行时MySQLd才会分配更多内存。 # 该变量之所以取较小默认值是一种预防措施,以捕获客户端和服务器之间的错误信息包,并确保不会因偶然使用大的信息包而导致内存溢出。 binlog_cache_size = 1M # 一个事务,在没有提交的时候,产生的日志,记录到Cache中;等到事务提交需要提交的时候,则把日志持久化到磁盘。默认binlog_cache_size大小32K max_heap_table_size = 67108864 # 定义了用户可以创建的内存表(memory table)的大小。这个值用来计算内存表的最大行值。这个变量支持动态改变 tmp_table_size = 67108864 # MySQL的heap(堆积)表缓冲大小。所有联合在一个DML指令内完成,并且大多联合甚至可以不用临时表即可以完成。 # 大多临时表是基于内存的(HEAP)表。具有大的记录长度的临时表 (所有列的长度的和)或包含BLOB列的表存储在硬盘上。 # 如果某个内部heap(堆积)表大小超过tmp_table_size,MySQL可以根据需要自动将内存中的heap表改为基于硬盘的MyISAM表。还可以通过设置tmp_table_size选项来增加临时表的大小。也就是说,如果调高该值,MySQL同时将增加heap表的大小,可达到提高联接查询速度的效果 read_buffer_size = 4194304 # MySQL读入缓冲区大小。对表进行顺序扫描的请求将分配一个读入缓冲区,MySQL会为它分配一段内存缓冲区。read_buffer_size变量控制这一缓冲区的大小。 # 如果对表的顺序扫描请求非常频繁,并且你认为频繁扫描进行得太慢,可以通过增加该变量值以及内存缓冲区大小提高其性能 read_rnd_buffer_size = 4194304 # MySQL的随机读缓冲区大小。当按任意顺序读取行时(例如,按照排序顺序),将分配一个随机读缓存区。进行排序查询时, # MySQL会首先扫描一遍该缓冲,以避免磁盘搜索,提高查询速度,如果需要排序大量据,可适当调高该值。但MySQL会为每个客户连接发放该缓冲空间,所以应尽量适当设置该值,以避免内存开销过大 sort_buffer_size = 4194304 # MySQL执行排序使用的缓冲大小。如果想要增加ORDER BY的速度,首先看是否可以让MySQL使用索引而不是额外的排序阶段。 # 如果不能,可以尝试增加sort_buffer_size变量的大小 join_buffer_size = 8388608 # 联合查询操作所能使用的缓冲区大小,和sort_buffer_size一样,该参对应的分配内存也是每连接独享 thread_cache_size = 8 # 这个值(默认8)表示可以重新利用保存在缓存中线程的量,当断开连接时如果缓存中还有空间,那么客户端的线程将被放到缓存中, # 如果线程重新被请求,那么请求将从缓存中读取,如果缓存中是空的或者是新的请求,那么这个线程将被重新创建,如果有很多新的线程, # 增加这个值可以改善系统性能.通过比较Connections和Threads_created状态的变量,可以看到这个变量的作用。(–>表示要调整的值) # 根据物理内存设置规则如下: # 1G —> 8 # 2G —> 16 # 3G —> 32 # 大于3G —> 64 #query_cache_size = 8M #MySQL的查询缓冲大小(从4.0.1开始,MySQL提供了查询缓冲机制)使用查询缓冲,MySQL将SELECT语句和查询结果存放在缓冲区中, # 今后对于同样的SELECT语句(区分大小写),将直接从缓冲区中读取结果。根据MySQL用户手册,使用查询缓冲最多可以达到238%的效率。 # 通过检查状态值'Qcache_%',可以知道query_cache_size设置是否合理:如果Qcache_lowmem_prunes的值非常大,则表明经常出现缓冲不够的情况, # 如果Qcache_hits的值也非常大,则表明查询缓冲使用非常频繁,此时需要增加缓冲大小;如果Qcache_hits的值不大,则表明你的查询重复率很低, # 这种情况下使用查询缓冲反而会影响效率,那么可以考虑不用查询缓冲。此外,在SELECT语句中加入SQL_NO_CACHE可以明确表示不使用查询缓冲 #query_cache_limit = 2M #指定单个查询能够使用的缓冲区大小,默认1M key_buffer_size = 1048576 #指定用于索引的缓冲区大小,增加它可得到更好处理的索引(对所有读和多重写),到你能负担得起那样多。如果你使它太大, # 系统将开始换页并且真的变慢了。对于内存在4GB左右的服务器该参可设置为384M或512M。通过检查状态值Key_read_requests和Key_reads, # 可以知道key_buffer_size设置是否合理。比例key_reads/key_read_requests应该尽可能的低, # 至少是1:100,1:1000更好(上述状态值可以使用SHOW STATUS LIKE 'key_read%'获得)。注意:该参值设置的过大反而会是服务器整体效率降低 ft_min_word_len = 4 # 分词词汇最小长度,默认4 transaction_isolation = REPEATABLE-READ # MySQL支持4种事务隔离级别,他们分别是: # READ-UNCOMMITTED, READ-COMMITTED, REPEATABLE-READ, SERIALIZABLE. # 如没有指定,MySQL默认采用的是REPEATABLE-READ,ORACLE默认的是READ-COMMITTED log_bin = mysql-bin binlog_format = mixed expire_logs_days = 30 #超过30天的binlog删除 slow_query_log = 1 long_query_time = 1 #慢查询时间 超过1秒则为慢查询 slow_query_log_file = /home/mysql/data/mysql-slow.log performance_schema = 0 explicit_defaults_for_timestamp #lower_case_table_names = 1 #不区分大小写 skip-external-locking #MySQL选项以避免外部锁定。该选项默认开启 default-storage-engine = InnoDB #默认存储引擎 innodb_file_per_table = 1 # InnoDB为独立表空间模式,每个据库的每个表都会生成一个据空间 # 独立表空间优点: # 1.每个表都有自已独立的表空间。 # 2.每个表的据和索引都会存在自已的表空间中。 # 3.可以实现单表在不同的据库中移动。 # 4.空间可以回收(除drop table操作处,表空不能自已回收) # 缺点: # 单表增加过大,如超过100G # 结论: # 共享表空间在Insert操作上少有优势。其它都没独立表空间表现好。当启用独立表空间时,请合理调整:innodb_open_files innodb_open_files = 500 # 限制Innodb能打开的表的据,如果库里的表特别多的情况,请增加这个。这个值默认是300 innodb_buffer_pool_size = 1048576 # InnoDB使用一个缓冲池来保存索引和原始据, 不像MyISAM. # 这里你设置越大,你在存取表里面据时所需要的磁盘I/O越少. # 在一个独立使用的据库服务器上,你可以设置这个变量到服务器物理内存大小的80% # 不要设置过大,否则,由于物理内存的竞争可能导致操作系统的换页颠簸. # 注意在32位系统上你每个进程可能被限制在 2-3.5G 用户层面内存限制, # 所以不要设置的太高. innodb_write_io_threads = 4 innodb_read_io_threads = 4 # innodb使用后台线程处理据页上的读写 I/O(输入输出)请求,根据你的 CPU 核来更改,默认是4 # 注:这两个参不支持动态改变,需要把该参加入到my.cnf里,修改完后重启MySQL服务,允许值的范围从 1-64 innodb_thread_concurrency = 0 # 默认设置为 0,表示不限制并发,这里推荐设置为0,更好去发挥CPU多核处理能力,提高并发量 innodb_purge_threads = 1 # InnoDB中的清除操作是一类定期回收无用据的操作。在之前的几个版本中,清除操作是主线程的一部分,这意味着运行时它可能会堵塞其它的据库操作。 # 从MySQL5.5.X版本开始,该操作运行于独立的线程中,并支持更多的并发。用户可通过设置innodb_purge_threads配置参来选择清除操作是否使用单 # 独线程,默认情况下参设置为0(不使用单独线程),设置为 1 时表示使用单独的清除线程。建议为1 innodb_flush_log_at_trx_commit = 2 # 0:如果innodb_flush_log_at_trx_commit的值为0,log buffer每秒就会被刷写日志文件到磁盘,提交事务的时候不做任何操作(执行是由mysql的master thread线程来执行的。 # 主线程中每秒会将重做日志缓冲写入磁盘的重做日志文件(REDO LOG)中。不论事务是否已经提交)默认的日志文件是ib_logfile0,ib_logfile1 # 1:当设为默认值1的时候,每次提交事务的时候,都会将log buffer刷写到日志。 # 2:如果设为2,每次提交事务都会写日志,但并不会执行刷的操作。每秒定时会刷到日志文件。要注意的是,并不能保证100%每秒一定都会刷到磁盘,这要取决于进程的调度。 # 每次事务提交的时候将据写入事务日志,而这里的写入仅是调用了文件系统的写入操作,而文件系统是有 缓存的,所以这个写入并不能保证据已经写入到物理磁盘 # 默认值1是为了保证完整的ACID。当然,你可以将这个配置项设为1以外的值来换取更高的性能,但是在系统崩溃的时候,你将会丢失1秒的据。 # 设为0的话,mysqld进程崩溃的时候,就会丢失最后1秒的事务。设为2,只有在操作系统崩溃或者断电的时候才会丢失最后1秒的据。InnoDB在做恢复的时候会忽略这个值。 # 总结 # 设为1当然是最安全的,但性能页是最差的(相对其他两个参而言,但不是不能接受)。如果对据一致性和完整性要求不高,完全可以设为2,如果只最求性能,例如高并发写的日志服务器,设为0来获得更高性能 innodb-buffer-pool-size = 128M innodb_log_buffer_size = 4194304 # 此参确定些日志文件所用的内存大小,以M为单位。缓冲区更大能提高性能,但意外的故障将会丢失据。MySQL开发人员建议设置为1-8M之间 innodb_log_file_size = 268435456 # 此参确定据日志文件的大小,更大的设置可以提高性能,但也会增加恢复故障据库所需的时间 innodb_log_files_in_group = 3 # 为提高性能,MySQL可以以循环方式将日志文件写到多个文件。推荐设置为3 innodb_max_dirty_pages_pct = 90 # innodb主线程刷新缓存池中的据,使脏据比例小于90% innodb_lock_wait_timeout = 120 # InnoDB事务在被回滚之前可以等待一个锁定的超时秒。InnoDB在它自己的锁定表中自动检测事务死锁并且回滚事务。InnoDB用LOCK TABLES语句注意到锁定设置。默认值是50秒 bulk_insert_buffer_size = 1024M # 批量插入缓存大小, 这个参是针对MyISAM存储引擎来说的。适用于在一次性插入100-1000+条记录时, 提高效率。默认值是8M。可以针对据量的大小,翻倍增加。 myisam_sort_buffer_size = 1024M # MyISAM设置恢复表之时使用的缓冲区的尺寸,当在REPAIR TABLE或用CREATE INDEX创建索引或ALTER TABLE过程中排序 MyISAM索引分配的缓冲区 myisam_max_sort_file_size = 10G # 如果临时文件会变得超过索引,不要使用快速排序索引方法来创建一个索引。注释:这个参以字节的形式给出 myisam_repair_threads = 1 # 如果该值大于1,在Repair by sorting过程中并行创建MyISAM表索引(每个索引在自己的线程内) interactive_timeout = 28800 # 服务器关闭交互式连接前等待活动的秒。交互式客户端定义为在mysql_real_connect()中使用CLIENT_INTERACTIVE选项的客户端。默认值:28800秒(8小时) wait_timeout = 28800 # 服务器关闭非交互连接之前等待活动的秒。在线程启动时,根据全局wait_timeout值或全局interactive_timeout值初始化会话wait_timeout值, # 取决于客户端类型(由mysql_real_connect()的连接选项CLIENT_INTERACTIVE定义)。参默认值:28800秒(8小时) # MySQL服务器所支持的最大连接是有上限的,因为每个连接的建立都会消耗内存,因此我们希望客户端在连接到MySQL Server处理完相应的操作后, # 应该断开连接并释放占用的内存。如果你的MySQL Server有大量的闲置连接,他们不仅会白白消耗内存,而且如果连接一直在累加而不断开, # 最终肯定会达到MySQL Server的连接上限,这会报'too many connections'的错误。对于wait_timeout的值设定,应该根据系统的运行情况来判断。 # 在系统运行一段时间后,可以通过show processlist命令查看当前系统的连接状态,如果发现有大量的sleep状态的连接进程,则说明该参设置的过大, # 可以进行适当的调整小些。要同时设置interactive_timeout和wait_timeout才会生效。 [mysqldump] quick max_allowed_packet = 16M #服务器发送和接受的最大包长度 [myisamchk] key_buffer_size = 8M sort_buffer_size = 8M read_buffer = 4M write_buffer = 4M
描述符是可以实现大部分Python类特性中的底层魔法,包括@classmethod、@staticmethod、@property甚至是__slot__属性。它们是可以给你的类增加魔力的特殊方法,如果你的对象实现(重载)了这些方法中的某一个,那么这个方法就会在特殊的情况下被Python所调用,你可以定义自己想要的行为,而这一切都是自动发生的。其中一些常用的描述符魔术方法包括: 1. `__get__(self, instance, owner)`: 当通过实例访问描述符属性时触发的方法。`instance`是实例对象,`owner`是拥有描述符的类。 2. `__set__(self, instance, value)`: 当设置描述符属性的值时触发的方法。`instance`是实例对象,`value`是要设置的值。 3. `__delete__(self, instance)`: 当删除描述符属性时触发的方法。`instance`是实例对象。 4. `__getattribute__(self, instance)`: 当通过实例访问任何属性时触发的方法,包括描述符属性和普通属性。 5. `__setattribute__(self, instance, value)`: 当设置任何属性的值时触发的方法,包括描述符属性和普通属性。 这些描述符魔术方法可以让你在访问、设置和删除属性时进行自定义操作,从而更灵活地控制属性的行为。例如,如果你实现了`__get__`方法,则可以在实例访问描述符属性时自定义返回的值。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [python高级(描述符相关的魔术方法)](https://blog.csdn.net/jamfiy/article/details/88050943)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [【python】魔法算法详解](https://blog.csdn.net/weixin_34133829/article/details/89058418)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值