随笔分类 - [9]SQL
摘要:ORA-00001: 违反唯一约束条件 (.)ORA-00017: 请求会话以设置跟踪事件ORA-00018: 超出最大会话数ORA-00019: 超出最大会话许可数ORA-00020: 超出最大进程数 ()ORA-00021: 会话附属于其它某些进程;无法转换会话ORA-00022: 无效的会话 ID;访问被拒绝ORA-00023: 会话引用进程私用内存;无法分离会话ORA-00024: 单一进程模式下不允许从多个进程注册ORA-00025: 无法分配ORA-00026: 丢失或无效的会话 IDORA-00027: 无法删去当前会话ORA-00028: 您的会话己被删去ORA-00029:
阅读全文
摘要:最近忙于找工作,面试时,遇到面试官要用我用T-SQL语句写一个分页存储过程,当时我一下子就傻了,好长时间没有写了,一时都忘记了,趁着今天有空,花时间写了一下,下面将Code粘贴出来,如有错误之处,望大家指正。 第一个存储过程相对比较复杂,传入参数较多,涉及到排序。第二个存储过程相对简单点。 分页存储一: 1 create Procedure prc_GetRecordForPaging 2 @tableName varchar(255),--表名 3 @fieldName varchar(255),--字段名称 4 @pageSize int=10, --单页显...
阅读全文
摘要:在MSSQL server下,使用replicate进行字符串中指定重复次数,转到oracle下,不存在replicate函数,只能使用lpad和rpad两个函数。 语法: MSSQL server replicate ( character_expression, integer_expression) 参数 character_expression字符数据型的字母数字表达式,或者可以隐式转换为 nvarchar 或 ntext 的其他数据类型的字母数字表达式。 integer_expression可以隐式转换为 int 的表达式。如果 integer_expression 为...
阅读全文
摘要:这几天在win7 x64上安装oracle客户端,安装后,单击配置和移植工具下面的net configuration assistant和oracle net manager工具,系统没有响应。 尝试解决办法,在oracle安装目录下,打开“D:\app\XX\product\11.2.0\client_1\network\admin”目录,新建一个“tnsnames.ora”,里面内容具体如何写,可以参考文件夹sample下的文件依葫芦画瓢。那样就可以使用PL/SQL登录。但是那两个工具不响应的目前还是没有办法解决,纠结中…… 安装PL/SQL时,建议安装路径不要安装在Program ...
阅读全文
摘要:最近总结了一下oracle主键的设置方法,贴到这保存一下吧。有两种方法可以设置主键,一种是自增长主键,另一种就是生成唯一序列。一、自增长主键--首先建一个表TEST1 create table TEST 2 ( 3 NID int PRIMARY KEY, 4 test1 varchar2(20), 5 test2 varchar2(20), 6 test3 varchar2(20), 7 test4 varchar2(20), 8 test5 varchar2(20) 9 )-- 再建一个序列SEQ_TEST 1 create sequence SEQ_TE...
阅读全文
摘要:问题1:报错:找不到连接“SourceConnectionOLEDB”。如果找不到特定的连接元素,Connections集合将发生此错误。其他信息:找不到连接“SourceConnectionOLEDB”。如果找不到特定的连接元素,Connections集合将发生此错误。({0DE0CDBB-BCD6-4261-A118-B0CB22DA3C4A})问题2:无法建立数据流连接。为连接管理器“{3C8CD7CF-E647-41F8-A2A4-1069B64F0156}”指定的连接类型“OLEDB”未被识别为有效的连接管理器类型。当试图创建未知连接类型的连接管理器时会返回此错误。请检查连接类型名称
阅读全文
摘要:折腾我好几天的交叉表问题终于解决了。下面将代码贴出来。 一、问题描述 数据库中存在一个名为landundertake表,结构如下所示: 注:其中appraiserID是appraiser表的外键 目的是将landundertake表转换为如下所示: 二、处理代码如下所示: 1 select 2 B1.A as quarterID, 3 B1.A1 as landCode, 4 replicate('0',3-len(B1.A2))+cast(B1.A2 AS varchar(10)) as appraiserID1,--字符串是定长,如果长度不足,用0填充 5 ...
阅读全文
摘要:通过PL/SQL编程,编写分页存储过程。代码如下所示: 1 --PL/SQL开发编写分页代码 2 --创建包 3 create or replace package Page as 4 type test_cursor is ref cursor 5 end Page; 6 --创建存储过程 7 create or replace procedure Page( 8 (tablename in varchar2,--表名 9 PageSize in number,--每页显示数据大小10 PageNow in number,--当前页面11 RowsCount out number,-...
阅读全文
摘要:今天下午忙于将access数据库中的交叉表转到SQL server数据库中,在SQL server中,不支持transfrom方法,查找相关资料,找到使用case方法进行转换。代码如下所示:表landundertake结构如下所示:表appraiser结构如下所示:access代码:1 TRANSFORM First(Landundertake.valuerId) AS valuerId之First2 SELECT Appraiser.quarterId, Landundertake.landCode3 FROM Landundertake INNER JOIN Appraiser ON (.
阅读全文
摘要:将sqlserver中table表的[datetime]字段值‘2011-11-07 16:41:35.033’ 改为‘2011-11-07 00:00:00‘去除了时分秒.[datetime]字段要为datetime类型的哦. UPDATE table SET [datetime]= Convert(char(11),[datetime],120) 获取当前日期利用 convert 来转换成我们需要的datetime格式. select CONVERT(varchar(12) , getdate(), 112 )20040912-------------------------------.
阅读全文
摘要:最近忙于动态监测软件的开发,处理有关标准宗地编码和区段编码关系,关系如下表所示:编号标准宗地编码(landCode)所在区段编码(sectCode)1131001BG001G0012131001BG002G0013131001BG003G0014131001BG004G0025131001BG005G003现在需要将表中的数据转换为如下表所示结果:编号区段编码包含的标准宗地1G001131001BG001,131001BG002,131001BG0032G002131001BG0043G003131001BG005在SQL server数据库中,创建自定义函数,通过游标,将表的数据转化为结果.
阅读全文