文档库 最新最全的文档下载
当前位置:文档库 › 常见数据库问题

常见数据库问题

常见数据库问题
常见数据库问题

/*问题:手工修复数据库一致性错误*/

--检测数据库一致性,此处以数据库:UFDATA_002_2010,表:SaleBillVouchs为例

DBCC CHECKDB('UFDATA_002_2010')

--若报错,将数据库设置为单用户模式

ALTER DATABASE UFDATA_002_2010 SET single_user WITH ROLLBACK immediate

GO

--以repair_allow_data_loss级别修复表SaleBillVouchs

USE UFDATA_002_2010

GO

DBCC CHECKTABLE('SaleBillVouchs',repair_allow_data_loss)

--若还有问题,修复索引表

DBCC DBREINDEX('SaleBillVouchs')

--再修复表,可重复修复

DBCC CHECKTABLE('SaleBillVouchs')

--查询数据,已经可以查询,错误已经修复

SELECT * FROM SaleBillVouchs

--将数据库恢复多用户模式

ALTER DATABASE UFDATA_002_2010 SET multi_user WITH ROLLBACK immediate

/*问题:手工修复数据库置疑,以下以ufsystem数据库为例

说明:如数据库存放路径为:d:\UFSMART\Admin\,执行脚本前先停止数据库服务,然后删除此路径下的ufsystem.ldf文件(注意:是ldf文件),再启用数据库服务执行脚本*/

use master

go

sp_configure 'allow updates',1

go

reconfigure with override

go

update sysdatabases set status=-32768 where dbid=DB_ID('ufsystem')

go

dbcc rebuild_log('ufsystem','D:\UFSMART\Admin\ufsystem.LDF')

go

sp_dboption 'ufsystem ','dbo use only','false'

go

sp_configure 'allow updates',0

go

reconfigure with override

go

/*问题:行政事业单位期间损益结转*/

--此语句需在ufsystem下执行,先切换到ufsystem数据库

USE UFSYSTEM

GO

--首先运行下面这一句,查出要做结转的帐套的行业性质,此处以003帐套为例

SELECT cEntType, cTradeKind FROM UA_Account WHERE cAcc_Id = '003'

--根据查询结果执行

UPDATE GL_CodeClass SET bcheck=1 WHERE cclass IN ('收入','支出')

AND itrade IN (SELECT itrade_id FROM GL_BTrade WHERE ctrade_name='行政')

/*问题:表间数据复制

在利用数据库时,常常会将一些表之间的数据互相导入。当然可以编写程序实现,但是,程序常常需要开发环境,不方便。最方便是利用sql语言直接导入。既方便而修改也简单。以下就是导入的方法。*/

-- 1、表结构相同的表,且在同一数据库(如,table1,table2)

insert into table1 select * from table2 --(完全复制)

insert into table1 select distinct * from table2--(不复制重复纪录)

insert into table1 select top 5 * from table2-- (前五条纪录)

--2、不在同一数据库中(如,db1 table1,db2 table2)

insert into db1..table1 select * from db2..table2-- (完全复制)

insert into db1..table1 select distinct * from db2table2--(不复制重复纪录)

insert into tdb1..able1 select top 5 * from db2table2-- (前五条纪录)

/*问题:锁定问题涉及的几个表*/

/*1、退出整个U8系统;2、检查清除系统管理下的异常任务、以及单据锁定;3、如果上述操作无效,敬请查看如下数据表:注意:请做好数据备份,清除数据表中记录。操作时最好让所有工作站点退出U8系统。*/ delete from gl_mccontrol

--年度库中:

GL_mvcontrol --总账凭证控制表(一般提示某张凭证正在被某台机器编辑,就是该表内有相关记录) lockvouch --客户供应商控制表;

gl_mccontrol --总账科目控制表

Ap_Lock --应收应付锁定控制表

ia_pzmutex --凭证互斥表

--系统库中:

ua_task --功能操作网络控制表;

ua_tasklog --站点操作网络控制表;

数据库常用命令

--查询

select * from VoucherNumber where [AppName] = '采购' and cardname = '收款单'

--增加

insert into VoucherNumber() values()

--删除

delete from VoucherNumber where [AppName] = '销售'and cardname = '付款单'

--修改

update VoucherNumber set cardname = '收款单' where [AppName] = '采购' and cardname = '付款单'

数据库简介

