数据库
Allen----Liu
这个作者很懒,什么都没留下…
展开
-
数据库表定义好索引未生效
日常开发中,经常会遇到这个问题,明明我已经定义好了索引,在开发环境、测试环境、准生产环境执行查看执行计划,都没有问题,但是一上到生产环境,无效。丝毫没有改善效果。为什么?表面现象:生产环境数据库和其他三个环境是不一样的,所以才会有这个问题。即使准生产接近生产环境,但是数据库除非实时同步或者频繁定期同步生产数据库,否则还是不一样。深入:为什么同一个表,同一个索引,只是数据多少的问题,就导...原创 2020-04-17 10:57:56 · 401 阅读 · 0 评论 -
SQL中where 整数=空字符串(sqlserver及mysql均如此)
总结:ms sqlserver 以及 mysql int类型和字符串进行比较时,会将字符串进行int转换。划重点:intcloumn=''时,空字符串等价于0,即intcloumn=0昨天同事突然贴了一个sql代码段说明:where条件中DeleteMark int类型 允许null疑问:为什么查询条件中字段为int类型,查询条件为空字符串的时候,会把DeleteMark=0的...原创 2020-04-17 10:40:00 · 1651 阅读 · 0 评论 -
sqlserver 死锁以及处理方案
虽然不能完全避免死锁,但可以使死锁的数量减至最少。将死锁减至最少可以增加事务的吞吐量并减少系统开销,因为只有很少的事务: 回滚,而回滚会取消事务执行的所有工作。 由于死锁时回滚而由应用程序重新提交。 下列方法有助于最大限度地降低死锁: 按同一顺序访问对象。 避免事务中的用户交互。 保持事务简短并在一个批处理中。 使用低隔离级别。 使用绑定连接。 按同一顺序访转载 2015-01-07 11:16:35 · 1489 阅读 · 0 评论 -
sqlserver死锁
以下摘录的一个网友的文章,这种解决办法很笨拙,有用的部分是问题描述和场景类似还原公司的系统上线以后出了很多问题,其中一个就是 deadlock 的出现,这个问题我以前一直不是很重视,因为我知道在Sql2005 中死锁是会自动解决的,一旦监视器检测到这种循环依赖关系,将自动的选择其中一个任务作为牺牲品,然后终止其事务并提示错误。这样,其他任务就可以完成其事务。不过这样一来其中一个转载 2015-01-07 10:38:13 · 573 阅读 · 0 评论 -
PowerDesigner 物理数据模型(PDM) 说明
目录(?)[+]一 PDM 介绍PDM中的基本概念创建PDM对象管理PDM对象检查PDM触发器和存储过程函数生成数据库创建PDMPDM 生成脚本二 PDM 使用示例创建新的PDM设置PDM的显示参数设置PDM的模型属性一般在发布资源或者提交设计的时候需要设置设置PDM模型选项创建表表列以及其设置详情设置标准检查约束完成了一个表的设计设置两个表之间转载 2014-07-25 11:47:18 · 514 阅读 · 0 评论 -
数据库集群技术分析和比较(一)
一、引言 数据库是用来保存计算的最终结果的,所以是整个信息系统的最重要组成部分。在许多人看来,当前的数据库技术已经可以说是非常地成熟了。然而,在满足不断增长的联机事务处理应用方面,当前的数据库技术其实还存在不少急迫需要解决的技术问题。 对于所有的数据库而言,除了记录正确的处理结果之外,它们都面临着四方面的挑战:如何提高处理速度,数据可用性、数据安全性和数据集可扩性,也就是说,如何使转载 2013-12-30 14:03:02 · 7613 阅读 · 0 评论 -
ORACLE和SQL语法区别归纳
ORACLE和SQL语法区别归纳博客分类:数据库SQLOracleSQL ServerMicrosoft数据结构 数据类型比较 类型名称 Oracle SQLServer 比较 字符数据类型 CHAR CHAR 都是固定长度字符资料但oracle里面最大度为2kb,SQLServer里面最大长度为8kb 变长字符数据类型 VARCHAR2转载 2012-07-31 14:07:14 · 991 阅读 · 0 评论 -
Oracle 存储过程中的DDL语句
Oracle的存储过程,是我们使用数据库应用开发的重要工具手段。在存储过程中,我们大部分应用场景都是使用DML语句进行数据增删改操作。本篇中,我们一起探讨一下数据定义语句DDL在存储过程中使用的细节和要点。 1、“借道而行”的DDL 从Oracle PL/SQL和存储过程程序开发原则上,应该是不鼓励在SP中使用DDL语句的。首先一个表现,就是Oracle在编译时就不允许直接在SP中转载 2012-07-03 14:59:59 · 11505 阅读 · 1 评论 -
Oracle临时表用法
1 语法 在Oracle中,可以创建以下两种临时表: 1) 会话特有的临时表 CREATE GLOBAL TEMPORARY ( ) ON COMMIT PRESERVE ROWS; 2) 事务特有的临时表 CREATE GLOBAL TEMPORARY ( ) ON COMMIT DELETE ROWS; CREATE GLOBAL转载 2012-07-02 14:47:35 · 449 阅读 · 0 评论 -
microsft sql server数据库转换为oracle 一点心得
1.sqlserver数据库转换为oracle使用sqlserver的【导出数据】功能,我的sqlserver版本是2008,所以数据源选择sql server native client 10.0 在网上搜索资料,低版本的应该有sql server native client,使用sql server的身份验证,输入用户名,密码,选择数据库,点击下一步。选择目标:oracle p原创 2012-06-28 17:13:22 · 1088 阅读 · 0 评论 -
使用PLSQL Developer时,“ORA-12154: TNS:无法解析指定的连接标识符”问题的一个解决办法 .
使用PLSQL Developer时,“ORA-12154: TNS:无法解析指定的连接标识符”问题的一个解决办法今天突然需要改一个很久以前的项目,那个项目使用的是Oracle10g启动PLSQL Developer,提示输入用户名密码以及数据库,输入后,回车,提示:ORA-12154: TNS : 无法解析指定的连接标识符从开始菜单中启动Oracle的Net Configuratio原创 2012-06-25 14:54:46 · 14016 阅读 · 1 评论 -
T-sql语句查询执行顺序
转载 2015-10-12 12:20:10 · 482 阅读 · 0 评论 -
权限管理模块 SupesoftFrameWork 数据库文档
转载 2015-05-21 08:56:04 · 830 阅读 · 0 评论 -
Oracle中对Clob字段进行Distinct
oracle 10+g不支持对类型为CLOB的列进行distinct,也不支持union,所以在遇到此问题,需要对SQL语句进行重新,从另一思想去实现同样的效果的。union没仔细思考过,具体还要看union里面的条件如何,最简单的方法是利用to_char将clob字段转换成char型,但存在一个问题,如clob中的字符长度超过4000时会报错。原创 2012-09-18 14:40:50 · 5923 阅读 · 2 评论 -
有关T-SQL的10个好习惯
1.在生产环境中不要出现Select * 这一点我想大家已经是比较熟知了,这样的错误相信会犯的人不会太多。但我这里还是要说一下。 不使用Select *的原因主要不是坊间所流传的将*解析成具体的列需要产生消耗,这点消耗在我看来完全可以忽略不计。更主要的原因来自以下两点: 扩展方面的问题 造成额外的书签查找或是由查找变为扫描 扩展方面的转载 2012-11-19 16:55:28 · 285 阅读 · 0 评论 -
SQL--多的是,你不知道的事 感觉标题好玩就转了
本文不是SQL教程,只是关于T-SQL的一点小结及吐槽。 对于SQL入门的学习,推荐一本32开大小的小巧书目《SQL Server编程必知必会》,对于每个知识点介绍得很简单但很到位,如果你不想阅读那些动辄四五百页的大作的话,这本书完全够用。另外一本进阶的书目《The Art of SQL》很出名,那是我打算看的但还没有看。 这里讨论和所有例子都基于微软对SQL的一个实现版本T-SQ转载 2012-11-19 17:19:33 · 896 阅读 · 0 评论 -
使用SQL Server 2005作业设置定时任务 转
公司有一个老项目由于直接把终端拍摄的图片以二进制的形式保存到数据库中,数据库比较大所以需要经常删除这些冗余数据,手动删除费时费力,项目组长让我把这些操作变成自动的,每天执行一次,只保留最近两个月的图片数据。查阅了相关的资料,找到了解决方案,在此做一个记录,以便有同样需求的人和自己查阅。 现在我们通过一个非常简单的示例来演示如何设置定时任务:有一张员工表,我们定时往里面添加一条数据。通过示例来转载 2013-01-22 14:35:02 · 1076 阅读 · 0 评论 -
sqlserver和c#获取上周时间
c#获取时间C#里内置的DateTime基本上都可以实现这些功能,巧用DateTime会使你处理这些事来变轻松多了 今天 DateTime.Now.Date.ToShortDateString(); 昨天,就是今天的日期减一 DateTime.Now.Add原创 2013-03-07 11:07:44 · 2232 阅读 · 1 评论 -
已安装 SQL Server 2005 Express 工具。若要继续,请删除 SQL Server 2005 Express 工具
安装sql server 2008 management,提示错误:Sql2005SsmsExpressFacet 检查是否安装了 SQL Server 2005 Express 工具。 失败,已安装 SQL Server 2005 Express 工具。若要继续,请删除 SQL Server 2005 Express 工具。sql server 2005 management和sql serve原创 2013-03-25 14:16:18 · 669 阅读 · 0 评论 -
Sql Server 随机抽取数据效率优化
山人我最近遇到一件很纠结的事情,就是如何快速的从数据表里随机抽取一条数据。 我生成了一个简单的数据表,并且导入了500W条数据进行测试。 下图为第一次采用的SQL语句:Declare @d DatetimeSet @d=getdate()SELECT top 1[ActivityID] ,[CardNo] ,[Password]转载 2013-05-17 10:09:25 · 951 阅读 · 0 评论 -
sqlserver 死锁
错误:事务(进程 ID 52)与另一个进程被死锁在 锁 资源上,并且已被选作死锁牺牲品。请重新运行该事务。产生该问题描述:程序对一个表执行批量的更新操作,该表总记录为5万,同时多次发起select查询处理,未在select语句后添加with (nolock),也没有调整sql隔离等级为:READUNCOMMITTED解决方案1:将所有的查询语句加入 with(noloc原创 2015-01-06 16:38:58 · 589 阅读 · 0 评论 -
数据库设计中的14个技巧
转自http://blog.csdn.net/sirfei/article/details/4349941. 原始单据与实体之间的关系 可以是一对一、一对多、多对多的关系。在一般情况下,它们是一对一的关系:即一张原始单据对应且只对应一个实体。在特殊情况下,它们可能是一对多或多对一的关系,即一张原始单证对应多个实体,或多张原始单证对应一个实体。这里的实体可以理解转载 2015-01-07 14:39:18 · 440 阅读 · 0 评论 -
数据库索引及基本优化入门
一 前言 经常在面试中发现很多人工作了好多年了,项目经验也不少,用过各种数据库,但大都不知道这些SQL语句背后的基本原理,更别说数据库优化了。平时做项目只知道实现功能,懒得学习,懒得思考,懒得看书(其实本人也是,不要找借口说这是China国情,项目是给boss做的,但技术和成长是你自己的)。 本篇文章主要讲述数据库索引的基本原理,及基本的数据库优化的知识。所有知识均为本人自己学习的转载 2015-01-28 15:21:34 · 524 阅读 · 0 评论 -
B-树和B+树的应用:数据搜索和数据库索引
B-树1 .B-树定义B-树是一种平衡的多路查找树,它在文件系统中很有用。定义:一棵m 阶的B-树,或者为空树,或为满足下列特性的m 叉树:⑴树中每个结点至多有m 棵子树;⑵若根结点不是叶子结点,则至少有两棵子树;⑶除根结点之外的所有非终端结点至少有[m/2] 棵子树;⑷所有的非终端结点中包含以下信息数据: (n,A0,K1,A1,K2,…,Kn,An)转载 2015-01-28 15:21:55 · 796 阅读 · 0 评论 -
oracle中关于null问题
在数据库中,空值用来表示实际值未知或无意义的情况。在一个表中,如果一行中的某列没有值,那么就称它为空值(NULL)。任何数据类型的列,只要没有使用非空(NOT NULL)或主键(PRIMARY KEY)完整性限制,都可以出现空值。在实际应用中,如果忽略空值的存在,将会造成造成不必要的麻烦。在where条件中, Oracle认为结果为NULL的条件为FALSE,带有这样条件的select转载 2011-12-18 17:15:20 · 402 阅读 · 0 评论