毕业总结:学会举一反三,扩展更多功能

毕业总结:学会举一反三你才能省时而高效,一通百通!

命名空间:

Socut.Data

 CData 类

实现功能:读取(DataSet方式),插入,更新,删除,统计

调用方法:

public CData myData=new CData();

实际操作:

1,读取

public DataSet ds=new DataSet(); //此DataSet类已经由微软封装提供

ds=myData.GetDataSet("SELECT * FROM 表 WHERE 条件",开始行,多少行,"虚拟表名");

2,插入

myData.GetExecuteNonQuery("INSERT INTO 表 (列1,列2) VALUES (变量1,变量2)");

2,更新

myData.GetExecuteNonQuery("UPDATE 表 SET 列1=变量A,列2=变量B WHERE 条件");

3,删除

myData.GetExecuteNonQuery("DELETE 表 WHERE 条件");

5,统计

myData.GetExecuteScalar("SELECT * FROM 表 WHERE 条件",统计类型)

统计类型分两种:

int 整型:1

double 带小数点:2 (记忆方法:如果你知道double在英文单词中有“双倍”的意思,那么类型对应值自然可以联想到“2”)

CReader类实现功能:读取(DataReader阅读器方式)

调用方法:

public CReader dr;

实际操作:

dr=new CReader("SELECT * FROM 表 WHERE 条件");

//

if(dr.Read())

{

//如果特定条件的值存在,立即终止下一行的读取

}//

while(dr.Read)

{

//循环读取符合条件的值

}//

调用读取出来的值:

dr["列名"]

使用完后关闭:dr.Close();

更多扩展功能

  1,如何实现搜索功能?

答:使用GetDataSet,或是Creader都可以实现的,因为它根本就是一个数据库内容的读取。关键的只是SQL语句的使用,应该为SELECT * FROM 表名1 WHERE 列1 LIKE ‘要搜索的关键字’

2,如何实现文章阅读总数的统计?

答:需要将所有符合要求的列作一次加法运算,使用GetExecuteScalar的统计功能就可以实现了,示例:double d1=(double)GetExecuteScalar(“SELECT SUM(要统计的列名) FROM 表名1 WHERE 条件”,2);

3,我如何开发论坛,或是商城?

答:论坛的功能几乎跟新闻系统一样的,你只要再加一个回复功能。提示:在原新闻表中新建一列,0代表主贴,大于0的数,则代表此贴是跟贴、所要跟贴的主贴ID是XX。商城的购物车,事实上就是使用Session将购买内容暂存,最后结账时一次性插入数据库。

4,在开发论坛时,读取贴子的同时我还要显示用户的信息,得同时读取两个表,如何办?

答:可用GetDataSet或CReader实现,因为这只是数据库的读取。关键还是SQL语句的使用:SELECT * FROM 新闻表,用户表 WHERE 新闻表.发贴者姓名=用户表.用户注册名

5,我想让最新的文章排在最上面,如何办?

答:可用GetDataSet或CReader实现,因为这只是数据库的读取。关键是SQL语句中的ORDER BY的ASC(升序)或DESC(降序)的使用。示例:SELECT * FROM 表名1 WHERE 条件 ORDER BY 时间列 DESC6,如何防止黑客的SQL注入? (严重程序:极高)

答:最基本的要过滤“ ’ ”符号,这样可以避免黑客构造SQL语句。如本新闻系统的第16节,用户登陆时,要先将TextBox1.Text.Replace(“’”,””)一次,再执行SQL语句。还有插入数据时,也同样要使用Replace过滤。

7,要实现数据库一键切换功能,要注意什么?

答:Access与SQL Server的SQL语句事实上还是一些差别的。比如删除语句,在Access中,可以使用DELETE * FROM 也可以用DELETE FROM ,而SQL Server 只能使用DELETE FROM 。另外,在数据库数据切换时,原数据的默认值属性均会丢失。所以,要实现数据库一键切换,要注意两点:

  1,使用共用的SQL语句;
  2,尽量避免使用默认值(如自动编号,改用GUID编码)。

时间: 2016-07-07

毕业总结:学会举一反三,扩展更多功能的相关文章

《AngularJS深度剖析与最佳实践》一1.5 实现更多功能:主题