第三章数据库 数据库是数据管理的最新技术,是计算机科学的重要分支。今天,信息资源已成为各个部门的重要财富和资源。建立一个满足各级部门信息处理要求的行业有效的信息系统也成为一个企业或组织生存和发展的重要条件。因此,作为信息系统核心和基础的数据库技术得到越来越广泛的应用,从小型单项事务处理系统到大型信息系统,从联机事务处理到联机分析处理,从一般企业管理到计算机辅助设计与制造(CAD/CAM)、计算机集成制造系统(CIMS)、办公信息系统(OIS)、地理信息系统(GIS)等,越来越多新的应用领域采用数据库存储和处理他们的信息资源。对于一个国家来说,数据库的建设规模、数据库信息量的大小和使用频度已成为衡量这个国家信息化程度的重要标志。 3.1 数据库知识概述 数据库技术是数据信息管理技术的最新成果,被广泛地应用于国民经济、文化教育、企业管理以及办公自动化等方面,为计算机的应用开辟了广阔的天地。本节将详细介绍有关数据库系统的基本概念。 3.1.1 数据库系统基本概念 1)数据(Data) 数据是数据库中存储的基本对象。数据在大多数人头脑中的第一个反应就是数字。其实数字只是最简单的一种数据,是数据的一种传统和狭义的理解。广义的理解,数据的种类很多,包括文字、图形、图像、声音、视频、学生的档案记录等。 数据就是描述事物的符号记录。描述事物的符号可以是数字,也可以是文字、图形、图像、声音、语言等,数据有多种表现形式,都可以经过数字化后存入计算机。 数据的形式还不能完全表达其内容,需要经过解释。所以数据和关于数据的解释是不可分的,数据的解释是指对数据含义的说明,数据的含义称为数据的语义,数据与其语义是不可分的。 2)数据库(DataBase,简称DB) 所谓数据库是指长期储存在计算机内的、有组织的、可共享的数据集合。数据库中的数据按一定的数据模型组织、描述和存储,具有较小的冗余度、较高的数据独立性和易扩展性,并可以为各种用户共享。 3)数据库管理系统(DataBase Management System,简称DBMS) 数据库管理系统是数据库系统的一个重要组成部分。它是位于用户与操作系统之间的一层数据管理软件。主要包括以下几方面的功能。 ●数据定义功能 DBMS提供数据定义语言(Data Definition Language,简称DDL),通过它可以方便地对数据库中的数据对象进行定义。 ●数据操纵功能 DBMS还提供数据操纵语言(Data Manipulation Language,简称DML),可以使用DML 操纵数据实现对数据库的基本操作,如查询、插入、删除和修改等。 ●数据库的运行管理 数据库在建立、运用和维护时由数据库管理系统统一管理、统一控制,以保证数据的安全性、完整性、多用户对数据的并发使用及发生故障后的系统恢复。

数据库图书管理系统(含代码)

目录 一.需求描述和系统边界 (2) 二.需求分析 (2) 1.业务需求 (2) 2.功能需求及数据需求分析 (2) 3.业务规则分析 (3) 三.实体集及属性 (4) 四.联系集及E-R图 (5) 五.逻辑数据库设计 (6) 六.数据库编程 (7) 1.创建表 (7) 2.创建触发器 (10) 3.管理员操作 (10) 4.读者操作 (11) 5. 管理员对借阅关系的操作 (12) 七.代码实现 (13) 1.输入数据设计 (13) 2.完成借阅、续借、归还的操作设计 (15) 八.模式求精 (17) 九.小结 (17)

一.需求描述和系统边界 数据库技术和Internet的飞速发展,使它们已经成为现代信息技术的重要组成部分,是现在计算机信息系统和计算机应用系统的基础和核心。对于任何一个企业来说,数据是企业重要的资产,如何有效利用这些数据,对于企业发展起着极其重要的作用。随着我国市场经济的迅速发展和人们生活水平的不断提高,图书馆藏书的数目逐渐增大,这也挑战了图书管理方面的技术,以前的人工管理方式已经不再适应现在的环境,取而代之的是先进的图书管理系统,创建图书管理系统可以让管理人员方便而快捷的进行管理、查询、借阅、录入等工作。 该图书管理系统支持2类用户:管理员和读者。读者可以进行借阅、续借、归还和查询书籍等操作,管理员可以完成书籍和读者的增加,删除和修改以及对读者,借阅、续借、归还的确认。 二.需求分析 1.业务需求 图书管理系统的主要业务包括:包括图书馆内书籍的信息,读者信息,以及借阅信息。此系统功能分为面向读者和面向管理员两部分,其中读者可以进行借阅、续借、归还和查询书籍等操作,管理员可以完成书籍和读者的增加,删除和修改以及对读者,借阅、续借、归还的确认。 2.功能需求及数据需求分析 (1)注册管理 管理员注册。管理员注册时要求填写基本信息,包括管理员编号、姓名、性别、联系电话、家庭住址。系统检查所有信息填写正确后管理员注册成功。 读者注册。读者注册时要求填写基本信息,包括读者编号、姓名、性别、联系电话、学院等。系统检查所有信息填写正确后读者注册成功。 (2)图书管理 增加图书信息。当有新的图书入库时,管理员负责添加图书信息,包括书名、分类、图书编号、作者、出版社、出版时间、简介等。 图书信息查询。管理系统需提供方便快捷的方式进行图书检索。如可以输入

A1+SQL数据库常见问题处理办法

A1数据库问题处理办法 目录 1、检查是否安装SQL Server (3) (1)检查是否安装了SQL Server服务器程序。 (3) (2)选择并安装SQL Server服务器 (3) (3)SQL Server或MSDE安装失败的解决办法 (3) 2、检查SQL Server是否正常启动 (4) 3、检查SQL Server的连接情况 (6) 4、检查网络物理连接情况 (7) 5、检查是否为局域网内的主机 (7) 6、检查主机与服务器是否连通 (7) (1)检查工作和服务器是否连通 (7) (2)检查是否可以访问服务器的共享目录 (8) (3)检查网络的可靠性 (9) 7、检查服务器或者客户端的防火墙 (11) 8、检查SQL Server远程登录时服务器名,用户名及密码的正确性 (11) 9、检查是否开启SQL Server的网络服务 (13) 10、检查操作系统和SQL Server的版本及安装其补丁 (15) (1)检查操作系统的版本号 (16) (2)检查SQL Server的版本号 (17) 11、检查MDAC版本及安装其补丁 (18) (1)检查MDAC版本 (18) (2)更新MDAC (19) 12、检查电脑名称大小写 (19) 13、检查SQL Server的验证模式 (20) 14、检查Windows分配的用户权限 (20) 15、检查数据库是否有损坏及修复数据库 (21) (1)检查数据是否有损坏 (21) (2)修复数据库 (21) 16、检查数据库的日志 (24) 17、其它操作 (25) 17.1查看SQL Server服务器名 (25) 17.2查看SQL Server的语言版本 (25) 17.3附加数据库 (26) 17.4分离数据库 (29) 17.5 SQL Server在安装时被挂起问题 (31) 17.6数据库卸载问题 (31)

