C# 知识总结

1.循环结构for循环while循环loop循环repeat until循环

  For循环用在一直循环次数的情况下,而且循环规律为整数的时候,方便一点 

   while循环就随意了,只要是循环,就可以解决。

 

2.储存过程与函数的区别?

  1)标示符不通,函数用function   储存过程用procedure

   2)返回值,函数必须有返回值,储存过程不需要有返回值

 

3.储存过程是否能进行增删改查?(可以)

 

 

4.索引有哪几种?

  1)唯一索引  (2)主键索引

  3)对于非聚集索引,有些查询甚至可以不访问数据页;

  4)聚集索引可以避免数据插入操作集中于表的最后一个数据页。

  通过对于数据库索引知识和其基本特点的了解,不难发现,建立和使用数据库索引,对于提供数据库系统整体性能有着极为有利的作用,能够极为有效的加快数据库数据库的读取速度,但同时,也存在着一定的弊端,数据库索引的创建和维护,以及存储不仅会耗费大量的时间和精力,同时也会极为消耗VPS服务器的硬盘空间等资源,因此,对于大型数据库的维护,我们还需要谨慎使用数据库索引。

 

 

5.如何优化数据?

  1)调整数据库设计(建索引) (2)调整sql语句   (3)调整操作系统参数  

  4)调整服务器内存分配

 

 

6.如何处理几十万条并发数据?

  1. 用存储过程能分页就分页
  2.第一次尽量过滤掉所有无用的数据
  3.多线程 Thread
  4.ajax异步处理
  5.提高硬件。可以使用服务器集群。
  6.缓存技术(硬件和程序两方面)。访问过的不需要二次访问数据库。

 

 

7.jquery中可以对数据进行增删改查吗?

  可以对静态页面的进行增删改查

 

 

8.json数据解析中数据类型怎么转换?

   你解析的时候可以默认他为String类型,解析后,转成int,加个try catch 出错就是null,

   Json本身就是字符串类型

   json类型在js可以识别成对象,但是在后台代码里面永远是string类型的

9.什么是触发器?以及作用?

 触发器trigger由三个部分组成,事件、条件、动作。   事件:或称为触发事件,顾名思义,就是当某个事件发生的时候就运行触发器。   条件:判断是否达到指定的条件,如果没有达到条件将不执行动作。

触发器(trigger搜索)是个特殊的存储过程,它的执行不是由程序调用,也不是手工启动,而是由个事件来触发,比如当对一个表进行操作( insertdeleteupdate)时就会激活它执行。触发器经常用于加强数据的完整性约束和业务规则等。 触发器可以从 DBA_TRIGGERS USER_TRIGGERS 数据字典中查到。

触发器可以查询其他表,而且可以包含复杂的 SQL 语句。它们主要用于强制服从复杂的业务规则或要求。例如,您可以根据客户当前的帐户状态,控制是否允许插入新订单。

触发器也可用于强制引用完整性,以便在多个表中添加、更新或删除行时,保留在这些表之间所定义的关系。然而,强制引用完整性的最好方法是在相关表中定义主键和外键约束。如果使用数据库关系图,则可以在表之间创建关系以自动创建外键约束。

作用:当你对表进行了添删改查等操作时,如果你需要做一些特定的业务操作,就可以使用触发器。

常见的触发器分为3种:增、删、改

 

 

10.SVN工具?

   svn 主要是多人来开发一个项目,代码集中管理方便维护和跟踪项目进展状态的一种非常重要的工具,svn是有权限限制的,登录svn必须有账号和密码才行否则无法操作svn

  svn可以将你每一次的修改内容,差异进行统计。你也可以随时恢复到你想回去的相应版本(即你修改后上传时的每次更新的内容)。如果遇到多人操作了同一文件,svn会自动整合在一起,如果改到了同一行代码,svn会提醒你有冲突,方便去解决冲突。

 

什么是SVN(Subversion)?

 

有一个简单但不十分精确比喻:

SVN = 版本控制 + 备份服务器

 

简单的说,您可以把SVN当成您的备份服务器,更好的是,他可以帮您记住每次上传到这个服务器的档案内容。并且自动的赋予每次的变更一个版本。

通常,我们称用来存放上传档案的地方就做Repository。用中文来说,有点像是档案仓库的意思。不过,通常我们还是使用Repository这个名词。基本上,第一次我们需要有一个新增(add)档案的动作,将想要备份的档案放到Repository上面。日后,当您有任何修改时,都可以上传到Repository上面,上传已经存在且修改过的档案就叫做commit,也就是提交修改给SVN server的意思。针对每次的commit,SVN server都会赋予他一个新的版本。同时,也会把每次上传的时间记录下来。日后,因为某些因素,如果您需要从Repository下载曾经提交的档案。您可以直接选择取得最新的版本,也可以取得任何一个之前的版本。如果忘记了版本,还是可以靠记忆尝试取得某个日期的版本。

 

 

 

