• Linq to sql


    注意:如果窗体程序使用内置数据库
    你在VS中看的数据库是项目中的数据库,你编译时用到的的数据库是debug下的数据库文件,查看你项目中数据库的“复制到输出目录”属性,肯定是始终复制,意思就是每次拟推迟编译的时候会把你项目中的数据库覆盖你debug下的数据库,所以你每次编译后虽然在debug下的数据库成功更改数据了,但是之后就会被外面的数据库覆盖。
    解决办法:
    在程序的main函数中添加如下代码:
    string dataDir = AppDomain.CurrentDomain.BaseDirectory;
    if(dataDir.EndsWith(@"inRelease")||dataDir.EndsWith(@"inDebug"))
    {
    dataDir = System.IO.Directory.GetParent(dataDir).Parent.Parent.FullName;
    AppDomain.CurrentDomain.SetData("DataDirectory", dataDir);
    }
    放在主窗口代码运行之前,就一劳永逸的解决了这个问题啊


    声明一个DataContext对象,
    string str = @"Data Source=.SQLEXPRESS;AttachDBFilename=|DataDirectory|Student.mdf;Integrated Security=true";
    DataContext db=new DataContext(str);//包含数据库信息的DataContext
    var query=from info in db.某个表
    select info;
    或这是:
    DataContext db=new DataContext();
    Table<数据库中的某个表> Table对象= db.GetTable<数据库中的某个表>(); //获得某表信息
    var query = from info in Table对象
    select info;

    //插入数据
    Table对象.InsertOnSubmit(数据);
    db.SubmitChanges();//更新到数据库
    例如:
    LinqToSqlDataContext lqdacontext = new LinqToSqlDataContext();
    T_Stu user = new T_Stu();
    user.ID = "100112004";
    user.Sname = "王怡琳";
    user.Sex = "女";
    user.Sage = 20;
    Table<T_Stu> userlist = lqdacontext.GetTable<T_Stu>();//获得表集合
    userlist.InsertOnSubmit(user);

    //删除数据
    查询到某条数据
    Table对象.DeleteOnSubmit(数据);
    例如:
    LinqToSqlDataContext db = new LinqToSqlDataContext();
    Table<T_Stu> deleList = lqdacontext.GetTable<T_Stu>();
    var deleteData = from userdel in lqdacontext.T_Stu//返回用户数据
    where userdel.ID == "100112005"
    select userdel;
    foreach(var deleinfo in deleteData)
    {
    deleList.DeleteOnSubmit(deleinfo);//从表中删除用户数据
    }
    db.SubmitChanges();//更新数据库


    //更新数据
    //查询某条记录后
    foreach(var info in qurey)
    {
    //修改
    }
    例如:DataContext db=new DataContext(str);
    var updataquery = from userinfo in db.T_Stu
    // where userinfo.ID == "100112005"
    // select userinfo;
    //foreach (var newuserinfo in updataquery)
    //{
    // db.Sname = "吴鑫";
    //}
    //db.SubmitChanges();

  • 相关阅读:
    javascript中对象两种创建方式
    javascript中in用法介绍
    爬虫介绍
    解决“(1146, "Table 'mydb.django_session' doesn't exist")”报错的方法
    使用docker 安装oracle
    Mac. 修改bash_file
    http://www.yyne.com/python使用-urllib-quote-进行-url-编码小技巧/
    pycharm database 使用
    pycharm add configuration
    mysql cmmand not found
  • 原文地址:https://www.cnblogs.com/flyaway100/p/3171024.html
Copyright © 2020-2023  润新知