数据库常用数据类型

(1) 整数型 整数包括bigint、int、smallint和tinyint,从标识符的含义就可以看出,它们的表示数范围逐渐缩小。 l bigint:大整数,数范围为-263 (-9223372036854775808)~263-1 (9223372036854775807) ,其精度为19,小数位数为0,长度为8字节。 l int:整数,数范围为-231 (-2,147,483,648) ~231 - 1 (2,147,483,647) ,其精度为10,小数位数为0,长度为4字节。 l smallint:短整数,数范围为-215 (-32768) ~215 - 1 (32767) ,其精度为5,小数位数为0,长度为2字节。 l tinyint:微短整数,数范围为0~255,长度为1字节,其精度为3,小数位数为0,长度为1字节。 (2) 精确整数型 精确整数型数据由整数部分和小数部分构成,其所有的数字都是有效位,能够以完整的精度存储十进制数。精确整数型包括decimal 和numeric两类。从功能上说两者完全等价,两者的唯一区别在于decimal不能用于带有identity关键字的列。 声明精确整数型数据的格式是numeric | decimal(p[,s]),其中p为精度,s为小数位数,s的缺省值为0。例如指定某列为精确整数型,精度为6,小数位数为3,即decimal(6,3),那么若向某记录的该列赋值56.342689时,该列实际存储的是56.3427。 decimal和numeric可存储从-1038 +1 到1038 –1 的固定精度和小数位的数字数据,它们的存储长度随精度变化而变化,最少为5字节,最多为17字节。 l 精度为1~9时,存储字节长度为5; l 精度为10~19时,存储字节长度为9; l 精度为20~28时,存储字节长度为13; l 精度为29~38时,存储字节长度为17。 例如若有声明numeric(8,3),则存储该类型数据需5字节,而若有声明numeric(22,5),则存储该类型数据需13字节。 注意:声明精确整数型数据时,其小数位数必须小于精度;在给精确整数型数据赋值时,必须使所赋数据的整数部分位数不大于列的整数部分的长度。 (3) 浮点型 浮点型也称近似数值型。顾名思义,这种类型不能提供精确表示数据的精度,使用这种类型来存储某些数值时,有可能会损失一些精度,所以它可用于处理取值范围非常大且对精确度要求不是十分高的数值量,如一些统计量。

常见软件故障及处理方法

常见软件故障及处理方法(转载) 软件故障的原因 软件发生故障的原因有几个,丢失文件、文件版本不匹配、内存冲突、内存耗尽,具体的情况不同,也许只因为运行了一个特定的软件,也许很严重,类似于一个的系统级故障。 为了避免这种错误的出现,我们可以仔细研究一下每种情况发生的原因,看看怎样检测和避免。 丢失文件: 你每次启动计算机和运行程序的时候,都会牵扯到上百个文件,绝大多数文件是一些虚拟驱动程序vir tual device drivers (VxD),和应用程序非常依赖的动态链接库dynamic link library (DLL)。VXD允许多个应用程序同时访问同一个硬件并保证不会引起冲突,DLL则是一些独立于程序、单独以文件形式保存的可执行子程序,它们只有在需要的时候才会调入内存,可以更有效地使用内存。当这两类文件被删除或者损坏了,依赖于它们的设备和文件就不能正常工作。 要检测一个丢失的启动文件,可以在启动PC的时候观察屏幕,丢失的文件会显示一个“不能找到某个设备文件”的信息和该文件的文件名、位置,你会被要求按键继续启动进程。 造成类似这种启动错误信息的绝大多数原因是没有正确使用卸载软件。如果你有一个在WINDOWS启动后自动运行的程序如Norton Utilities、 Nuts and Bolts等,你希望卸载它们,应该使用程序自带的“卸载”选项,一般在“开始”菜单的“程序”文件夹中该文件的选项里会有,或者使用“控制面板”的“添加/卸载”选项。如果你直接删除了这个文件夹,在下次启动后就可能会出现上面的错误提示。其原因是W INDOWS找不到相应的文件来匹配启动命令,而这个命令实际上是在软件第一次安装时就已经置入到注册表中了。你可能需要重新安装这个软件,也许丢失的文件没有备份,但是至少你知道了是什么文件受到影响和它们来自哪里。 对文件夹和文件重新命名也会出现问题,在软件安装前就应该决定好这个新文件所在文件夹的名字。 如果你删除或者重命名了一个在“开始”菜单中运行的文件夹或者文件,你会得到另外一个错误信息,在屏幕上会出现一个对话框,提示“无效的启动程序”并显示文件名,但是没有文件的位置。如果桌面或者“开始”菜单中的快捷键指向了一个被删除的文件和文件夹,你会得到一个类似的“丢失快捷键”的提示。 丢失的文件可能被保存在一个单独的文件中,或是在被几个出品厂家相同的应用程序共享的文件夹中,例如文件夹\SYMANTEC就被Norton Utilities、Norton Antivirus和其他一些 Symantec 出品的软件共享,而对于\WINDOWS\SYSTEM来说,其中的文件被所有的程序共享。你最好搜索原来的光盘和软盘,重新安装被损坏的程序。 文件版本不匹配: 绝大多数的WIN 9X用户都会不时地向系统中安装各种不同的软件,包括WINDOWS的各种补丁例如Y2K,或者将WIN 95 升级到WIN 98,这其中的每一步操作都需要向系统拷贝新文件或者更换现存的文件。每当这个时候,就可能出现新软件不能与现存软件兼容的问题。 因为在安装新软件和WINDOWS升级的时候,拷贝到系统中的大多是DLL文件,而DLL不能与现存软件“合作”是产生大多数非法操作的主要原因,即使会快速关闭被影响的程序,你也没有额外的时间来保存尚未完成的工作。 WINDOWS的基本设计使得上述DLL错误频频发生。和其他版本不同,WIN 95允许多个文件共享\WINDO WS\SYSTEM文件夹的所有文件,例如可以有多个文件使用同一个Whatnot.dll,而不幸的是,同一个DLL文件的不同版本可能分别支持不同的软件,很多软件都坚持安装适合它自己的Whatnot.dll版本来代替以前的,但是新版本一定可以和其他软件“合作愉快”吗?如果你运行了一个需要原来版本的DLL的程序,就会出现“非法操作”的提示。 在安装新软件之前,先备份\WINDOWS\SYSTEM 文件夹的内容,可以将DLL错误出现的几率降低,既然

