随笔分类 - SQL开发
摘要:首先下载Sybase ASE 12.5的安装文件,下载地址为http://download.sybase.com/eval/ASE_1252_DE/ase1252_de_win.zip 另外还有Sybase ASE 12.5的客户端 ,当然在第一个下载地址中也包含了Sybase客户端,用户可以不用再专门下载客户端的。这次我们使用了2个VPC(Win2003的操作系统)来做该实验,1个安装运行Syb...
阅读全文
摘要:Character 数据类型 Character 数据类型用来存储字母数字型数据。当你在oracle 中定义一个character 数据时,通常需要制定字段的长度,它是该字段的最大长度。ORACLE提供以下几种character 数据类型: CHAR() CHAR数据类型是一种有固定长度和最大长度的字符串。存储在数据类型为CHAR字段中的数据将以空格的形式补到最大长度。长度定义在1——20...
阅读全文
摘要:在前面的文章中我已经讲到使用同义词的方法来在SQL Server 2005下连接Oracle,我们可以使用同义词来实时访问Oracle数据库,但是如果Oracle中的表数据流较大则会影响应用系统的性能,于是我采用数据库作业每天定时执行: drop table abc--删除旧表 go select * into abc from aaa--aaa为同义词 这样就可以把Oracle中的数据同步到...
阅读全文
摘要:FOR XML子句都是将行结果集转换为XML结果集,那么如果想要将XML文档转换成行结果集,这时就要使用OPENXML函数。OPENXML在SQL Server 2000中就已经提供,但是在SQL Server 2005对该函数进行了增强。
阅读全文
摘要:有时由于项目开发的需要,必须将SQLServer2005中的某些表同步到Oracle数据库中,由其他其他系统来读取这些数据。不同数据库类型之间的数据同步我们可以使用链接服务器和SQLAgent来实现。假设我们这边(SQLServer2005)有一个合同管理系统,其中有表contract 和contract_project是需要同步到一个MIS系统中的(Oracle9i)那么,我们可以按照以下几步实现数据库的同步。
阅读全文
摘要:以前的服务器,由于内存的价格过高,一般配的内存不是很多,超过4G的当然就不多了.现在的服务器,配置超过4G就很多,在配作SQL数据库服务器后,很多的人只选默认的设置,虽然可以正常使用,可是却把大量的内存给浪费(SQL服务使用的内存不会超过1.8G),系统的性能也不能因为的大内存而提升,这是很可惜的.
在本文中,我大致讲一下配置的过程.(如果服务器的内存少于4G,不用配置)(网上完全讲这个的,没有见过,随手写一个)
阅读全文
摘要:今天写一个存储过程,由于执行的时间比较长(7秒)所以打算优化一下.结果在优化测试代码中发现如下一个奇怪的现象. 现在有一个表mis_gl_balance,其中有一个字段ACC_SEGMENT VARCHAR(181) NULL ,他的内容的形式如下: 3810.105301.5414070180.000000.00000000.0000.000000 另外一个表finance_budget_acc...
阅读全文
摘要:
定义一个存储过程如下:
create span sty
阅读全文
定义一个存储过程如下:
create span sty
阅读全文
摘要:在数据库中经常会遇到这样的情况:一个主表A,一个子表B,B表中包含有A表的主键作为外键。当要插入数据的时候,我们会先插入A表,然后获得A表的Identity,再插入B表。如果要进行删除操作,那么就先删除子表B,然后再删除主表A。在程序设计中,对两个表的操作是在一个事务之中完成的。当系统使用频繁就会出现插入操作和删除操作同时进行的情况。这个时候插入事务会先将主表A放置独占锁,然后去...
阅读全文
摘要:要对一个表的每一行做出比较复杂的操作,一般会想到用游标,今天想到使用SQL2005中的新函数ROW_NUMBER()和while循环来对每一行执行操作。示例代码如下: select Department_No as departmentNo,ROW_NUMBER() OVER(ORDER BY Department_No) AS rowNumber into #depTemp--建立临时表from...
阅读全文
摘要:今天发现了SQL2005的一个Bug,在建立同义词链接Oracle的时候,使用下面的语句: CREATE SYNONYM [dbo].mis_vendor FOR [TEST]..[MIS].MIS_VENDOR 这样建立好了同义词,然后刷新同义词,可以看到我们的同义词在ManegementStudio中了。这个时候查看他的属性可以看到架构变成了.MIS,这个明显不对,我们使用“...
阅读全文
摘要:用SQL Server2005同义词链接Oracle数据库可以将Oracle中的表,视图等映射到SQL2005中,直接在SQL2005中操作Oracle的数据,非常简单方便。 下面具体一部一部讲解如何实现的。 环境:Windows2005+SQL2005,数据库名字为amd Oracle 9i,服务器IP:10.**.***.** 服务名 inter 第一步:在SQL2005服务器上安装Or...
阅读全文
摘要:有时候我们希望在一个sqlserver下访问另一个sqlserver数据库上的数据,或者访问其他oracle数据库上的数据,要想完成这些操作,我们首要的是创建数据库链接。 数据库链接能够让本地的一个sqlserver登录用户映射到远程的一个数据库服务器上,并且像操作本地数据库一样。那么怎么创建数据库链接呢?我现在有两种方法可以实现。 第一种:在 sqlserver 企业管理器中,建立,这...
阅读全文
摘要:本人从来没有接触过Oracle,今天听师兄讲解演示了一下,颇有收获,所以著文以记之。废话少说,现介绍一下情况: 环境:VPC2007中安装了Windows2003 +Oracle9i做服务器,Host名:ms-zy-oracle;数据库名:MIS 本机:windowsXP+Oracle9i客户端, 将虚拟机运行后,打开Oracle的Enterprice Mangager,用system用户登录。接...
阅读全文
摘要:SMO是SQL Mangagement Objects的简称.与之相对应的是ADO.Net,不过不同的地方是ADO.Net是用于数据访问的,而SMO是用于设计的,虽然SMO能够再服务器上执行任意的SQL语句.另外一个不同的地方是ADO.Net可以访问计算机中任意数据源,而SMO对象是专门针对SQL Server而设计的.
在SMO中最重要的一个类就是Server.其他大多数对象都是Server对象的后代.比如Database,Table,View等等对象都是通过Server属性不断向下检索到的.
要在VS2005中使用必须引用SMO的程序集.我们建立好一个控制台应用程序,添加引用:Microsoft.SqlServer.ConnectionInfo和Microsoft.SqlServer.Smo.
阅读全文
摘要:昨天完成了一个最简单的在数据库中创建标量值函数,今天主要完成表值函数,存储过程和用户定义类型在和.NET结合下的使用方法.1,表值函数所谓表值函数就是说这个函数返回的结果是一个Table,而不是单个的值.在.NET 中创建这样的函数,返回的结果是一个IEnumerable接口.这个接口非常灵活,所有.NET数组集合等都是实现了该接口的.下面我们举一个简单的例子来说明.在VS2005中创建一个类S...
阅读全文
摘要:关系数据库设计之时是要遵守一定的规则的。尤其是数据库设计范式 现简单介绍1NF(第一范式),2NF(第二范式),3NF(第三范式)和BCNF,另有第四范式和第五范式留到以后再介绍。 在你设计数据库之时,若能符合这几个范式,你就是数据库设计的高手 关系数据库设计之时是要遵守一定的规则的。尤其是数据库设计范式 现简单介绍1NF(第一范式),2NF(第二范式),3NF(第三范式)和BCNF,另有第四范...
阅读全文
摘要: 数据库快照,自定义函数与计算列
1.数据库快照
数据库快照就是保存某个数据库在快照那一瞬间的状态.快照和备份原理上有所不同,但是功能有一点相同那就是可以将数据还原为备份的那个时刻.快照的原理是新建一个数据库指针,在原数据库没有变化的情况下快照是不占用空间的,而数据库发生了变化,那么在变化前,被修改的数据页会先复制一份到快照文件中,然后再对原数据页进行修改.显然这样做的好处就是比备份数据库占用空间小.快照是只读的,你可以直接在SQL语句中把他当数据库用:
阅读全文
摘要: 在SQL Server2005中继续延续了微软在.Net中的设计思想 将XML和.Net紧密地结合到其中.用.Net在Sql2005中写存储过程定义函数我还没有研究过,今天就只简单得谈谈XML在SQL2005中的应用.
相对SQLServer2000而言,2005在数据类型上最大的一点改变就是增加了XML这个数据类型.要把这个东西搞懂先就必须要懂XML.
阅读全文
摘要:SQL Server 2005一个我非常欣赏的特性就是有了专门优化程序,据说在2K下面也有,不过我没有用过,估计也不会怎么样. 不说2K还是说说2005的这个好东东.
在Sql Server Management Studio中点击"工具"的"数据库引擎优化顾问"可以启动这个程序,当然也可以通过开始菜单中的SQL2005下面的"性能工具"下来打开程序.
打开该程序后输入正确的用户名密码就可以登录数据库.这里的优化是针对具体SQL语句的优化,所以要准备一个要优化的查询语句比如:
USE AdventureWorks ;
SELECT *
FROM Production.Product
把以上语句保存为一个文件,在Tuning Advistor中输入会话名称:TestIt,然后选择"工作负荷"中的"文件",并指定刚才保存的这个文件,当然下面就是要选针对的数据库了,我们用的是测试数据库AdventureWorks ,下面还有"要优化的数据库和表"好像官方说这下面和上面只要选了一个就可以了,不过似乎不行,我
阅读全文

浙公网安备 33010602011771号