zoukankan      html  css  js  c++  java
  • 面试随笔ss

    等闲了再来梳理

    =====================

    触发器

    deleted 与inserted 数据的差异 
    Inserted 
    存放进行insert和update 操作后的数据 
    Deleted 
    存放进行delete 和update操作前的数据 
    注意:update 操作相当于先进行delete 再进行insert ,所以在进行update操作时,修改前的数据拷贝一条到deleted 表中,修改后 
    的数据在存到触发器作用的表的同时,也同时生成一条拷贝到insered表中

    ===============

    先说2个机试题吧

    1.用net读取文本文件然后插入到数据库中

    2.做一个登陆功能 登陆的时候检测用户名只能为数字和字母组成

    都很简单

    我都用三层架构实现的  dbhelper、DAL、bll、model、web

    有一点陌生

    第一个是 读取web.config中的字符串  这个有个过时的不能用  新的要手动引用System.Configuration.dll

    string s = ConfigurationManager.ConnectionStrings["connection"].ConnectionString;

    或者没有web.config这样写:

    server=.;database=test;uid=sa;pwd=sa;(这个好记一点、单词拼写简单一点)

    或者

    Data Source=myServerAddress;Initial Catalog=myDataBase;User Id=myUsername;Password=myPassword;


    ****因为我去面试没有网络也没带U盘 所以代码 都没有***

    补充:下边的方法也可以更方便 更好记
    SqlConnectionStringBuilder 在命名空间
    using System.Data.SqlClient 里
     SqlConnectionStringBuilder c = new SqlConnectionStringBuilder();
                c.DataSource = ".";
                c.InitialCatalog = "test";
                c.UserID = "sa";
                c.Password = "sa";

     关于ADO、事务等的资料:这里

    ==============================================================

    1.net的运行机制

    首先用C#,VB.net编写代码--->然后再编译为程序集(.exe、.dll[MSIL]、元信息[数据信息]、可选资源[图片、声音])---->程序集再通过JIT编译 (Just-In-Time 仅在需要时才编译MSIL)为机器代码---->最后通过托管CLR运行机器代码。

    netframework包括:clr 公共语言运行时和 fcl 统一类库集

    2.反射

    反射(Reflection)是.NET中的重要机制,通过放射,可以在运行时获得.NET中dll。exe等里边的每一个类型(包括类、结构、委托、接口和枚举等)的成员,包括方法、属性、事件,以及构造函数等。

    3.委托和事件

    委托是一个类,它定义了方法的类型,使得可以将方法当作另一个方法的参数来进行传递,这种将方法动态地赋给参数的做法,可以避免在程序中大量使用If-Else(Switch)语句,同时使得程序具有更好的可扩展性。

    定义委托:

    public delegate void GreetingDelegate(string name);

    Event出场了,它封装了委托类型的变量,使得:在类的内部,不管你声明它是public还是protected,它总是private的。在类的外部,注册“+=”和注销“-=”的访问限定符与你在声明事件时使用的访问符相同。

    声明事件:   

     public event GreetingDelegate MakeGreet;


    什么情况下用委托:

    1多线程编程中往往使用委托做异步调用

    2委托、事件与Observer设计模式 发布-订阅

    3从设计模式上讲,委托跟接口类似,接口利用组件来扩展,委托直接用一个函数起到组件的作用。

    GOF对它进行了抽象,称为Observer设计模式:Observer设计模式是为了定义对象间的一种一对多的依赖关系,以便于当一个对象的状态改变时,其他依赖于它的对象会被自动告知并更新。Observer模式是一种松耦合的设计模式。

    来自:http://www.cnblogs.com/JimmyZhang/archive/2007/09/23/903360.html

    SQL

    1.问题1
    a表
    id name
    1 xiaosan
    2 xiaosi
    b表
    id name sex
    1 xiaowu boy
    2 xiaoliu boy  
    3 xiaoqi girl

    语句select * from a,b查询出来几条记录
    这个查出来是六条 为什么呢??

     

    答案:

    select * from t1,t2
    等于

    select * from t1 cross join t2

     CROSS JOIN又称为笛卡尔乘积,实际上是把两个表乘起来。 http://www.cnblogs.com/chenxizhang/archive/2008/11/10/1330325.html

    2.

    问题2
    表A
    id com
    1 50
    2 60
    1 30
    1 40
    2 80
    表B
    id price
    1 null
    2 null

    怎么把表A中的数据根据id分组后求出com的和 然后插入到表B对应的id的price里边

    比如id为1的com和胃50+30+40=120
    那么表B id为1的price就为120
    id为2的同理...

    http://topic.csdn.net/u/20120526/11/b1733464-0aac-4d43-acf0-aa5dce6fff03.html?seed=620799569&r=78683988#r_78683988

    答案:

    update t2 set price=s from t2,(select id,sum(com) s from t1 groupby id)tmp where t2.id=tmp.id

     

  • 相关阅读:
    【luogu】P1772物流运输(最短路+DP)
    【Bzoj】1001狼抓兔子(平面图最小割转对偶图最短路)
    后记
    【Luogu】P2680运输计划(树上差分+二分)
    【Luogu】P2059卡牌游戏(概率DP)
    【Luogu】P2051中国象棋(DP)
    概率与期望学习笔记
    【Luogu】P2894酒店Hotel(线段树)
    21.Mysql Server优化
    20.Mysql锁机制
  • 原文地址:https://www.cnblogs.com/0banana0/p/2537379.html
Copyright © 2011-2022 走看看