软件专业答辩常见问题汇总

(1)怎么连接数据库 答案:通过JDBC_ODBC桥连接数据库 (2)数据库有几个表 几张表看一下自己论文的物理设计 (3)数据库的表之间的联系 看一下自己论文中的ER图 (4)数据库的连接代码怎么写/找到数据库的连接代码 连接数据库的代码在WEB_INF下的applicationContext.xml (5)数据库删除是逻辑删除还是物理删除 数据库删除是物理删除。 (6)分页显示怎么实现 分页显示是通过分页标签实现的 (7)系统测试(什么是黑盒、白盒测试) 黑盒测试也称功能测试,它是通过测试来检测每个功能是否都能正常使用。在测试中,把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数据而产生正确的输出信息。 白盒测试也称结构测试或逻辑驱动测试,它是按照程序内部的结构测试程序,通过测试来检测产品内部动作是否按照设计规格说明书的规定正常进行,检验程序中的每条通路是否都能按预定要求正确工作。 (8)解释CSS CSS(Cascading Style Sheet,可译为“层叠样式表”或“级联样式表”)是一组格式设置规则,用于控制Web页面的外观。 (9)webapp怎么配置 只要放到tomcat下面的webapps下面即可,因为webapp是编译后的代码 (10)web.xml中位置文件什么作用 web.xml是初始化工程配置信息 (11)servlet怎么配置 需要在web.xml中配置 (12)解释action action是mvc框架中的控制层,主要实现系统的增删改查 (13)do get/post区别 Get是用来从服务器上获得数据,而Post是用来向服务器上传递数据。 (14)系统采用DreamweaverMX作为开发工具?是吗? 页面是用DreamweaverMX开发,整个程序是利用eclipse开发。 (15)系统采用什么数据库进行开发? 答案:SQL Server2000数据库 (16)系统采用什么架构进行设计? 答案:采用B/S架构进行设计。 (17)系统用到的技术是什么? 答案:JA V A,JSP,Struts框架 (18)系统用的框架是什么? Struts框架 (19)系统服务器是什么?

LabCVI常见问题及解决方法

LabCVI常见问题及解决方法 LabCVI常见问题及解决方法(一) 1. 使用CVI9.0调用由VC++6.0编写的DLL,该DLL在VC中调用是可以的,输出方式也是C语言的。但是在CVI中调用该DLL时,总是提示missing prototype,如何解决? 答:设置BUILD OPTION 在options->Build options | c language options中取消Require function prototypes的检测 2. CVI中如何向设计好的word表格中添加文字和数据? 答:先在表格中需要添加文字和数据的地方做一个“书签”,在CVI中打开该文档后,使用Word_GetProperty (currSelHandle, NULL, Word_SelectionBookmarks, CAVT_OBJHANDLE, &rangeHandle);获得“书签”信息,然后再向该“书签”处添加文字。 3. CVI中如何将波形图控件的图片放到剪贴板中? 答:首先使用GetCtrlDisplayBitmap (panel, FORCEPANEL_GRAPH, 1, &bitmap);获得波形图控件的图片,然后使用ClipboardPutBitmap (bitmap);将图片放入到剪贴板中。 4. CVI中是否支持指向函数的指针,如何实现? 答:可以实现,如下例: int(*pmax)(int a, int b); int x,y,z; pmax=max; printf("input two numbers:\n"); scanf("%d%d",&x,&y); z=(*pmax)(x,y);

JAVA连接各种数据库的代码大全