为什么要用SVN?

 

1。备份工作档案的重要性。您永远不知道计算机上的硬盘何时会坏掉。根据经验法则再加上墨菲定理,坏事情往往都发生在最重要的时刻。例如,要release东西的前一刻,硬盘完全坏掉,无法修复。所以,常常备份工作数据是非常重要的。大部分公司的server都会有专门的备份机制,甚至是异地备援。绝对比放在自己的计算机里头,或是随身碟上面来的安全。

2。版本控管的重要重要性。您无法保证手头上最新版本永远都是对的。很多时候,在经过数天努力工作后,您才发现走错方向。需要将所有的修改回复到数天前版本。没有几个人能够完全记住自己修改过什么东西。如果没有做好版本控管,那么,最差的状况就是要全部重来。

3。伙伴间的数据同步的重要性。很多时候,除了您个人外,还有其它的伙伴也需要您的档案。怎么把最新的档案提供给伙伴呢?用e-mail?根据经验,用e-mail是一个很差的办法。到了最后,根本就不知道哪一封e-mail才是新的。因为可能您最新的e-mail已经被当成垃圾信给丢了。别忘了,现在很多e-mail软件都有anti-spam(反垃圾邮件)的功能,说不定这些信件都被当成广告信给处理掉了。而且,您也应该知道一般档案如果放在e-mail内,档案大小会变得比较大(通常是原来的4/3倍以上)。如果每天更新一次,恐怕几天没收信的话,信箱就爆了!

4。如果没有一个好的办法,备份不同版本是很耗费硬盘空间的。例如:您有一个总共10MB的目录,使用单纯的档案备份。如果有10个版本就会变成100MB。20个版本就有200MB。如果,不想备份这么多版本,势必就是要减少备份的次数。拉长备份周期将会导致数据遗失的危险性增高。把旧的不需要的备份删除?根据经验,只要时间一拉长,您跟本就不知道一个月以前的版本是重要或者是不重要。

---------SVN能帮我们解决上面的问题吗?答案是肯定的:

SVN Repository可以是自己计算机上的一个目录,或者是随身碟(不建议这样用)。当然也可以是公司的服务器。

SVN有很棒的版本控管机制。所有上传的版本都会帮您记录下来。日后您可以随时取得某一个时刻的版本。而且,也有版本分支及合并等好用的功能。

SVN可以让不同的开发者存取同样的档案,并且利用SVN Server作为档案同步的机制。也就是说,您有档案更新时,无须将档案寄给您的开发成员。只需要告诉他新的版本已经在SVN Server上面,请他自己去SVN Server上面就可以取得最新版本。而且,SVN Server也可以做到当您上传新版本后,自动发信给相关的成员。

SVN的存放档案方式是采用差异备份的方式。也就是说,他只会备份有不同的地方。所以很省硬盘空间。此外,他也可以针对所谓的非文字文件进行差异备份。

 

 

 

1、公司一直使用svn,所以团队和个人也需要使用

2、SVN的安全控制和权限管理更好。git 下,如果一个人clone以后,所有代码和历史都泄漏了。而 svn 有细致的按照目录级的权限控制

3、GUI工具,还是 svn 更强

4、git 有一定的学习成本,分布式的工作方式,需要转换思维方式

 

非纯技术开发公司更倾向于svn

1.服务器公司统一控制管理

2.安全机制, 不会每个人都拷贝一份, 可以对组员限制, 也可以分配不同组

3.团队合作开发起来传递的数据量不会过大, git因为都是镜像, 如果有个美工传个500mb的psd, 不相关的人员也要去下载, 很浪费流量和更新时间

4.subversion感觉搭建非常简单支持https, 可以外部网络访问, 可以让员工在家办公, 也不用担心传递数据的流量(好邪恶)

5.每个人的电脑大小不一定能装下特别大的项目, 对于svn来讲, 公司配备一个足够大的服务器硬盘就好了, 而且哪个项目完成, 直接删掉本地目录就好, 完全没有保留的必要

6.网游公司, 广告公司这些需要大量媒体设计混合到程序的项目中, 很需要svn这样的服务器.

7.svn相对于git分支确实弱爆了, 但是并不能通过鄙视svn就能把所有人的习惯改过来

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值