1.5 实现更多功能:主题 1.5.1 实现主题列表 我们还没有实现发帖和取帖子列表的后端功能,甚至连这个API该设计成什么样都还不清楚.不过没关系,我们可以先在前端做一些模拟数据,等到前端所需的数据结构确定下来,API也就基本成型了,这也是敏捷方法的一种应用. 我们先做些准备工作.在router.js中增加两个路由定义: $stateProvider.state('thread', { url: '/thread', template: '<div ui-view></div>'

iOS开发UI篇—在UItableview中实现加载更多功能

一.实现效果 点击加载更多按钮,出现一个加载图示,三秒钟后添加两条新的数据. 二.实现代码和说明 当在页面(视图部分)点击加载更多按钮的时候,主页面(主控制器)会加载两条数据进来. 视图部分的按钮被点击的时候,要让主控制器加载数据,刷新表格,2B青年会在视图中增加一个主控制器的属性,通过这个属性去调用进行加载,但在开发中通常通过代理模式来完成这个操作. 下面分别是两种实现的代码. 1.项目结构和说明 说明:加载更多永远都放在这个tableview的最下端,因此这里设置成了这个tableview的

函数式思维: 转换和优化各种语言的更多功能比较

函数式编程起源于数学和计算机科学,这两种科学对术语都各执一词.语言和框架设计师们开发了他们最喜欢的命名法 ,结果发现基础范式已经有名称了.由于术语存在不一致性而使得了解函数式编程范式变得不容易. 在 "大量转换 " 中,我提出了对质数进行分类的问题,并且跨各种函数式语言就 JVM 和两种函数式 Java 框架实现了一种解决方案.本 期文章继续探讨上一期的主题,通过两种方式优化了上一期的算法,展示了各种语言中的后续更改.本期文章和上一期文章 同样阐述了各种工具和语言中术语与特性可用性之间

轻松学习XML教程

xml|教程 XML越来越热,关于XML的基础教程网络上也随处可见.可是一大堆的概念和术语往往让人望而生畏,很多朋友问我:XML到底有什么用,我们是否需要学习它?我想就我个人学习过程的心得和经验,写一篇比较全面的介绍文章.首先有两点是需要肯定的: 第一:XML肯定是未来的发展趋势,不论是网页设计师还是网络程序员,都应该及时学习和了解,等待只会让你失去机会: 第二:新知识肯定会有很多新概念,尝试理解和接受,您才可能提高.不要害怕和逃避,毕竟我们还年轻. 提纲 本文共分五大部分.分别是XML快速入门

XML轻松学习手册(1)XML快速入门

xml|快速入门 前言 XML越来越热,关于XML的基础教程网络上也随处可见.可是一大堆的概念和术语往往让人望而生畏,很多朋友问我:XML到底有什么用,我们是否需要学习它?我想就我个人学习过程的心得和经验,写一篇比较全面的介绍文章.首先有两点是需要肯定的: 第一:XML肯定是未来的发展趋势,不论是网页设计师还是网络程序员,都应该及时学习和了解,等待只会让你失去机会: 第二:新知识肯定会有很多新概念,尝试理解和接受,您才可能提高.不要害怕和逃避,毕竟我们还年轻. 提纲 本文共分五大部分.分别是XM

Android ListView最佳处理方式,ListView拖动防重复数据显示,单击响应子控件

Android ListView最佳处理方式,ListView拖动防重复数据显示,单击响应子控件. 1.为了防止拖动ListView时,在列表末尾重复数据显示.需要加入 HashMap<Integer,View> lmap = new HashMap<Integer,View>();其中Integer为列表位置,View为子项视图,加入数据前首先if (lmap.get(position)==null) ,满足条件时,加入lmap.put(position, convertView

用于数据的XML: 用EXSLT扩展XSLT的功能

正如在过去的几篇专栏文章中所看到的那样,XSLT 1.0 提供了很好的文本转换功能,但实际上它还不够完善,不足以提供好的数据操作能力.客观地说,它从未打算要做到这一点:设计 XSLT 1.0 时,它的创建者无法知道它将会有怎样的复杂用法.但是,XSLT 1.0 规范的的确确提供了通过额外的元素和函数来扩展 XSLT 功能的机制.规范中的相关段落如下: 元素扩展机制允许将名称空间指定为扩展名称空间.当将名称空间指定为扩展名称空间,并且模板中出现带有该名称空间中名称的元素时,那么认为该元素是指令而不

怎样扩展sharepoint 2010讨论板答复功能

sharepoint 2010自带的默认的讨论板功能比较单一,很多时候不能满足用户的使用需要,所以抽空改造和扩展了一些功能. 扩展的功能包括以下几点: ①,允许发帖人根据需要,设置是否关闭帖子/启动帖子, ②,允许发帖人根据需要,设置最佳答案/取消答案 ③,显示发帖人和答复人上传的附件 做得有些类似百度问答,爱问的模式. 如下图所示: 1.创建一个讨论板,并且新增一个话题,"国内sharepoint协同办公平台做得比较好的软件公司有哪些?", 填写正文:"例如需要做协同办公平

平台化三部曲之一微核心可扩展架构 - 从Eclipse平台看交易平台化

该文章来自阿里巴巴技术协会(ATA)精选集 从Eclipse平台看交易平台化 淘宝网的交易平台伴随着互联网,网络购物的蓬勃发展,支持淘宝网成为全球最大的在线交易平台.各种业务方和他们新的交易类型对交易平台提出各种各样的需求,让交易系统的响应和业务支持在现有系统基础上越来越显露出其系统架构上的缺陷,架构缺乏平台化定制扩展的功能,在快速支持新业务,扩展业务功能方面越发捉襟见肘,只能通过加大开发团队力量的投入来满足业务方的需求. 最近交易开始"平台化",希望通过的业务模型,业务流程的重构,能