Java数据库连接大全 注:newInstance()可要可不要。 通用JDBC-ODBC直连方式(无需额外的驱动包): Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); Connection conn=DriverManager.getConnection("jdbc:odbc:Driver={SQL Server};Server=localhost;uid=sa;pwd=1111;Database=db"); 以下方式中Class.forName中的都是需要添加的驱动包。 1Java连接Oralce Class.forName("oracle.jdbc.driver.OracleDriver").newInstance(); String url="jdbc:oracle:thin:@localhost:1521:orcl"; Connection conn=DriverManager.getConnection(url,user,password); 2Java连接MySQL Class.forName("org.gjt.mm.mysql.Driver").newInstance(); //Class.forName("com.mysql.jdbc.Driver"); String URL="jdbc:mysql://localhost/test"; Connection conn=DriverManager.getConnection(url,user,password); 3Java连接SQLServer 连接mssql2000 Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance(); String URL="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=db"; Connection conn=DriverManager.getConnection(url,user,password); 连接mssql2005+ Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver").newInstance(); String URL="jdbc:sqlserver://localhost:1433;DatabaseName=db"; Connection conn=DriverManager.getConnection(url,user,password); 通用方式: Class.forName("net.sourceforge.jtds.jdbc.Driver").newInstance(); String url="jdbc:jtds:sqlserver://localhost:1433;DatabaseName=db"; Connection conn=DriverManager.getConnection(url,user,password); 4Java连接DB2 Class.forName(“com.ibm.db2.jdbc.app.DB2Driver").newInstance(); String URL=”jdbc:db2://localhost:5000/db"; Connection conn=DriverManager.getConnection(url,user,password); 5Java连接Infomix Class.forName("https://www.wendangku.net/doc/5d9633446.html,rmix.jdbc.IfxDriver").newInstance(); String URL="jdbc:informix-sqli://123.45.67.89:1533/db:INFORMIXSERVER=myserver"; Connection conn=DriverManager.getConnection(url,user,password); 6Java连接SyBase Class.forName("com.sybase.jdbc.SybDriver").newInstance(); Properties sysProps=System.getProperties(); SysProps.put("user","userid"); SysProps.put("password","user_password"); Connection conn=DriverManager.getConnection(url,SysProps);

安装数据库过程中常见问题解决方法

一、装数据库时出现command line option syntax error!type command /? for help错误 当安装程序安装到: 安装程序正在安装ms数据访问组件 时,屏幕出现错误提示: command line option syntax error,type command/? for help 然后点确定继续,结果到: 安装程序正在安装HTML帮助 时,屏幕又出现标题为html help 1.32 update错误警对话框提示:command line option syntax error,type command/? for help 然后我再点确定继续,安装程序开始复制文件,复制完文件后又出现错误提示: 无法找到动态连接库sqlunirl.dll(sqlunirl.dll是MDAC的一个组件),于指定路径 点确定后安装程序停止运行,让查看安装日志 解决方法: 引起这问题的原因是,SQLServer的安装文件,放在中文目录下了. 将SQLServer的安装文件,拷到英文目录,安装就OK 比如将: D:\软件\Sqlserver 中的"软件"去掉.

注: MDAC (Microsoft Data Access Components)是微软数据库访问组件,Netpise和许多利用数据库的软件都需要操作系统安装MDAC。很多用户的操作系统中已经存在了MDAC,有些是操作系统内置的、有些是其它应用程序安装的。 补充方法(未测试) 1.重装MDAC 2.修改注册表: HKEY_LOCAL_MACHINE\SOFTW ARE\Microsoft\Windows\CurrentVersion\ setup 删除ExceptionComponents 重启,安装. 很多时候不需要第一步操作 二、解决由于sql2000日志文件引起的“置疑”。 日志有错误--------重新附加提示日志有错误。 日志文件丢失-----丢失了.ldf文件,只有.mdf文件的数据库重建。 步骤: 一、备份“置疑”数据库的数据文件,因为日志文件.ldf出错,可以只备份.mdf 文件。 二、打开企业管理器(SQL Server Enterprise Manager),删除“置疑”数据库,如果提示删除错误,可以重启数据库服务器,然后再试。 三、在企业管理器中,新建同名数据库(假如数据库为test),注意建立的数据库名称,还有数据文件名要保持和原数据库一致。 四、停止数据库服务器。 五、将刚才新建数据库生成的数据库的日志文件test_log.ldf删除,用要恢复的数据库.mdf文件覆盖刚才生成的数据库数据文件test_data.mdf。

常见数据库及其特点

常见数据库及其特点 目前,商品化的数据库管理系统以关系型数据库为主导产品,技术比较成熟。面向对象的数据库管理系统虽然技术先进,数据库易于开发、维护,但尚未有成熟的产品。 (免费,体积小,速度快,成本低,开源,适用于中小型网站) MySQL是最受欢迎的开源SQL数据库管理系统,它是一个快速的、多线程、多用户和健壮的SQL数据库服务器。MySQL服务器支持关键任务、重负载生产系统的使用。MySQL具有以下优势: (1)MySQL是一个关系数据库管理系统。(2)MySQL是开源的。 (3)MySQL服务器是一个快速的、可靠的和易于使用的数据库服务器。 (4)MySQL服务器工作在客户/服务器或嵌入系统中。 Server(流行于Web) SQL Server是由微软开发的数据库管理系统,是Web上最流行的用于存储数据的数据库,它已广泛用于电子商务、银行、保险、电力等与数据库有关的行业。SQL Server 提供了众多的Web和电子商务功能,如对XML和Internet标准的丰富支持,通过Web对数据进行轻松安全的访问,具有强大的、灵活的、基于Web的和安全的应用程序管理等。而且,由于其易操作性及其友好的操作界面,深受广大用户的喜爱。(功能齐全,大型,专业,企业级,其开发工具全部用JAVA来写的) 目前,Oracle产品覆盖了大、中、小型机等多种机型,Oracle成为世界上使用最广泛的关系数据系统之一。 (1)可联结性:Oracle能与多种通讯网络相连,支持客户机/服务器方式和各种协议(TCP/IP、DECnet、等)。 (2)开放性:Oracle良好的兼容性、可移植性、可连接性和高生产率使Oracle RDBMS具有良好的开放性。 (3)名符其实的大型数据库:ORACLE建立的数据库,最大数据量可达几百GB; (4)共享SQL和多线索服务器体系结构:这两个特性的结合,减少ORACLE的资源占用,增强处理能力,能支持成百甚至上千个用户。 (5)跨平台能力:ORACLE数据库管理系统可以运行在100多个硬件和软件平台上,这一点为其它PC平台上的数据库产品所不及。 (6)分布式数据库:可以使物理分布不同的多个数据库上的数据,被看成是一个完整的逻辑数据库。

