随笔分类 -  数据库

上一页 1 2 3 4 5 6 ··· 14 下一页
摘要:在sql server中做除法处理的时候,我们经常需要处理除数为零的情况,因为如果遇到这种情况的时候,sqlserver会抛出遇到以零作除数错误的异常,我们总不希望把这个异常显示给用户吧。做个会报这个错误的示例,如以下sql代码: declare @a int;declare @b int;set  阅读全文
posted @ 2016-10-21 09:52 Nina 阅读(8741) 评论(0) 推荐(0)
摘要:在一些需求中,可能我们需要知道连接到SqlServer的前端程序的一些系统信息,比如前端连接的计算机名称,IP地址,什么时候开始请求连接,什么时候结束连接等信息。 如果你对SqlServer的系统函数或视图不太了解,这个功能看起来好像比较复杂,而实际上, SqlServer的动态管理视图已经给我们提 阅读全文
posted @ 2016-10-20 08:10 Nina 阅读(800) 评论(1) 推荐(0)
摘要:因为工作中经常需要将数据从一个数据库导入到另一个数据库中,所以将这个功能写成一个存储过程,以方便调用。现在粘贴出来供大家参考:注意:1,以下示例中用到了syscolumns,sysobjects等系统视图,在sql2005及以后的版本中,大家也可以使用sys.columns与sys.objects来 阅读全文
posted @ 2016-10-20 08:09 Nina 阅读(2146) 评论(0) 推荐(0)
摘要:rowcount的用法: rowcount的作用就是用来限定后面的sql在返回指定的行数之后便停止处理,比如下面的示例, set rowcount 10select * from 表A 这样的查询只会返回表A中的前10条数据。它和 "select top 10 * from 表A" 的作用一样。注意 阅读全文
posted @ 2016-10-20 08:03 Nina 阅读(40162) 评论(7) 推荐(5)
摘要:http://www.lmwlove.com/ac/ID878 有很多朋友写了几年的like搜索,可能对like后面通配符的用法都不了解,甚至于%的作用是什么都不清楚。在这篇文章中,我们就一起来学习一下like查询中通配符的用法吧。我们写的最多的查询语句可能是这样的 select * from co 阅读全文
posted @ 2016-10-20 07:59 Nina 阅读(6980) 评论(0) 推荐(1)
摘要:一、sql server日期时间函数Sql Server中的日期与时间函数 1. 当前系统日期、时间 select getdate() 2. dateadd 在向指定日期加上一段时间的基础上,返回新的 datetime 值 例如:向日期加上2天 select dateadd(day,2,'2004- 阅读全文
posted @ 2016-08-12 13:28 Nina
摘要:http://www.cnblogs.com/kuailewangzi1212/archive/2013/10/06/3353489.html declare @str datetime,@end datetime select @str='2013-04-05',@end='2013-04-10' 阅读全文
posted @ 2016-08-08 09:41 Nina
摘要:做了好几年的管理工作,技术上有些退步,现在又一一捡起来啦, 以下最近几天看到的好文章, SQL Server 约束 http://blog.csdn.net/qq61394323/article/details/26091875 SQL UNIQUE 约束 http://www.w3school.c 阅读全文
posted @ 2016-07-18 09:45 Nina 阅读(161) 评论(0) 推荐(0)
摘要:整理一下网上所看到sql优化方法1、使用大写字母书写sql,因为oracle解释器会先将sql语句转换成大写后再解释2 减少访问数据库的次数,多数情况下一条sql可以达到目的的,就不要使用多条sql。当执行每条SQL语句时,ORACLE在内部执行了许多工作:解析SQL语句,估算索引的利用率,绑定变量,读数据块等等。由此可见,减少访问数据的次数,就能实际上减少ORACLE的工作量。例如:以下有三种方法可以检索出雇员号等于0342或0291的职员。方法1(最低效)SELECT EMP_NAME,SALARY,GRADEFROM EMPWHERE EMP_NO=342;SELECT EMP_NAME 阅读全文
posted @ 2013-07-31 15:38 Nina 阅读(488) 评论(0) 推荐(0)
摘要:1. WHERE子句中的连接顺序:Oracle采用自下而上的顺序解析WHERE子句,根据这个原理,表之间的连接必须写在其他WHERE条件之前, 那些可以过滤掉最大数量记录的条件必须写在WHERE子句的末尾.2. SELECT子句中避免使用 ‘ *’:ORACLE在解析的过程中, 会将'*' 依次转换成所有的列名, 这个工作是通过查询数据字典完成的, 这意味着将耗费更多的时间3. 使用DECODE函数来减少处理时间:使用DECODE函数可以避免重复扫描相同记录或重复连接相同的表.4. 用TRUNCATE替代DELETE:当删除表中的记录时,在通常情况下, 回滚段(ROLLBACK 阅读全文
posted @ 2013-07-31 13:52 Nina 阅读(333) 评论(0) 推荐(0)
摘要:1、Oracle Package的作用: 可以简化应用设计、提高应用性能、实现信息隐藏、子程序重载2、ORACLE中的function 、package、package bodies、procedure的区别和相同: function有返回值,有参数;procedure无返回值,有参数;package、package body是同时存在的,就像.h和.cpp文件,如果要外部调用的,就在package里声明一下,包内调用的,只要在body里写就行了。package可包括function,procedure3、在sqlserver中,直接写个存储过程就可以调用。但是在oracle中,我看好多资料上 阅读全文
posted @ 2013-07-31 13:34 Nina 阅读(8812) 评论(0) 推荐(1)
摘要:什么是合并多行字符串(连接字符串)呢,例如: SQL> desc test; Name Type Nullable Default Comments ------- ------------ -------- ------- -------- COUNTRY VARCHAR2(20) Y CITY VARCHAR2(20) Y SQL> select * from test; COUNTRY CITY -------------------- -------------------- 中国 台北 中国 香港 中国 上海 日本 东京 日本 大阪 要求得到如下结果集: ------- 阅读全文
posted @ 2013-07-16 17:15 Nina 阅读(289) 评论(0) 推荐(0)
摘要:由于业务的复杂多变,我们编写完的程序,在后期肯定要被修改,而且修改的人很可能不是自己。这种情况我们都遇到过。而且,看别人的代码可能会觉得很痛苦:为什么他要这样写相关逻辑?为什么变量名称要这样定义?换用这种方式不是更好吗?……等等。原因很简单:我们没有一个相关的代码编写规范。而你所换用的方式可能对其他人不适合。我们已经做成功了几个系统。而后期,我们还会编写或者维护更多的代码。这样,编码的规范性就显得很重要了。下面是我遵循的一些规则,以及Steven的几个建议,欢迎拍砖。1. 严格遵循命名约定,好像它们就是你的生命支柱。我们可能有自己的命名方法,也许就是v_aab001, i, count, bj 阅读全文
posted @ 2013-07-16 17:08 Nina 阅读(1244) 评论(0) 推荐(0)
摘要:内部存储格式: 世纪、年、月、日、小时、分钟、秒 默认格式是:DD-MON-RR。 SYSDATE 返回当前的系统时间。 SELECT SYSDATE FROM DUAL; 对日期的数学运算 SELECT (SYSDATE-HIRE_DATE)/7 FROM TABLENAME WHERE ROWNUM; 数字列 ADD_MONTHS(date,x)函数,返回加上X月后的日期DATE的值。X可以是任意整数。如果结果的月份中所包含的 日分量少于DATE的月份的日分量,则返回结果月份的最后一天。如果不小于,则 结果与DATE的日分量相同。时间分量也相同。 CURRENT_DATE 以DATE类型. 阅读全文
posted @ 2013-07-16 16:57 Nina 阅读(1583) 评论(0) 推荐(0)
摘要:http://www.jb51.net/list/list_154_1.htm方法一、使用SQL*Loader这个是用的较多的方法,前提必须oracle数据中目的表已经存在。大体步骤如下:1、将excel文件另存为一个新文件比如文件名为text.txt,文件类型选文本文件(制表符分隔),这里选择类型为csv(逗号分隔)也行,但是在写后面的control.ctl时要将字段终止符改为','(fields terminated by ','),假设保存到c盘根目录。2 、如果没有存在的表结构,则创建,假设表为test,有两列为dm,ms。3、用记事本创建SQL*Loa 阅读全文
posted @ 2013-07-16 13:28 Nina 阅读(717) 评论(0) 推荐(0)
摘要:字符函数——返回字符值这些函数全都接收的是字符族类型的参数(CHR 除外)并且返回字符值.除了特别说明的之外,这些函数大部分返回VARCHAR2类型的数值.字符函数的返回类型所受的限制和基本数据库类型所受的限制是相同的,比如: VARCHAR2数值被限制为2000字符(ORACLE 8中为4000字符),而CHAR数值被限制为255字符(在ORACLE8中是2000).当在过程性语句中使用时,它们可以被赋值给VARCHAR2 或者CHAR类型的PL/SQL变量.lCHR语法:chr(x)功能:返回在数据库字符集中与X拥有等价数值的字符。CHR和ASCII是一对反函数。经过CHR转换后的字符再经 阅读全文
posted @ 2013-07-16 12:09 Nina 阅读(317) 评论(0) 推荐(0)
摘要:ORACLE常用数值函数、转换函数、字符串函数详细出处参考:http://www.jb51.net/article/20975.htm本文更多将会介绍三思在日常中经常会用到的,或者虽然很少用到,但是感觉挺有意思的一些函数。分二类介绍,分别是: 著名函数篇 -经常用到的函数 非著名函数篇-即虽然很少用到,但某些情况下却很实用 注:N表示数字型,C表示字符型,D表示日期型,[]表示内中参数可被忽略,fmt表示格式。 单值函数在查询中返回单个值,可被应用到select,where子句,start with以及connect by 子句和having子句。 (一).数值型函数(Number... 阅读全文
posted @ 2013-07-16 12:07 Nina 阅读(632) 评论(0) 推荐(0)
摘要:最近换了新公司,又用回Oracle数据库了,很多东西都忘记了,只是有个印象,这两晚抽了点时间,把oracle对字符串的一些处理函数做了一下整理,供日后查看。。平常我们用Oracle主要有两种字符串类型1.char始终为固定的长度,如果设置了长度小于char列的值,则Oracle会自动用空格填充的。当比较char时,Oracle用空格将其填充为等长,再进行比较。2.VarChar2数据类型为可变长度,虽然与VarChar数据类型是同义的,但在今后的Oracle版本中也许会有变化,所以应该避免使用VarChar,优先使用VarChar2。固定长度的字符串字段使用Char,而其他所有的字符串字段都应 阅读全文
posted @ 2013-07-16 12:04 Nina 阅读(212) 评论(0) 推荐(0)
摘要:1.获取所有用户名:SELECTnameFROMSysuserswherestatus='2'andislogin='1'islogin='1'表示帐户islogin='0'表示角色status='2'表示用户帐户status='0'表示糸统帐户2.获取所有数据库名:SELECTNameFROMMaster..SysDatabasesORDERBYName3.获取所有表名SELECTNameFROMDatabaseName..SysObjectsWhereXType='U'ORDER 阅读全文
posted @ 2013-07-11 17:08 Nina 阅读(419) 评论(0) 推荐(0)

上一页 1 2 3 4 5 6 ··· 14 下一页