- 博客(33)
- 收藏
- 关注
原创 ORACLE 表空间不足与用户配额(限额)不足的问题解决
表空间不足与用户配额不足是两种不同的概念。表空间的大小是指实际的用户表空间的大小,而配额大小指的是用户指定使用表空间的的大小。两者的解决方式亦不相同。配额问题的解决:alter user skate quota 2g on tablespace_name;视图: dba_ts_quotas : DBA_TS_QUOTAS describes tablespace quotas for all us
2009-11-28 09:58:00
1336
转载 Oracle安装和卸载问题收集(六)
Oracle 9i AS安装错误 解决:按照它的提示编辑host文件,加上127.0.0.1 localhost #localhost spfile 和 pfile异同 spfile,服务器参数文件是在Oracle9i及更高版本中一个新特性。其使Oracle9i可以更改大多数过去在使用数据库联机和用户时不能动态更改的初始化参数。此外,服务器参数文件使Oracle9i能记住会话之间动态更改过
2009-06-24 15:16:00
1280
转载 Oracle安装和卸载问题收集(五)
日期乱码 Oracle Server的设置如下 NLS_CHARACTERSET WE8ISO8859P1 NLS_LANGUAGE AMERICAN NLS_NCHAR_CHARACTERSET AL16UTF16 机器上的注册表 NLS_LANGUAGE AMERICAN_AMERICA.WE8ISO8859P1 问题: Java程序传日期到Oracle的function里,经过lower(
2009-06-24 15:14:00
831
转载 Oracle安装和卸载问题收集(四)
ORA-04031:unable to allocate … byters of shared memory("shared pool","unknown object","sga heap","db_block_buffers") 问题: DELL服务器装不上ORACLE8.1.5的问题,出现下面的错误提示是在建立数据库之前,系统先要检查内存时出现的, ORA-04031:unable to
2009-06-24 15:13:00
1113
转载 Oracle安装和卸载问题收集(三)
在单机上安装805,OracleTNSListener80不能启动 问题: 我在win2000下安装了ORACLE805,有网卡,但是没有没有连网。 解答: 1.805必须联网,设置Microsoft loopback或使用816。直接把Listener的侦听地址设到127.0.0.1上试试看。 2.把(PROTOCOL=ipc 和snmp)的配置删除,我是在win98下装的804, liste
2009-06-24 15:11:00
775
转载 Oracle安装和卸载问题收集(二)
Oracle 9i的安装过程 环境:New CY1G, 256+128M, win2000 SP3,Oracle 9.2.0.1.0 1.启动OUI(Oracle universal installer),选择下一步。 2.选择安装的产品,即Oracle Database。点击下一步。 3.选中“标准版”,需要2.8G的空间,(这些安装类型的主要差别是产品被授予许可的方式不同,企业版仅仅包
2009-06-24 15:09:00
751
转载 Oracle安装和卸载问题收集(一)
在安装过程中出现的一些问题的解决办法。值得收藏与学习。比如在安装的时候如果有中文的路径则会出现类似这样的提示:加载数据库时出错:areasQueries Oracle的系统要求 企业版:CPU 最低PENTIUM 200M 推荐 PENTIUMIII 1G以上 内存 最低128M 推荐 512M 硬盘空间 系统盘140M 安装盘4.5G(FAT32)或2.75G(NTFS) 标
2009-06-24 15:07:00
783
原创 分布式查询
/*分布式查询*/分布式查询(Distributed Query)能够访问存放在同一部计算机或不同计算机上的SQL Server或不同种类的数据源。众所周知,OLE DB是Microsoft规格的公用数据访问的应用程序开发界面(Application Programming Interface,API),而SQL Server2000即是使用OLE DB来支持分布式查询的。SQL Server20
2007-12-07 17:34:00
3131
1
原创 动态创建命令语句
一般来说,我们会在程序运行期间将所要运行的命令语句组合成一个字符串,然后使用EXECUTE命令或系统存储过程sp_executesql来运行。今天,我们将来详细探讨这两种方法各自的优劣点。(一) 使用EXECUTE命令运行命令字符串要使用EXECUTE命令来运行一个命令字符串的语法如下:EXEC[UTE] ({@string_variable|[N] stql_string} [+...n
2007-12-06 13:47:00
1901
1
原创 从master备份中还原master数据库
下面是我整理的有关“从master备份中还原master数据库”的常见方法,以期能和大家分享!整体思路1: 在恢复master的备份时要注意:必须在单用户(single user)模式下进行 a.进入单用户模式的方法: 首先,在命令行模式下输入sqlservr -c -f -m或者输入sqlservr -m 其中:-c 可以缩短启动时间,SQL Serve
2007-11-28 12:03:00
2606
2
原创 触发器---单条与多条数据日志的考虑
/*单条与多条数据日志的考虑常规情况下,在编写触发器时,最容易犯的错误就是只考虑到单条数据日志的添加、修改与删除,而没有考虑到多条数据日志的批处理添加、更新与删除的问题。比如:如果你使用INSERT...SELECT命令来批处理添加多条数据日志时,若是触发器没有做周详的判断,很可能会发生不可预料的错误。下面的范例程序是以SQL SERVER2000的范例数据库pubs中的sales与titles数
2007-11-27 15:18:00
1472
原创 文件和文件组
Microsoft SQL Server 2000 使用一组操作系统文件映射数据库。数据库中的所有数据和对象(如表、存储过程、触发器和视图)都存储在下列操作系统文件中: 主要 该文件包含数据库的启动信息,并用于存储数据。每个数据库都有一个主要数据文件。次要这些文件含有不能置于主要数据文件中的所有数据。如果主文件可以包含数据库中的所有数据,那么数据库就不需要次要数据文件。有些数据库可能足
2007-11-27 11:44:00
1723
原创 SQL Server 6.5升级到SQL SERVER 2000
SQL Server 6.5升级到SQL SERVER 2000前提条件:(一) SQL Server 6.5一般安装在 Windows NT 4.0 平台下,要求NT 达到 SP4.SQL Server 6.5 至少要打到 sp4,打到SP5更好(二) SQL Server 6.5的Tempdb数据库数据文件,要扩展到10M以上,如果你要升级的数据库很大,超过500M,建议按照数据文件大小*10
2007-11-27 11:41:00
1082
原创 对数据库模型进行性能优化
在一个数据库应用程序中,程序是从一个健全的数据库模型开始的。明白了这一点后,我们来看几种可以优化数据库模型的方法,通过这些方法可以提高查询效率。(1) 少许的逆规范化(denormalization)大有帮助。尽量避免这样的数据库模型:它有一个名为Gender的表,表中有3个值。如果你有一个1:1关系的表,而且它经常被它的父表访问,那么你可以考虑合并这两张表。(2) 让应用程序多承担一些责任。如果
2007-09-11 15:09:00
2350
1
原创 数据库迁移问题
问题:由于硬盘分区空间不够,我想将一个数据库存放的位置从一个分区转移到另外的分区,请问我该如何操作?问题分析:在新建一个数据库的时候,我们可以分别指定其数据文件(.mdf)以及事务日志文件(.ldf)存放的位置。如果需要重新指定一个数据库存放的位置,对于一般用户数据库与系统数据库而言,要分别用不同的方法来实现。问题解答:在SQL Server中,要将一个数据库存放的位置转移到另外的位置,可
2007-07-17 09:41:00
1498
原创 孤立用户问题
问题1:在利用企业管理器使用向导新建一个登录,并且在“数据库访问”选项下面赋予这个登录访问某个数据库的权限,遇到如下错误信息:错误 21002:[SQL-DMO]用户"user"已经存在。分析和解答:这个错误一般会发生在将数据库从一台服务器迁移到另一台服务器之后,如果在新的服务器里面找不到某一个用户对应的登录,就会发生“孤立用户”的问题。此时,尽管在新的服务器里面没有这个登录,而在该数据库的s
2007-07-14 14:39:00
1123
原创 实现数组的功能
SQL Server并没有数组类型,ANSI SQL-92标准中并没有任何有关数组方面的定义。要实现其他高级语言中的数组功能,我们必须使用一些特殊的处理方法,其中包括特殊设计的字符参数、临时表、XML等。方法1:使用特殊设计的字符参数来模拟数组。我们可以用VARCHAR数据类型来模拟一个数组,数组中元素用逗号隔开,接着通过WHILE循环使用CHARINDEX以及SUBSTRING函数来提取其中的元
2007-07-12 00:22:00
916
原创 杀死锁和进程
如何去手动的杀死进程和锁?最简单的办法,重新启动服务。但是这里要介绍一个存储过程,通过显式的调用,可以杀死进程和锁。use mastergoif exists (select * from dbo.sysobjects where id = object_id(N[dbo].[p_killspid]) and OBJECTPROPERTY(id, NIsProcedure) = 1)d
2007-07-09 13:12:00
2602
原创 跨库触发器应用
--在数据库test中创建表aause testgocreate table aa(id int primary key not null,name1 varchar(20),name2 varchar(20),name3 varchar(20))--在数据库test1中创建表bbuse test1gocreate table bb(id int primary key not null,name
2007-07-06 08:52:00
2629
2
原创 探讨 CASE 的不同用法
探讨 CASE 的不同用法CASE 可能是 SQL 中被误用最多的关键字之一。虽然你可能以前用过这个关键字来创建字段,但是它还具有更多用法。例如,你可以在 WHERE 子句中使用 CASE。首先让我们看一下 CASE 的语法。在一般的 SELECT 中,其语法如下:SELECT =CASEWHEN THEN WHEN THEN ELSE END 在上面的代码中需要用具体的参数代替尖括号中的内
2007-04-06 14:28:00
954
原创 恢复损坏的master数据库
恢复损坏的master数据库我深信,大多数网友一看到这个标题,就头痛,就欲“远而避之”!然,身为类似数据库管理员的我们,又怎能去回避它呢?面对问题,我们终究还是要去正视它并想办法解决它的。相信:风雨过后会有美丽的彩虹的!遇到损坏或者错误的master数据库是最难解决情况之一。Master数据库包含了SQL Server需要的关键信息。如果master数据库出错,那么SQL Server
2006-06-24 16:29:00
2175
原创 T-SQL中的Select查询(续4)
T-SQL中的Select查询(续4)这两天因房子问题,实在抽不出空来,这不现在趁午休时间,就把该“T-SQL中的Select查询”系列结个尾吧!今天呢,让我们一起来探讨一下“空值”的相关问题吧!在关系数据库模型中使用空值来表示缺失的数据。在实际中,空值说明还没有向数据库中输入相应的数据,或者某个特定的纪录行暂不需要使用该列。从技术的角度来说,空值表示“未知的值”,任何包含空值的表
2006-06-18 15:10:00
1340
原创 T-SQL中的Select查询(续3)
T-SQL中的Select查询(续)SQL可以按照多个列来排序,并且用来排序的列不必是select语句要返回的结果列,所以排序列的方式具有很大的灵活性。如果确实需要对数据进行排序,那么就应当利用ordre by子句来实现它,这是一种好的开发习惯。(1) 使用列名指定排序顺序SELECT FirstName,LastNameFROM dbo.CustomerORDER
2006-06-11 12:37:00
1622
1
原创 T-SQL中的Select查询(续2)
T-SQL中的Select查询现在来讨论一下:WHERE条件。Where条件对from子句产生的数据进行筛选,挑出那些要放到结果集中的记录行。在这里需要提到一点的是:一种提高客户/服务器数据库性能的有效途径是:让数据库引擎来完成筛选数据的工作,而不要让应用程序来过滤那些无用的数据。然而,如果数据库的设计使得需要在where子句中使用函数来定位记录行,这些函数就会严重的降低查询的性能,因
2006-06-04 16:38:00
1271
原创 T-SQL中的Select查询(续1)
T-SQL中的Select查询(续)下面来谈一下:Case表达式。这里所说的case命令与其它语言中用到的case命令是有区别的。它不是用来对程序流程进行控制的,而是基于条件来逻辑地确定一个表达式的值。要注意:系统不会为case表达式提供列名,因此,必须记住一定要为每个case表达式提供列名。1. 简单的Case。在简单的case中,第一个参数是要检查的表达式,接着是
2006-06-04 14:18:00
1140
原创 T-SQL中的Select查询
T-SQL中的Select查询Select是SQL中功能最为强大的命令。对于Select---这个最重要的数据操作命令(DML)可以有无尽的话题。要明白,了解和掌握Select为我们提供的多种选择以及一些创造行动技术方法,是成为一个成功的SQL Server开发人员或者DBA的关键。在SQL Server中所提供的两种主要的用户工具:企业管理器和查询分析器,都是用于开发和测试select语
2006-05-30 21:52:00
1483
原创 浅谈对数据库模型进行性能优化
对数据库模型进行性能优化好了,借午休之际,让我们来聊聊对数据库模型进行性能优化的问题吧!在一个数据库应用程序中,程序是从一个健全的数据库模型开始执行的。明白了这一点,我们来看几种可以优化数据库模型的方法,以通过这些方法可以提高查询效率。还等什么,赶快看看吧!1. 少许的逆规范化(denormalization)大有帮助。不要出现有像名为Gender的表,表中有3个值。另外,如
2006-05-30 15:05:00
1294
原创 谈“索引”
谈“索引”(一)创建索引对于数据库中较小的表来说,使用扫描原始数据的方法可以工作很好,然而,当数据量变大时,就必须使用索引来提高数据检索的速度。在考虑索引的创建时,需要注意的是:提高查找速度与提高更新速度是相互矛盾的。索引可以极大地提高读取数据的速度,但在写数据时,它们却会带来额外的工作。使用图形界面工具创建和管理索引的方法主要有下面3种:1. 创建索引向导。可以从
2006-05-28 19:30:00
1498
原创 详谈关系数据库中的“键”(续2)
详谈关系数据库中的“键”(续) 今天我们来讨论外键。 从表通过指向主表的外键来与主表相关联。人们常犯的一种错误是:认为参照完整性是对于主键的约束。但实际上,参照完整性要求的是外键值必须引用有效的主键值,所以这项约束是对于外键的约束,而不是对于主键的约束。在T-SQL脚本中,可以使用两种方法来声明完整性约束:既可以在创建表的代码中声明完整性约束,也可以在创建表之后再创建约束。其声
2006-05-28 14:15:00
1456
原创 详谈关系数据库中的“键”(续1)
(1)天然主键 在现实生活中存在着许多看起来可以惟一地标识一行记录的值,如:身份证号码、汽车牌照号码等。数据库逻辑模式设计往往会使用这些天然的主键,尽管这些天然主键中没有哪一个是十分可靠的。 可以让用户把它们当作查找和命名一行记录的“主键”,但绝不能把它们作为实际的主键。 如果必须使
2006-05-27 18:04:00
1537
原创 详谈关系数据库中的“键”
关系数据库中的“键”主键和外键是把多个表组织为一个有效的关系数据库的粘合剂。主键和外键的设计对物理数据库的性能和可用性都有着决定性的影响。必须将数据库模式从理论上的逻辑设计转换为实际的物理设计。而主键和外键的结构是这个设计过程的症结所在。一旦将所设计的数据库用于了生产环境,就很
2006-05-27 11:57:00
3076
8
翻译 开发性能良好的数据库
开发性能良好的数据库从项目最开始的计划阶段就应该开始数据库优化:在数据库开发结束之后,再想提高性能就很困难了。对于设计错误的数据库,随着开发工作的进展,修复其中的问题所要付出的代价将会显著增加。对于在项目的开始阶段只需要5分钟的时间就可以精心实施的约束,如果要在数据库使用数年之后再来修
2006-05-27 11:19:00
2207
1
原创 数据库中复合键的优缺点!
复合键最明显的优点是可以减少数据库表的数量。然而,复合键的缺点却也是很明显的:1.使得表与表之间的相互依赖性程度加深;2.会出现更为复杂的约束、规则;3.对用户更新数据的限制大大提高;4.这样的数据库表设计,很容易出现非主属性对该复合键的部分依赖,使得规范化程度最低(多数只能达到1NF),所以存在严重的数据冗余和更新异常问题等。当然,可能还有很多... ...总之,我认为对于复合键来说,其缺点
2006-05-23 15:37:00
2590
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人