天正8常见问题

TArch8常见问题(2009.8) Q1.TArch8能否与其他软件和平共处? TArch8能够与大多数具有良好协作特性的第三方软件,共同安装在一台机器上。有些恶劣的第三方软件安装到您的机器后,由于它修改了AutoCAD系统本身,可能导致TArch8不能正常运行,你可向该软件的供应商提出抗议。您也可以通知我们,哪些AutoCAD下的第三方应用软件不能与天正的产品共处一台机器的AutoCAD 200x平台。 Q2.如何打印TArch8的图形和向3.0用户传图? 许多设计单位在专门的机器上输出图纸,“天正插件”最适合于这样的机器,安装了“天正插件”后,该机器就可以阅读和打印用TArch8绘制的图形。 有四种方法可以让其他专业的设计人员使用TArch8绘制的建筑图形: 1.在其他专业设计人员的机器上安装“天正插件”; 2.执行【图形导出】命令,导出为TArch3格式的其他专业图形。 3.使用天正公司8.0版本的其他专业产品。 4.在高级选项中,将代理实体方式启用,之后新保存的TArch8图形可以在其它机器 上显示和打印,但文件大小会大大增加。 Q3.为何图形导出后出现的填充和文字丢失? 一些设计单位在执行“图形导出”(以前叫“另存旧版”)命令后,把图形文件复制到其他机器,由天正3或者acad打开,出现丢失字体或者填充图案的问题。 原因是该机器的Acad系统没有天正8或者acad200X提供的字体或者图案文件,解决方法: 1.把天正sys下的GB*.shx字体复制到目标机器的天正3的sys目录下。 2.把天正sys下的acad*.pat图案文件复制到上面的同一个目录下。 Q4.为何TArch8 2004在Windows 98下不能图形导出,不能新建和打开图库? AutoCAD 2004不支持Windows 98,用户可以参考AutoCAD的帮助文档《安装和许可指南》有关系统需求的描述。下面是AutoCAD 2004对操作系统的要求: Windows XP Professional、Windows XP Home、Windows Tablet PC、

ACCESS数据库中常见的SQL语句汇总教程

ACCESS数据库的SQL语句教学 1、查询所有记录:Select *通常用于快速查看表中的记录。当对表的结构无法确切记忆时,或要快速查看表中的记录时,使用Select *是很方便的。 use 企业销售管理系统 Select * from 职工 2、投影查询:很多时候并不需要将所有列的数据都显示出来。投影查询就是允许用户显示所需要的列。假设显示职工表中职工号、姓名、工资信息,具体操作方法如下。 Select 职工号,姓名,工资 from 职工 在Select查询中,还可以按照实际的需要或自己的喜好安排显示列的顺序,如果要把姓名放到第一列,则代码如下: Select 姓名, 职工号,工资 from 职工 3、条件查询:显示wh1或wh2仓库、性别不为女、工资在1300~2100之间的职工信息。具体操作如下: Select * from 职工号 where(仓库号='wh1' or 仓库号='wh2') And not 性别='女' and 工资>=1300 and 工资<=2100 在这里一定要注意,(仓库号='wh1' or仓库号='wh2')一定要加括号,否则就不是原题的意思。 4、谓词In查询:在查找特定条件的数据时,如果条件较多,就需要用到多个Or运算符,以查找满足其中任一条的记录。但使用多个Or运算符,将使Where子句变得过于冗长,这时使用In就非常清楚。另外,在后面讲解的嵌套查询中,也必须使用In查询。下面以显示zg1、zg2、zg11、zg15的订购单信息为例具体讲解一下。

使用Or运算符 Select * from 订购单 where 职工号='zg1' or 职工号='zg2' Or 职工号='zg11' or 职工号='zg15' 使用谓词In Use 企业销售管理系统 Select * from 订购单 where 职工号 in('zg1', 'zg2', 'zg11', 'zg15') 在Select语句中,还支持In与Not结合使用。假设显示职工号不为zg1, zg2, zg11, zg15的订购单信息,具体代码如下: 使用Or运算符 Select * from 订购单 where 职工号!='zg1' or 职工号!='zg2' Or 职工号!='zg11' or 职工号!='zg15' 使用谓词In Use 企业销售管理系统 Select * from 订购单 where 职工号 not in('zg1', 'zg2', 'zg11', 'zg15') 5、模糊Like查询:有的时候,我们不清楚所要查询的信息,如显示职工信息,但不能确定该职工的姓名,只知道他姓名中含有“王”字,那该如何查找呢?SQL中提供了Like关键字,使用Like进行了查询时,还要指定通配符。 通配符及其含义

mysql数据库常用语句大全

