首页logo

金龙博客

关注Asp.Net、Java和前端开发设计,记录平凡点滴...

个人档案

Jonllen
个人档案 | 给他留言
RSS网志 | 心情闪存
妮称:Jonllen
性别:男
年龄:24
来自:中国·广州
微博闪存:特别的日子,正忙~
简述:彭金龙,洋名Jonllen Peng,出生于湖南湘潭,目前就职于广州时代财富科技有限公司,关注Asp.net、Java和前端开发设计。
博客日历

图片幻灯

音乐播放器

分类:数据库

SQL性能优化

在做天河部落博客系统的时候,遇到了一个这样的SQL问题,博客首页处于列表模式的时候,需要显示博主每个栏目的前十篇文章,之前是根据栏目ID一个个查询出来,由于栏目可能还有子栏目,因此使用多个栏目OR的方式,在程序里拼接好再执行,然而这些SQL语句却存在效率问题...

标签:数据库
  • posted@ 2010-6-27 17:32:42
  • update@ 2010-7-4 17:33:23
  • 阅读(2919)
  • 评论(1)

oracle学习小记

最近忙完iKnow,难得忙里偷闲,打开N久没有打开过的NetBeans工程,继续开始Java的学习,之前已经有用Struts访问mysql、mssqlserver、derby数据库的实现,前几天正好把oracle数据库装好了,正好把jdbc连oracle数据库的功能实现一下。昨日感恩节,收到两位同学的祝福短信,心怀着感恩的心,我也感谢大家一路有你们,晚上听着欧阳菲菲感恩的心好几遍。 段今日一大早,终于解决了java读取Oracle数据库timestamp类型的问题,至此,oracle数据库的创建程序读取告一段段落,让我来记录每一步遇到的一些问题。 oracle数据库基本语法--创建表空间dbTestCREATE TABLESPACE dbTest LOGGING DATAFILE 'D:\J2ee\NetBeansProjects\JavaWeb\PowerDesigner\sql\dbTest.ora' SIZE 2M EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO;--创建用户blogadmin,默认表空间dbTest;CREATE USER blogadmin IDENTIFIED BY blogadmin DEFAULT TABLESPACE dbTest;--授予其三个权限:DBA,CONNECT,RESOURCEGRANT DBA, CONNECT, RESOURCE TO blogadmin;--查看用户角色...

标签:数据库
  • posted@ 2009-11-27 11:08:35
  • update@ 2010-10-15 22:25:52
  • 阅读(5396)
  • 评论(0)

Asp.Net访问Access数据库注意事项

博客上线了这么久,一直还是用的Access数据库,不过程序是采用了工厂模式,预定义好了业务接口,方便以后移植到其它数据库上来,不过以前还是使用sqlserver数据库多一点,这次使用Access数据库还是会碰到一些小问题,总体用起来还是很方便,每次备份数据库就直接从ftp上拉下来就是,感觉性能还行,不过这些可能都是建立在小数据量的范围下。Q1:Access连接字符怎么写?A1:Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|blog.mdb。说明:从.Net2.0开始MS开始有App_Data目录来专门存放数据文件,而对于连接字符串数据库的文件位置可以使用DataDirectory关键来表示它的物理路径,从而在获取连接字符串的时候不再需要使用Server.MapPath()转换。Q2:时间类型的字段如何处理? A2:使用Convert.ToDateTime()进行显示的转换一次即可。说明:Access数据库的时间类型字段需要进行特殊的处理,不然会报错。对于使用OleDbParameter传递参数的时候应该这样来写:parms.Add(new OleDbParameter("postDate", Convert.ToDateTime(article.PostDate.ToString())));先把PostDate的日期类型ToString()再Convert成DateTime类型。 而对于使用sql语句的日期类型...

标签:数据库,Access
  • posted@ 2009-10-11 20:57:25
  • update@ 2010-6-17 22:18:36
  • 阅读(5721)
  • 评论(0)

mysql存储过程 在动态SQL内获取返回值

很简单,不需要使用游标循环来读取,直接select * into @变量就OK了,还可以传递参数来执行(附MySql通用分页存储过程)。 #拼接查询总记录的SQL语句 setv_sqlcounts=concat('selectcount(*)into@recordcountfrom',v_tables,v_where); set@sqlcounts:=v_sqlcounts; #预处理动态SQL preparestmtfrom@sqlcounts; #传递动态SQL内参数 set@s1=categoryid; executestmtusing@s1; deallocatepreparestmt; #获取动态SQL语句返回值 setrecordcount=@recordcount;#拼接查询总记录的SQL语句 set v_sqlcounts = concat('select count(*) into @recordcount from ',v_tables,v_where); set @sqlcounts := v_sqlcounts; #预处理动态SQL prepare stmt from @sqlcounts; #传递动态SQL内参数 set @s1= categoryid; execute stmt using @s1; deallocate prepare stmt; #获取动态SQL语句返回值 set recordcount = @recordcount; 以上我上再做存储过程分页里用到动态SQL里将查询到的count记录条数通过变量@recordcount放到recordcount里面了。 mysql的IF ELSE和其他数据库的判断有点不一样,简单的判断语句如下...

标签:数据库
  • posted@ 2009-6-28 14:59:41
  • update@ 2009-11-29 17:07:11
  • 阅读(6307)
  • 评论(0)

广而告之