- [ MySQL ] TFS2008SP1, 升级数据库从SQL2005SP3到SQL2008SP1
点击:0 发布日期:02/22
现有配置:W2K8 SP2 X86 + TFS2008RTM + SQL2005SP3
期望配置:W2K8 SP2 X86 + TFS2008SP1 + SQL2008SP1
过去几个月里,看到很多人很多次的失败,一直不敢升级TFS服务器,因为整个Team的Source Code, Bug, Report, SharePoint信息都存储在这里,看到TFS2010 RC已经发布,估计TFS 2010 RTM也不远了,心里痒痒的,SQL2005SP3提供的服务和功能的确太少了,我需要升级升级升级!!
鼓足勇气,下午一点多种开始着手升级工作:
1,备份服务器,我的TFS服务器是个虚拟机VM,直接Copy备份即可
2,安装VSTS2008 SP1, 2:00PM - 2:45PM
3,安装TFS2008 SP1, 2:45PM - 3:30PM (中间卡壳了,被我直接强杀进程,不知道会不会有后遗症)
4,升级SQL2008SP1,3:30PM - 6:30PM (升级好慢,一部分安装文件存储在US,所以速度稍慢)
5,全部升级完毕,检查一般功能是否可用
5.1,Reports -- Pass (这个能用就放心了,呵呵,就担心Report Service)
5.2,Source Code -- Pass
5.3,Bug Query -- Pass
5.4,Create New Team Project -- Pass
大功告成,没有失败~~也没有太多喜悦
期待 TFS 2010 RTM Release...
- [ 数据库开发 ] Moonlight 2.0紧随Silverlight而来
点击:0 发布日期:02/15
Moonlight 2.0版本现在可以从Novell的Mono项目网站上下载了,可用于Firefox插件。这个软件允许WMA文件和内容在Linx下执行,并使用微软的 富互联网Silverligh技术。新的版本,原定几个月彰推出,目前是为了广泛兼容Silverlight 2.0。
当前微软的RIA产品稳定版本是3.0,但公司已经在他的专业开发者大会上推出了4.0测试版。如果Moonligh开发团队能按全的雄心目标,根 据路线图计划Silverlight 3的Linux实现应该在2010年第三季度推出,届时也将推出Moonlight 4 alpha版本。
有媒体报导引用了Novell产品开发副总裁Miguel de Icaza,他说在Moonlight 2中将包含一些 Silverlight 3介绍中的功能。例如:模块化媒体管道,Ogg和Dirac编解码器,改进了流媒体功能让用户在视频中前进后退几乎看不到延迟。 3D像素渲染没有实现。
Moonlight的开发者应用程序需要使用Microsoft的Visual Studio开发环境或MonoDevelop,它的2.2版本昨天刚刚发布。Mono runtime包括了Moonlight 2将允许 C#, Ruby, Python和JavaScript开发者为Moonlight开发应用。
最后还提到了专约问题,微软承诺不会起诉用户和厂商使用Moonlight中的微软技术,这意味着linux发行版,如Ubuntu或Fedora将可以包括Moonlight发行..
- [ MySQL ] 甲骨文数据库曝漏洞 黑客可从远程访问
点击:0 发布日期:02/04
2月4日消息 据了解,一位计算机安全专家发现广泛应用的甲骨文软件中存在一些安全漏洞。黑客利用这些安全漏洞能够远程访问企业和政府数据库中的敏感信息。
英国的一家计算机安全公司NGSSoftware的首席研究科学家David Litchfield说,甲骨文数据库设计中的一个安全漏洞能够让黑客通过互联网突破专用的数据库。
Litchfield星期三在华盛顿举行的黑帽会议上展示了他的研究结果之后说,这个安全漏洞能够让攻击者取得全面的控制权,不需要用户ID和口令。所有的防火墙都不管用。
Litchfield说,他在去年11月警告了甲骨文这个安全漏洞,希望甲骨文在今年1月发布的每季度安全补丁中修复这个安全漏洞。但是,甲骨文没有这样做。因此,他决定公开这个安全漏洞。
甲骨文官员不愿意对这个事情发表评论。
Litchfield说,他认为每10个甲骨文数据库大约有9个容易受到攻击。他说,改变甲骨文软件默认的设置可能会阻止黑客利用这个安全漏洞。
他说,现在不可能说黑客是否已经实际利用这个安全漏洞非法突破甲骨文的数据库。
- [ MySQL ] MySQL V5.1发现严重BUG 可能导致数据丢失
点击:0 发布日期:02/01
Sun在上周发布了MySQL数据库软件5.1版,之后他们称包括在新特性在内,该版本存在很多bug需要进行修复。据MySQL创始人Michael Wideniu在blog中称,已经发现的bug问题很严重,可能会导致崩溃甚至数据丢失,而这个版本的bug不仅在就的功能上出现,新的特性也存在bug。
据悉,一些bug和分区功能有联系,比如当它崩溃之后很难恢复分区表,而重新建立分区表之后会导致数据丢失。Widenius强调道,尤其是存在多个分区的数据库更加容易导致这个问题,对于这个版本,建议用户先进行测试再决定是否要进行部署。
- [ MySQL ] MySQL中文参考手册---15 为MySQL增加新过程
点击:322 发布日期:08/03
在MySQL中,你可以定义一个用C++写地过程,它能在查询被送到客户前存取和修改查询中的数据。修改可一行一行地或在GROUP BY层次上进行。
我们已经在MySQL3.23中创建了一个过程例子来显示它能做什么。
15.1 analyse过程
analyse([max elements,[max memory]])
这个过程定义在“sql/sql_analyse.cc”,它检验来自你的查询的结果并返回结果的分析。
max elements(缺省256)是analyse将注意的每列不同值的最大数量。这被analyse用来检查最佳的列类型是否应该是ENUM类型。
max memory(缺省8192)是在analyse尝试寻找所有不同值的时候应该分配给每列的最大内存量。 SELECT ... FROM ... WHERE ... PROCEDURE ANALYSE([max elements,[max memory]])
15.2 编写一个过程
暂时,对此的唯一文档是源代码。:(
你可以检验下列文件找到关于过程的所有信息:
“sql/sql_analyse.cc”
“sql/procedure.h”
“sql/procedure.cc”
“sql/sql_select.cc”
- [ MySQL ] MySQL中文参考手册---17 与一些常用程序一起使用MySQL
点击:415 发布日期:08/03
17.1 与Apache一起使用MySQL 贡献者小节包括让你从MySQL数据库验证你的用户并且也让你将你的日志文件记载到一个MySQL表中的程序。见B 贡献的程序。 你可以改变 Apache日志格式以使它很容易被MySQL读取,把下列行放进Apache配置文件中: LogFormat \ "\"%h\",%{%Y%m%d%H%M%S}t,%>s,\"%b\",\"%{Content-Type}o\", \ \"%U\",\"%{Referer}i\",\"%{User-Agent}i\"" 在MySQL中,现在你可以这样做: LOAD DATA INFILE '/local/access_log' INTO TABLE table_name FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' ESCAPED BY '\\'
- [ MySQL ] MySQL简介
点击:1850 发布日期:08/03
MySQL是一个广受Linux社区人们喜爱的半商业的数据库。 MySQL是可运行在大多数的Linux平台(i386,Sparc,etc),以及少许非Linux甚至非Unix平台。 1、许可费用 MySQL的普及很大程度上源于它的宽松,除了略显不寻常的许可费用。MySQL的价格随平台和安装方式变化。MySQL的Windows版本(NT和9X)在任何情况下都不免费,而任何Unix变种(包括Linux)的MySQL如果由用户自己或系统管理员而不是第三方安装则是免费的,第三方案庄则必须付许可费。 2、价格 平台 安装方式 价格 Windows NT,9X 任何 200美元 Unix或Linux 自行安装 免费 Unix或Linux 第三方安装 200美元 需要一个应用组件 200美元 可以得到多种支持合同,内容太多不再罗列,最新报价可咨询MySQL站点。 3、安装 可以在MySQL站点上获得大多数主要的软件包格式(RPM、DBE、TGZ),客户端库和各种语言“包装”(Wrapper)可以分开的RPM格式获得。RPM格式的安装没有多大麻烦,并且无需初始配置。在rc3.d(以RedHat RPM为例)生成一个初始脚本,故MySQL守护进程在多用户模式下重启时被启动运行。MySQL的守护..
- [ Oracle ] Oracle数据库密码文件的使用和维护
点击:502 发布日期:08/03
在Oracle数据库系统中,用户如果要以特权用户身份(INTERNAL/SYSDBA/SYSOPER)登录Oracle 数据库可以有两种身份验证的方法:即使用与操作系统集成的身份验证或使用Oracle数据库的密码文件 进行身份验证。因此,管理好密码文件,对于控制授权用户从远端或本机登录Oracle数据库系统,执行 数据库管理工作,具有重要的意义。 Oracle数据库的密码文件存放有超级用户INTERNAL/SYS的口令及其他特权用户的用户名/口令, 它一般存放在ORACLE_HOME\DATABASE目录下。 一、 密码文件的创建: 在使用Oracle Instance Manager创建一数据库实例的时侯,在ORACLE_HOME\DATABASE目录下还自动 创建了一个与之对应的密码文件,文件名为PWDSID.ORA,其中SID代表相应的Oracle数据库系统标识符。 此密码文件是进行初始数据库管理工作的基础。在此之后,管理员也可以根据需要,使用工具ORAPWD.EXE 手工创建密码文件,命令格式如下: C:\ >ORAPWD FILE=< FILENAME > PASSWORD =< PASSWORD > ENTRIES=< MAX_USERS > 各命令参数的含义为: FILENAME:密码文件名..
- [ Oracle ] ORACLE应用经验(4)-加密程序
点击:1009 发布日期:08/03
-------------1. 加密程序数据库触发子scjmmm---------------------- REM 对GHXXB制立数据库触发子(当INSERT OR UPDATE GHXXB时触发) drop trigger scjmmm; create or replace trigger scjmmm before insert or update of mm On ghxxb For each Row Begin :new.mm:=ENCRYPT(:new.mm,:NEW.GH,TO_CHAR(SYSDATE,'SS')); End; / -------------2. 密码的加密程序ENCRYPT---------------------- Create or Replace Function ENCRYPT (Inpass In Varchar2,IN_GH In Varchar2,IN_SS In Varchar2) Return Varchar2 Is bcs varchar2(20); bcs1 number; cs number; jg number; m_gh VARCHAR2(4); m_mm VARCHAR2(20); Begin &nbs..
- [ Oracle ] 如何确定Oracle数据库表中重复的记录
点击:1582 发布日期:08/03
作为一个Oracle数据库开发者或者DBA,在实际工作中经常会遇到这样的问题:试图对库表中的某一列或几列创建唯一索引时,系统提示ORA-01452:不能创建唯一索引,发现重复记录。 下面我们以表code_ref为例来讨论这个问题及其解决办法。 ERROR位于第1行: ORA-01452: 无法 CREATE UNIQUE INDEX;找到重复的关键字
Oracle系统提示不能对表code_ref创建一个唯一索引,因为系统发现表中存在重复的记录。我们必须首先找到表中的重复记录并删除该记录,才可以创建唯一索引。下面介绍三种不同的方法来确定库表中重复的记录。 一、自关联查询方法 Oracle系统中,对于所有的表都存在一个唯一的列,这就是rowid。对该列使用最大(max)或者最小(min)函数可以非常容易地确定重复的行。
二、GROUP BY/HAVING查询方法 利用分组函数GROUP BY/HAVING也很容易确定重复的行。以需要创建唯一索引的列分组并统计每组的个数,很明显如果组中记录数超过1个就存在重复的行。
三、Exception into子句 采用alter table命令中的Exception into子句也可以确定出库表中重复的记录。这种方法稍微麻烦一些,为了使用“excepeion into”子句,必须首先创建EXCEPTIONS表。创建该表的SQL脚本文件为utlexcpt.sq..
- [ Postgresql ] PostgreSQL7.0手册-用户手册-2. SQL 语法
点击:1359 发布日期:08/03
第二章. SQL 语法 内容 关键字 注释 名称 常量 域和列(字段) 操作符 表达式 描述通用的 SQL 语法。 SQL 操作数据集。该语言由多种多样的 关键字 组成。它允许使用算术和过程表达式。我们将在本章讨论这个问题;随后的章节将包括一些关于数据类型,函数和操作符的细节。 关键字 SQL92 为这门语言定义了有明确意义的 关键字 。有些关键字是 保留字,表明它们只限于出现在某些特定的环境里。其他关键字是 非限制字,表明它们在某些特定的环境里有特殊含义,否则没有什么限制。 Postgres 实现了一个扩展了的 SQL92 和 SQL3 语言的子集。部分由于 Postgres 的可扩展性,一些语言元素在 Postgres 里的实现不象在语言标准里期望的那样严格(限制)。 关于SQL92 和 SQL3 关键字的信息源自 Date and Darwen, 1997。 保留关键字 SQL92 和 SQL3 有一些 保留关键字 除了在 SQL 语句里面用做基本元素外不允许用做标识或者任何其它用途。Postgres 有另外一些关键字也有类似约束。具体来说,这些关键字不允许用做字段或者表名称,尽管有时候它们可以用做字段标签(例如,在AS子句里)。 小技巧: 如果用双引号包围(“象这样..
- [ Postgresql ] PostgreSQL7.0手册-用户手册-19. SQL命令-ALTER TABLE
点击:1586 发布日期:08/03
ALTER TABLE 名称 ALTER TABLE — 更改表属性 语法 ALTER TABLE table [ * ] ADD [ COLUMN ] column type ALTER TABLE table [ * ] ALTER [ COLUMN ] column { SET DEFAULT value | DROP DEFAULT } ALTER TABLE table [ * ] RENAME [ COLUMN ] column TO newcolumn ALTER TABLE table RENAME TO newtable ALTER TABLE table ADD table constraint definition Inputs table 试图更改的现存表的名称. column 现存或新的列名称. type 新列的类型. newcolumn 现存列的新名称. newtable 表的新名称. table constraint definition 表的新的约束定义. New table constraint for the table 输出 ALTER 从被更名的列或表返回的信息. ERROR 如果一个列或表不存在返回的信息. 描述 ALTER TABLE 变更一个现存表的定义.ADD COLUMN 形式用与 CREATE TABLE一样的语法向表中增加一个新列/字段。ALTER COLUMN 形式允许你从列/字段中设置或者删除缺省(值)。注意缺省(值)只对新插入的行有效。RENAME 子句可以在不影响相关表中任何数据的..
- [ Postgresql ] PostgreSQL7.0手册-用户手册-19. SQL命令-CREATE GROU..
点击:113 发布日期:08/03
CREATE GROUP 名称 CREATE GROUP — 创建一个新组 语法 CREATE GROUP name [ WITH [ SYSID gid ] [ USER username [, ...] ] ] 输入 name 组名。 gid SYSID 子句可以用于选择 Postgres 里新组的组标识(group id)。不过,这样做不是必须的。 如果没有声明这个,将使用从 1 开始的,已分配的最高组标识加一作为缺省值。 username 包括入组里面的用户列表。用户必须已经存在。 输出 CREATE GROUP 成功创建组后的返回。 描述 CREATE GROUP 将在数据库节点上创建一个新组。参考管理员手册获取关于使用组来认证的信息。要使用这条命令,你必须是数据库超级用户。 使用 ALTER GROUP 修改组成员, DROP GROUP 删除一个组。 用法 创建一个空组: CREATE GROUP staff 创建一个有成员的组: CREATE GROUP marketing WITH USER jonathan, david 兼容性 SQL92 SQL92 里没有 CREATE GROUP。Roles 在概念上与组类似。
- [ Postgresql ] PostgreSQL7.0手册-用户手册-19. SQL命令-CREATE SEQU..
点击:137 发布日期:08/03
CREATE SEQUENCE 名称 CREATE SEQUENCE — 创建一个新的序列号生成器 语法 CREATE SEQUENCE seqname [ INCREMENT increment ] [ MINVALUE minvalue ] [ MAXVALUE maxvalue ] [ START start ] [ CACHE cache ] [ CYCLE ] 输入 seqname 将要创建的序列号名. increment INCREMENT increment 子句是可选的.一个正数将生成一个递增的序列,一个负数将生成一个递减的序列.缺省值是一(1). minvalue 可选的子句 MINVALUE minvalue 决定一个序列可生成的最小值.缺省分别是递增序列为1递减为-2147483647. maxvalue 使用可选子句 MAXVALUE maxvalue 决定序列的最大值.缺省的分别是递增为2147483647,递减为-1. start 可选的 START start 子句 使序列可以从任意位置开始.缺省初始值是递增序列为 minvalue 递减序列为 maxvalue . cache CACHE cache 选项使序列号预分配并且为快速访问存储在内存里面.最小值(也是缺省值)是1(一次只能生成一个值, 也就是说没有缓存). CYCLE 可选的 CYCLE 关键字可用于使序列到达最大值(maxvalue)或最小值(minvalue)时可复位并继续下去...
- [ Postgresql ] PostgreSQL7.0手册-用户手册-20. 应用 - dropuser
点击:96 发布日期:08/03
dropuser 名称 dropuser — 删除一个 Postgres 用户 语法 dropuser [ options ] [ username ] 输入 -h, --host host 声明 postmaster 正在运行的机器的主机名. -p, --port port 声明 postmaster 正在侦听的互联网 TCP/IP 端口号或本地Unix域套接字的文件扩展(描述符). -e, --echo 回现 createdb 生成的查询并发送给后端。 -q, --quiet 不显示响应。 -i, --interactive 在真正删除用户前前提示。 username 声明要删除的 PostgreSQL用户名.该名字必须存在于 Postgres 节点.如果你没有在命令行上声明,将会被提示输入一个。 选项 -h,-p,和 -e,逐字传递给 psql。psql 选项 -U 和 -W 也可以使用,但是这些开关的使用在这个环境中可能有些混乱。 输出 DROP USER 一切正常。 dropuser: deletion of user "username" failed 出了差错,用户没有删除。 如果出现错误,将会显示后端错误信息。参阅 DROP USER 和 psql 获取可能信息描述。 描述 dropuser 删除一个现有 PostgreSQL 用户和该用户所有的数据库。只有在 pg_shadow 表里面拥有 usesuper 集的用户可以创建新的 PostgreSQL ..
- [ Postgresql ] PostgreSQL7.0手册-开发者手册 -68. 分页文件
点击:376 发布日期:08/03
第六十八章. 分页文件 内容 页面结构 文件 臭虫 一份描述数据库文件缺省页面格式的文档. 本章提供一个 Postgres 的表所使用的页面格式的概述.用户定义的访问模式不需要使用这些页面格式. 在下面解释中, 一个字节 假定包含 8 个位.另外,术语 item (条目)指的是存储在 Postgres 表里的数据. 页面结构 下面的表显示了通常的 Postgres 表和 Postgres 索引表(例如,一个 B-tree 索引)里的页面是如何构造的. 表 68-1. 样例页面布局 条目 描述 itemPointerData filler itemData... Unallocated Space ItemContinuationData Special Space ``ItemData 2'' ``ItemData 1'' ItemIdData PageHeaderData 每个页面的头8字节包含一个页面头(PageHeaderData).在头里面,头三个2字节的整数域(lower 底,upper 高 ,和 special 特殊)分别代表相对于未分配空间开头的字节偏移量,相对于未分配空间结尾的偏移量和相对于 special space (特殊空间)开头的偏移量.特殊空间是位于页面尾部的空间,这部分空间在页面初始化时分配并且包含与一种访问模式的详细信息.页面头的最后 2 字节, o..
- [ Postgresql ] PostgreSQL7.0手册-教程 -71. 开始
点击:634 发布日期:08/03
第七十一章. 开始 内容 设置你的运行环境 运行SQL界面(psql) 管理数据库 新的 Postgres 用户如何开始工作的内容. 某些使用 Postgres 所需要的步骤可以由任何 Postgres 用户执行, 而另外一些步骤就必须由节点数据库管理员执行.这个数据库管理员就是安装该软件,创建数据库目录并启动postmaster 进程的人.这个人不必是 UNIX 超级用户(“root”)或计算机系统管理员;一个人可以在没有任何特殊帐号或权限的情况下安装和使用Postgres. 如果你自己安装 Postgres ,请参阅管理员手册中的安装指导,安装完成后再回到本手册. 在这本手册里,任何以字符“%”开头的例子都应该在 UNIX shell 命令行上输入的命令.任何以字符 “*”开头的例子都是 Postgres 查询语言-Postgres SQL 的例子. 设置你的运行环境 本节讨论如何设置你的运行环境,以便运行你的前端应用.我们假设你已经成功安装并运行了Postgres;关于如何安装 Postgres 请参阅管理员手册. Postgres 是一个client/server 应用软件.作为用户,你只需要访问安装后的客户端部分(一个客户端应用的例子就是 SQL 界面 psql).为了简单起见,我们假设 Postgres 装在 /usr..
- [ SYBASE ] UNIX Sybase安装说明
点击:1821 发布日期:08/03
Sybase在unix下安装大致步骤说明如下: 1、 用scoadmin建立 sybase用户 2、 sybase登录, 在/usr/sybase目录下.profile文件最后加入如下语句: SYBASE=/usr/sybase export SYBASE DSQUERY=SYBASE export DSQUERY 3、 root登录,设置共享内存最大值: #cd /etc/conf/cf.d #./configure 然后在出现的一系列设置选项中选择第16项来设置共享内存最大值,根据计算机的内存大小来设置不同的值,64M设为67108864,128M设为68108864。录入新值后,以后3项不改,直接回车,然后按q退出,出现提示是否接受(y/n),选y 4、 更改目录 /etc/conf/sdevice.d中aio、sio、suds三个文件的第一项,将N改Y 5、 #vi /etc/rc2 在最后加入一行: /etc/suds_ctrl -a 50 6、 执行#/etc/conf/cf.d/link_unix 进行链接, 出现 ……………boot by default?(y/n) y ……………kernel enviroment rebuilt (y/n) y #reboot 7、 root登录,#mount /dev/cd0 /mnt&nbs..
- [ SQL Server ] 用asp管理sql server数据库
点击:361 发布日期:08/03
安装有sql server的主机有一个ole对象:sqlole, 可以实现对sql server数据库的管理. 下面的简单的例子,列出所有数据库的名字. 具体使用参看sql server手册.<%Set OServer = Server.CreateObject("sqlole.sqlserver")OServer.Connect sServer,sLogin,sPasswordFor Each SQLDB In OServer.Databases If Not SQLDB.SystemObject Then Response.Write SQLDB.Name End IfNext%>但是如何对access数据库实现类似操作哪?access.application属于外部对象,不能使用server.createobject
- [ SQL Server ] 调整重心-从IIS到SQL Server数据库安全
点击:211 发布日期:08/03
从codered到nimda等,一大堆蠕虫把原来需要人工利用的漏洞都变成了程序自动利用了,大家还想去手工操作这些IIS漏洞么?让我们调整重心,去看看服务器常用的数据库吧。
一般网站都是基于数据库的,特别是ASP、PHP、JSP这样的用数据库来动态显示的网站。很多网站可能多注意的是操作系统的漏洞,但是对数据库和这些脚本的安全总是忽略,也没有太多注意。
从最比较普遍的脚本问题开始,这些都是老话题了,大家可以参考Hectic写的《关于数据库的简单入侵和无赖破坏,以天融信做例子》,该文章对从SQL脚本问题说得非常详细。对于脚本安全的解决,也可以通过过滤来实现,可以参考我以前写的。对于ASP来说,可以使用下面这个过滤函数:
Function Filter_SQL(strData)
Dim strFilter Dim blnFlag Dim i
strFilter="',;,//,--,@,_,exec,declare" '需要过滤的字符,可以自己添加,","是分隔符 blnFlag=Flase '过滤标志,如果产生过滤,那么就是真 Dim arrayFilter arrayFilter=Split(strFilter,",") For i=0 To UBound(arrayFilter) &nbs..
- [ 数据库开发 ] 四大数据库的比较(SQL Server、Oracle、Sybase和DB2)..
点击:8060 发布日期:08/03
本篇引用于公司数据库高手的文章。纯属个人意见。 开放性: SQL Server 只能在windows上运行,没有丝毫的开放性,操作系统的系统的稳定对数据库是十分重要的。Windows9X系列产品是偏重于桌面应用,NT server只适合中小型企业。而且windows平台的可靠性,安全性和伸缩性是非常有限的。它不象unix那样久经考验,尤其是在处理大数据 Oracle 能在所有主流平台上运行(包括 windows)。完全支持所有的工业标准。采用完全开放策略。可以使客户选择最适合的解决方案。对开发商全力支持。 Sybase ASE 能在所有主流平台上运行(包括 windows)。 但由于早期Sybase与OS集成度不高,因此VERSION 11.9.2以下版本需要较多OS和 DB级补丁。在多平台的混合环境中,会有一定问题。 DB2 能在所有主流平台上运行(包括windows)。最适于海量数据。DB2在企业级的应用最为广泛,在全球的500家最大的企业中,几乎85%以上用DB2数据库服务器,而国内到97年约占5%。 可伸缩性,并行性 SQL server 并行实施和共存模型并不成熟。很难处理日益增多的用户数和数据卷。伸缩性有限。 Oracle 并行服务器通过使一组结点共享同一簇中的工作来扩展windownt的..
- [ SQL Server ] 支持全文检索的 SQL Server 的扩展
点击:210 发布日期:08/03
Margaret Li(程序经理,数据访问组)和 Frank Pellow(程序经理,SQL Server 关系 摘要 Microsoft SQL Server 7.0 版引入了各种功能,支持对驻留在 SQL Server 本身中的数 本白皮书介绍这些功能中的第一个功能,即支持对 SQL Server 表内的数据进行文本查询。我们从介绍全文检索的概念开始,讲述全文检索查询将采取的形式和通过这样的查询所能检索信息的类型。然后向读者提供有关全文检索系统的内部设计和体系结构的相当清楚的技术表述,接着介绍如何通过存储过程和/或 SQL Server Enterprise Manager 所提供的图形用户界 阅读本白皮书可以对 SQL Server 7.0 全文支持的功能有一个总的认识,并能很好地把握各种子组件如何交互作用以便提供这种支持。 有关对文件系统中的数据进行文本查询的支持是另一本书的主题。 引言 当今,以数字形式储存的信息的很大一部分仍然采取非结构化数据的形式(主要是文本)。虽然大部分文本数据储存在文件系统中,但一些公司已经开始通过将数据储存在关系数据库中,以基于字符的列(如 VARCHAR 和 TEXT)来管理这些数据。这就意味着关系数据库用户现在需要一个能从数据库本身有效检索文本数据的机制。传统的 RDBMS(如 ..
- [ SQL Server ] SQL Server bcp 实用工具
点击:323 发布日期:08/03
bcp 实用工具
bcp 实用工具在 Microsoft® SQL Server™ 2000 实例和数据文件之间以用户指定的格式复制数据。
语法
bcp {[[database_name.][owner].]{table_name | view_name} | "query"} {in | out | queryout | format} data_file [-m max_errors] [-f format_file] [-e err_file] [-F first_row] [-L last_row] [-b batch_size] [-n] [-c] [-w] [-N] [-V (60 | 65 | 70)] [-6] [-q] [-C code_page] [-t field_term] [-r row_term] [-i input_file] [-o output_file] [-a packet_size] [-S server_name[instance_name]] [-U login_id] [-P password] [-T] [-v] [-R] [-k] [-E] [-h "hint [,...n]"]
参数
database_name
指定的表或视图所在数据库的名称。如果未指定,则为用户默认数据库。
owner
表或视图所有者的名称。如果执行大容量复制操作的用户拥有指定的表或视图,则 owner 是可选的。如果没有指定 owner 并且执行大容量复制操作的用户不拥有指定的表..
- [ SQL Server ] 修改Delphi使之适应SQL Server2000
点击:924 发布日期:08/03
把 SQL Server 7.0 换为 SQL Server 2000 后,执行正常的程序都出错了。仔细一查,原来是 SQL Server 2000将存储过程的返回参数改了名(RETURN_VALUE 改成了 @RETURN_VALUE)。让我们来对 ADODB 作少许改动,使之兼容7.0 和 2000。
1、使用 File -> Open Project 打开 SourceVCLADODB.pas。2、定位到 TADOConnection.WillExecute,在 begin 后加入如下代码[code] // 用来兼容 SQL Server 7.0 和 SQL Server 2000 if (pCommand.Parameters.Count > 0) and ((pCommand.Parameters[0].Name = 'RETURN_VALUE') or (pCommand.Parameters[0].Name = '@RETURN_VALUE')) then begin if pConnection.Properties['DBMS Version'].Value < '08.00.0000' then pCommand.Parameters[0].Name := 'RETURN_VALUE' else pCommand.Parameters[0].Name := '@RETURN_VALUE' end;[/code]3、定位到 TADOCommand.FindParam 在 Result = ni 前加入如下代码[code] // 用来兼容 SQL Server 7.0 和 SQL Server 2000 if (Count > 0) and ((Value ..
- [ SQL Server ] SQLServer中 如何取出一个表的所有列名
点击:1288 发布日期:08/03
如何取得一个数据表的所有列名方法如下:先从SYSTEMOBJECT系统表中取得数据表的SYSTEMID,然后再SYSCOLUMN表中取得该数据表的所有列名。SQL语句如下:declare @objid int,@objname char(40)set @objname = 'tablename'select @objid = id from sysobjects where id = object_id(@objname)select 'Column_name' = name from syscolumns where id = @objid order by colid
是不是太简单了? 呵呵 不过经常用阿。
- [ SQL Server ] 全接触SQLServer异常与孤立事务!
点击:531 发布日期:08/03
一、首先从SQLServer中Error讲起,SQL中错误处理有些怪辟 错误级别同是16但结果都不同。
select * from 一个不在的表 if @@error<>0 print '这个没有输出' go
raiserror(',16,3) if @@error<>0 print '这个输出了' go
exec('select * from 一个不在的表') if @@error<>0 print '这个输出了' go
exec sp_executesql N'select * from 一个不在的表' if @@error<>0 print '这个输出了'
这样你可以发现通过exec或sp_executesql执行可疑的sql,这样就可以在后面捕捉到被异常终止的错误。
二、引出孤立事务: 1、孤立事务的产生
select @@trancount 当前连接的活动事务数 --当前连接的活动事务数为0
begin tran
select * from 一个不在的表 if @@error<>0 begin print '没有执行到这里来!' if @@trancount<>0 r..
- [ DB2 ] DB2数据库的安装
点击:1296 发布日期:08/03
这是在IBM RS6000 操作系统为AIX安装的,HP9000上雷同 1. 注册为具有超级用户权限的用户(root) 2. 将 标有“DB2通用数据库企业版”的软件光盘插入驱动器 3. 输入如下命令,以创建一个目录来安装该 CD-ROM: # mkdir -p /cdrom 其中 cdrom 表示 CD-ROM 安装目录。 输入如下命令,来分配 CD-ROM 文件系统: # smitty storage 4. 选择文件系统 5. 选择添加/更改/显示/删除文件系统 6. 选择 CDROM 文件系统 7. 选择添加 CDROM 文件系统 8. 在弹出窗口中,输入如下项作为安装点: /cdrom 9. 通过输入以下命令来安装 CD-ROM 文件系统: smit mountf 10. 在文件系统名称字段中输入值。例如,该名称可能是 /dev/cd0。 11. 在安装目录字段中输入值。例如,此值可能是 /cdrom。 12. 将安装为只读系统设置为 Yes。 13. 单击确定。 ..
- [ DB2 ] IBM DB2 日常维护汇总(七)
点击:1617 发布日期:08/03
DB2函数 135.AVG() 返回一组数值的平均值. SELECTAVG(SALARY)FROMBSEMPMS; 136.CORR(),CORRELATION() 返回一对数值的关系系数. SELECTCORRELATION(SALARY,BONUS)FROMBSEMPMS; 137.COUNT() 返回一组行或值的个数. SELECTCOUNT(*)FROMBSEMPMS; 138.COVAR(),COVARIANCE() 返回一对数值的协方差. SELECTCOVAR(SALARY,BONUS)FROMBSEMPMS; 139.MAX() 返回一组数值中的最大值. SELECTMAX(SALARY)FROMBSEMPMS; 140.MIN() 返回一组数值中的最小值. SELECTMIN(SALARY)FROMBSEMPMS; 141.STDDEV() 返回一组数值的标准偏差. SELECTSTDDEV(SALARY)FROMBSEMPMS; 142.SUM() 返回一组数据的和. SELECTSUM(SALARY)FROMBSEMPMS; 143.VAR(),VARIANCE() 返回一组数值的方差. SELECTVARIANCE(SALARY)FROMBSEMPMS; 144.ABS(),ABSVAL() 返回参数的绝对值. SELECTABS(-3.4)FROMBSEMPMS; 145.ACOS() 返回参数的反余弦值. SELECTACOS(0.9)FROMBSEMPMS; 146.ASCII() 返回整数参数最左边的字符的ASCII码..
- [ DB2 ] IBM DB2 日常维护汇总(八)
点击:1232 发布日期:08/03
154.CONCAT() 返回两个字符串的连接. SELECTCONCAT(EMP_NO,EMP_NAM)FROMBSEMPMS; 155.YEAR() 返回数值的年部分. SELECTYEAR('2003/01/02')FROMBSEMPMS; 156.VARCHAR() 返回字符串,日期型,图形串的可变长度的字符串表示. SELECTVARCHAR(EMP_NAM,50)FROMBSEMPMS; 157.UCASE()ORUPPER() 返回字符串的大写. SELECTUCASE(EMP_NAM)FROMBSEMPMS; SELECTUPPER(EMP_NO)FROMBSEMPMS; 158.TRUNCATE()ORTRUNC() 从表达式小数点右边的位置开始截断并返回该数值. SELECTTRUNCATE(345.6789,2)FROMBSEMPMS; 159.TIME() 返回一个数值中的时间. SELECTTIME('2001-03-19.12.30.123456')FROMBSEMPMS; 160.SUBSTR(EXP1,EXP2) 返回EXP1串自EXP2处开始的子串. SELECTSUBSTR('CDNJFDJFJD',5)FROMBSEMPMS; SELECTSUBSTR('CDNJFDJFJD',5,2)FROMBSEMPMS; 161.SQRT() 返回该参数的平方根. SELECTSQRT(36)FROMBSEMPMS; 162.SPACE() 返回由参数指定的长度,包含空格在内的字符串. SELECTSPACE(10)FROMBSEMPMS; 163.SECOND() 返回一个数值..
- [ DB2 ] DB2编程序技巧 (三)
点击:1878 发布日期:08/03
另一种为 pcursor1: for loopcs1 as cousor1 cursor as select market_code as market_code from tb_market_code for update do end for; 这种方式的优点是比较简单,不用(也不允许)使用open,fetch,close。 但不能使用with hold 选项。如果在游标循环内要使用commit,rollback则不能使用这种方式。如果没有commit或rollback的要求,推荐使用这种方式(看来For这种方式有问题)。 修改游标的当前记录的方法 update tb_market_code set market_code='0' where current of cursor1; 不过要注意将cursor1定义为可修改的游标 declare cursor1 cursor for selec..
- 共有646条信息 1 - 30 1/22页 30个/页 上一页 下一页