mysql数据库常用语句 SQL分类: DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE) DML—数据操纵语言(SELECT,DELETE,UPDATE,INSERT) DCL—数据控制语言(GRANT,REVOKE,COMMIT,ROLLBACK) 首先,简要介绍基础语句: 1、说明:创建数据库 CREATE DATABASE database-name 2、说明:删除数据库 drop database dbname 3、说明:备份sql server --- 创建备份数据的device USE master EXEC sp_addumpdevice ’disk’, ’testBack’, ’c:mssql7backupMyNwind_1.dat’ --- 开始备份 BACKUP DATABASE pubs TO testBack 4、说明:创建新表 create table tabname(col1 type1 [not null] [primary key],col2 type2 [not null],..) 根据已有的表创建新表: A:create table tab_new like tab_old (使用旧表创建新表) B:create table tab_new as select col1,col2… from tab_old definition only 5、说明: 删除新表:drop table tabname 6、说明: 增加一个列:Alter table tabname add column col type 注:列增加后将不能删除。DB2中列加上后数据类型也不能改变,唯一能改变的是增加varchar 类型的长度。 7、说明: 添加主键:Alter table tabname add primary key(col) 说明: 删除主键:Alter table tabname drop primary key(col) 8、说明: 创建索引:create [unique] index idxname on tabname(col….) 删除索引:drop index idxname 注:索引是不可更改的,想更改必须删除重新建。 9、说明: 创建视图:create view viewname as select statement 删除视图:drop view viewname 10、说明:几个简单的基本的sql语句 选择:select * from table1 where 范围 插入:insert into table1(field1,field2) values(value1,value2) 删除:delete from table1 where 范围 更新:update table1 set field1=value1 where 范围

数据库SQL注入分类及防护思路数据库SQL注入分类及防护思路

数据库SQL注入分类及防护思路 作者:安华金和思成 一. 背景 数据库凭借其强大的数据存储能力和卓越的数据处理性能,在各行各业的信息化建设中发挥着关键的作用。随着数据库在各行业的大规模应用,数据泄露事件也频繁发生,这就使数据库安全问题也日益凸显,逐渐变成用户越来越担心的问题。虽然数据库厂商已经做了许多有效的措施来尽量解决数据库存在的安全问题,但至今为止数据库的安全漏洞仍然不断增加。下图为近5年数据库漏洞数量图。 在数据库漏洞中最为常见的漏洞类型是SQL注入漏洞。安华金和数据库攻防实验室结合多年的实践结果总结出了数据库注入的分类分享给大家,以便大家对SQL注入型漏洞有一个更加全面的了解。 SQL注入漏洞不仅出现在WEB端,也出现在数据库的自定义或标准库的存储过程、函数、触发器中。数据库自身的SQL注入漏洞比WEB端的注入漏洞对数据库的威胁性更大。本文对SQL注入的分类是从数据库的角度来划分,不考虑WEB端的角度,这两者在分类上有着不同的角度。 首先在解释不同的数据库SQL注入漏洞之前先简要说明一下数据库攻击者能够进行SQL 注入的主要原理:SQL注入漏洞是用户在输入中混入了程序命令。最直接的例子就是攻击者

在正常的Web 页面中把自己的SQL 代码通过用户输入传输到相应的应用程序中,从而执行 一些非授权的SQL 代码,以达到修改、窃取或者破坏数据库信息的目的。SQL 注入攻击甚至可以帮组攻击者绕过用户认证机制,使其可以完全的操控远程服务器上的数据库。如果应用 程序使用一些用户输入的数据来构造动态的SQL语句去访问数据库,将可能遭受到SQL 注入攻击。同样的如果在代码中使用了存储过程,并且这些存储过程缺乏对用户输入的合理限 制也很容易发生SQL 注入。 二. SQL注入分类 2.1 注入途径分类 SQL注入漏洞按照注入的物理途径可以分成两大类:通过WEB端对数据库进行注入攻 击和直接访问数据库进行注入攻击。 直接访问数据库进行注入攻击是以数据库用户的身份直接连接数据库进行SQL注入攻击。在这种攻击方式中,攻击者可以通过SQL注入来执行SQL语句从而提高用户权限或者越权 执行。而那些在PL/SQL程序中在给用户授权的时候没有使用authidcurrent_user进行定义的存储过程、函数、触发器、程序块将更容易受到SQL注入攻击。 通过WEB应用程序的用户对数据库进行连接并进行SQL注入攻击。在这种类型的SQL 注入攻击中,攻击者多采用拼接语句的方法来改变查询的内容。获取该账号权限下的全部信息。

常见问题处理集

学校办公系统常见问题处理办法集合 一、目录: 1、IIS6上传附件200K限制解除,IIS7.0的上传文件大小修改方法如下 2、下载不了EXE文件处理办法 3、本地安装,无网卡试用 4、SQL Server 2008 错误 233 的解决办法(不能连接数据库) 5、 YFSchoolOApro.YFSchoolDll 错误 '80040e4d' 6、请不要安装360防火墙(会非常大的影响上传文件速度)! 7、免费天气预报代码请到这里找 8、Server 对象错误 'ASP 0177 : 800401f3' 9、SQL Server 1069 错误(由于登录失败而无法启动服务)解决方法 10、成绩录入和OA精灵不能用 11、印校徽时出现 Persits.Jpeg.1 错误 '800a0001' 错误 12、安装SQL 提示错误:以前的某个程序安装已在安装计算机上创建挂起的文件操作。运行安装程序之前必须重新启动计算机 13、务必保证你的放数据的分区是NTFS,因为FAT32文件最大只能 4G。 14、sql2005数据库 SA登陆可以,但连接不了的问题 15、OA精灵或成绩录入错误 16、SQL连接失败 17、问题描述:请求的资源在使用中 18:SQL2005不能IP连接 19、如何解决“从字符串转换为datetime时发生语法错误” 20、安装MS SQL2000 的用户,如果改了windows 2003 的系统管理员账户密码,客户端不能登陆 21、IIS7 配置 22、windows 2008 设置。 如何降低windows server 2008中IE的安全级 windows server2008自动登录 23、 SQL 2008附加 2000的只读错误问题 24、IIS7多域名绑定同一物理目录,设置不同默认文档的解决方案

动态链接库技术(一)

