摘要: ORACLE PL/SQL编程之八:把触发器说透本篇主要内容如下:8.1 触发器类型8.1.1 DML触发器8.1.2 替代触发器8.1.3 系统触发器8.2 创建触发器8.2.1 触发器触发次序8.2.2 创建DML触发器8.2.3 创建替代(INSTEAD OF)触发器8.2.3 创建系统事件触发器8.2.4 系统触发器事件属性8.2.5 使用触发器谓词8.2.6 重新编译触发器8.3 删除和使能触发器8.4 触发器和数据字典8.5 数据库触发器的应用举例触发器是许多关系数据库系统都提供的一项技术。在ORACLE系统里,触发器类似过程和函数,都有声明,执行和异常处理过程的PL/SQL块。8 阅读全文
posted @ 2012-11-22 14:03 dogxuefeng 阅读(280) 评论(0) 推荐(1) 编辑
摘要: 这几天老大叫我修改一下项目中LookUpEdit控件的下拉选择功能,实现模糊检索数据,经过一番研究,发现LookUpEdit控件只能实现部分模糊检索数据功能,也就是它的检索索引是从第一位开始,也就是模糊检索数据的时候,用户必须从头开始检索,这样给用户不友好,如果只知道其中的某些关键字则实现不了。如下图:查询了资料后,发现LookUpEdit不支持自由输入,所以只好用它的兄弟控件ComBoxEdit控件。ComBoxEdit控件能够不受数据源的影响而自由输入值,现在就来说下我的处理思路:根据用户输入的值,对ComBoxEdit的数据源做过滤,然后重新绑定到控件,废话不多说了,直接上代码吧。us. 阅读全文
posted @ 2012-11-15 11:36 dogxuefeng 阅读(11096) 评论(10) 推荐(3) 编辑
摘要: //绑定lookUpEdit private void BoundData() { string sql = "select daID,xm,sfzh from baseinfo"; DataSet ds = bga.getTable(sql); if (ds != null) { int rows = ds.Tables[0].Rows.Count; lookUpEdit1.EditValue = "daID"; lookUpEdit1.Properties.ValueMember = "daID"; lookUpEdit1.Pro 阅读全文
posted @ 2012-10-25 17:22 dogxuefeng 阅读(4145) 评论(0) 推荐(0) 编辑
摘要: 因为业务需要,修要修改某个字段数据类型有number(5),变为number(5,2)型 要是没有数据的话直接用以下语句即可 alter table tb_test modify permile number(5,2); 但是有数据的话 就不能用上面方法了, alter table tb_test add permile_temp number(5,2) update tb_test set permile_temp=permile; alter table drop column permile; alter table test rename column permile_t... 阅读全文
posted @ 2012-10-18 17:04 dogxuefeng 阅读(438) 评论(0) 推荐(0) 编辑
摘要: 一、分区表: 随着表的不断增大,对于新纪录的增加、查找、删除等(DML)的维护也更加困难。对于数据库中的超大型表,可通过把它的数据分成若干个小表,从而简化数据库的管理活动。对于每一个简化后的小表,我们称为一个单个的分区。 对于分区的访问,我们不需要使用特殊的SQL查询语句或特定的DML语句,而且可以单独的操作单个分区,而不是整个表。同时可以将不同分区的数据放置到不同的表空间,比如将不同年份的销售数据,存放在不同的表空间,即年的销售数据存放到TBS_2001,2002年的销售数据存放到TBS_2002,依次类推,从而实现了分散存储,这将大大的简化大容量表的管理,提高查询性能及I/O并发等。 对于 阅读全文
posted @ 2012-09-18 15:01 dogxuefeng 阅读(432) 评论(0) 推荐(1) 编辑
摘要: 前一段时间应公司要求,让我开发一个数据库字段信息CHM帮助文件生成软件。结果当时我就二了,这个东西我只用过,不知道咋做啊。没想到老大很随意说一句:"没事,这个软件我之前有有源码,只不过现在不能用了,你等会参考一下就可以了"。我当时还傻乎乎的谢天谢地,总算有源码可以参考了。当源代码发过来以后,我顿时石化了,我。。。。。,那玩意儿用c++builder开发的,硬着头皮看了一遍,全是带*指针变量、数组、集合、函数,更要命的是,一个类里面写了四五千行没注视的代码,函数中五六百行代码的有几个。 我说这不是坑人嘛?结果看了一天后,我果断放弃看了那个源码了,最后还是的感谢网上活跃的一帮朋 阅读全文
posted @ 2012-09-09 13:27 dogxuefeng 阅读(790) 评论(0) 推荐(0) 编辑
摘要: 最近在做关于文件方面的程序,用的比较多的就是文件流,但是在获取路径方面,通常用的都是OpenFileDialog或者SaveFileDialog方法,而且这两个方法有个缺点就是必须要指定到具体的文件名,也就是路径一定要包含文件名,此时就有一个问题,如果我的文件名是多个呢,我要循环写文件怎么办呢?虽然可以用截取字符串的方法获得文件夹路径,但是给用户体验不够好,所以可以用以下方法获取客户端的文件夹路径:FolderBrowserDialog folderBrowserDialog1 = new FolderBrowserDialog(); if (folderBrowserDialog1.Sho. 阅读全文
posted @ 2012-09-03 16:53 dogxuefeng 阅读(2232) 评论(0) 推荐(0) 编辑
摘要: 1这是最简单的方法 DirectoryInfo di = new DirectoryInfo(string Path); di.Delete(true); 注:path是你要删除的非空目录; true:你要删除里面所有的文件,包括文件夹和子文件夹2 /// <summary> /// 删除非空文件夹 /// </summary> /// <param name="path">要删除的文件夹目录</param> void DeleteDirectory(string path) { DirectoryInfo dir = new 阅读全文
posted @ 2012-09-03 16:48 dogxuefeng 阅读(1164) 评论(0) 推荐(0) 编辑
摘要: 转至http://blog.csdn.net/zhoufoxcn/article/details/2026908用asp.net开发Ajax有两种主流,一种是微软推出的技术,其中一个最常用的就是UpdatePanel控件,还有一种是AjaxPro技术。这种技术有着各自的特点。采用微软的技术开发也沿用了微软一贯的简单化、傻瓜化的特点,开发简单Ajax程序几乎不需要了解任何网页脚本知识和XHTML知识,缺点也有一些,通常会带来一些不必要的网络流量(整个UpdatePanel控件内所有的控件内容都会提交),另外在VS2005下经常会出现“***不是已知元素 原因可能是网站中存在编译错误 ”的提示,虽 阅读全文
posted @ 2012-08-29 11:17 dogxuefeng 阅读(263) 评论(0) 推荐(0) 编辑
摘要: protected void BtnOk_Click(object sender, EventArgs e) { if (this.FileUpload1.FileName == "") { this.lblMessage.Text = "<font color=#FF0000>请选择上传的图片!</font>"; this.FileUpload1.Focus(); return; } string filePath = this.FileUpload1.FileName; string fileName = filePath.S 阅读全文
posted @ 2012-08-29 11:01 dogxuefeng 阅读(185) 评论(0) 推荐(0) 编辑