动态链接库技术(一) 摘要:动态链接库技术实现和设计程序常用的技术,在windows和linux系统中都有动态库的概念,采用动态库可以有效的减少程序大小,节省空间,提高效率,增加程序的可扩展性,便于模块化管理。但不同操作系统的动态库由于格式不同,在需要不同操作系统调用时需要进行动态库程序移植。本文分析和比较了两种操作系统动态库技术,并给出了将visual c++编制的动态库移植到linux上的方法和经验。 1、引言 动态库(dynamic link library abbr,dll)技术是程序设计中经常采用的技术。其目的减少程序的大小,节省空间,提高效率,具有很高的灵活性。采用动态库技术对于升级软件版本更加容易。与静态库(static link library)不同,动态库里面的函数不是执行程序本身的一部分,而是根据执行需要按需载入,其执行代码可以同时在多个程序中共享。 在windows和linux操作系统中,都可采用这种方式进行软件设计,但他们的调用方式以及程序编制方式不尽相同。本文首先分析了在这两种操作系统中通常采用的动态库调用方法以及程序编制方式,然后分析比较了这两种方式的不同之处,最后根据实际移植程序经验,介绍了将vc++编制的windows动态库移植到linux下的方法。 2、windows动态库技术 动态链接库是实现windows应用程序共享资源、节省内存空间、提高使用效率的一个重要技术手段。常见的动态库包含外部函数和资源,也有一些动态库只包含资源,如windows字体资源文件,称之为资源动态链接库。通常动态库以.dll,.drv、.fon等作为后缀。相应的windows 静态库通常以.lib结尾,windows自己就将一些主要的系统功能以动态库模块的形式实现。 windows动态库在运行时被系统加载到进程的虚拟空间中,使用从调用进程的虚拟地址空间分配的内存,成为调用进程的一部分。dll也只能被该进程的线程所访问。dll的句柄可以被调用进程使用;调用进程的句柄可以被dll使用。dll模块中包含各种导出函数,用于向外界提供服务。dll可以有自己的数据段,但没有自己的堆栈,使用与调用它的应用程序相同的堆栈模式;一个dll在内存中只有一个实例;dll实现了代码封装性;dll的编制与具体的编程语言及编译器无关,可以通过dll来实现混合语言编程。dll函数中的代码所创建的任何对象(包括变量)都归调用它的线程或进程所有。 根据调用方式的不同,对动态库的调用可分为静态调用方式和动态调用方式。 (1)静态调用,也称为隐式调用,由编译系统完成对dll的加载和应用程序结束时dll卸载的编码(windows系统负责对dll调用次数的计数),调用方式简单,能够满足通常的要求。通常采用的调用方式是把产生动态连接库时产生的.lib文件加入到应用程序的工程中,想使用dll中的函数时,只须在源文件中声明一下。lib文件包含了每一个dll导出函数的符号名和可选择的标识号以及dll文件名,不含有实际的代码。lib文件包含的信息进入到生成的应用程序中,被调用的dll文件会在应用程序加载时同时加载在到内存中。 静态调用时,使用DLL 的程序需要获取以下信息:

数据库建表操作SQL代码大全

?首页 ?发现小组 ?发现小站 ?线上活动 joshua的日记 ?joshua的主页 ?广播 ?相册 ?喜欢 ?二手 ?活动 ?发豆邮 数据库建表操作SQL代码大全 2009-04-23 17:39:37 决定在这里建立自己的学习数据库的日记,以便随时学习,随时回顾。 从今天开始。 新建表: create table [表名] ( [自动编号字段] int IDENTITY (1,1) PRIMARY KEY , [字段1] nVarChar(50) default '默认值' null , [字段2] ntext null , [字段3] datetime, [字段4] money null , [字段5] int default 0, [字段6] Decimal (12,4) default 0, [字段7] image null , ) 删除表: Drop table [表名]

INSERT INTO [表名] (字段1,字段2) VALUES (100,'https://www.wendangku.net/doc/5d9633446.html,') 删除数据: DELETE FROM [表名] WHERE [字段名]>100 更新数据: UPDATE [表名] SET [字段1] = 200,[字段2] = 'https://www.wendangku.net/doc/5d9633446.html,' WHERE [字段三] = 'HAIWA' 新增字段: ALTER TABLE [表名] ADD [字段名] NVARCHAR (50) NULL 删除字段: ALTER TABLE [表名] DROP COLUMN [字段名] 修改字段: ALTER TABLE [表名] ALTER COLUMN [字段名] NVARCHAR (50) NULL 重命名表:(Access 重命名表,请参考文章:在Access数据库中重命名表) sp_rename '表名', '新表名', 'OBJECT' 新建约束: ALTER TABLE [表名] ADD CONSTRAINT 约束名CHECK ([约束字段] <= '2000-1-1') 删除约束: ALTER TABLE [表名] DROP CONSTRAINT 约束名 新建默认值 ALTER TABLE [表名] ADD CONSTRAINT 默认值名DEFAULT 'https://www.wendangku.net/doc/5d9633446.html,' FOR [字段名] 删除默认值 ALTER TABLE [表名] DROP CONSTRAINT 默认值名 删除Sql Server 中的日志,减小数据库文件大小 dump transaction 数据库名with no_log backup log 数据库名with no_log dbcc shrinkdatabase(数据库名) exec sp_dboption '数据库名', 'autoshrink', 'true' \'添加字段通用函数 Sub AddColumn(TableName,ColumnName,ColumnType) Conn.Execute("Alter Table "&TableName&" Add "&ColumnName&" "&ColumnType&"") End Sub

相关文档
相关文档 最新文档