C# 动态创建数据库三(MySQL)

前面有说明使用EF动态新建数据库与表,数据库使用的是SQL SERVER2008的,在使用MYSQL的时候还是有所不同

一、添加 EntityFramework.dll ,System.Data.Entity.dll ,MySql.Data, MySql.Data.Entity.EF6

注意:Entity Framework5.0.0(好像最新的6.X是不支持mysql的)

二、添加dll文件,可以使用“管理NuGet程序包”或者“Nuget程序包管理控制台”添加

 

与 控制台平台添加

 

以下为控制台平台安装dll语句
 EntityFramework.dll : Install-Package EntityFramework -Version 5.0.0
MySql.Data : Install-Package MySql.Data -Version 6.9.12
MySql.Data.Entity:Install-Package MySql.Data.Entity -Version 6.9.12

三、在app.config文件中添加connectionStrings

 

 源文件

<?xml version="1.0" encoding="utf-8"?>
<configuration><configSections><section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" /><!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 --></configSections><entityFramework><defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework" /><providers><provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" /><provider invariantName="MySql.Data.MySqlClient" type="MySql.Data.MySqlClient.MySqlProviderServices, MySql.Data.Entity.EF6, Version=6.9.12.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d"></provider></providers></entityFramework><system.data><DbProviderFactories><remove invariant="MySql.Data.MySqlClient" /><add name="MySQL Data Provider" invariant="MySql.Data.MySqlClient" description=".Net Framework Data Provider for MySQL" type="MySql.Data.MySqlClient.MySqlClientFactory, MySql.Data, Version=6.9.12.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" /></DbProviderFactories></system.data><connectionStrings><!--<add name="conncodefirst" connectionString="server=127.0.0.1;port=3306;uid=root;pwd=repower;database=code" providerName="MySql.Data.MySqlClient"/>--><add name="conncodefirst" connectionString="server=127.0.0.1;user id=root;password=repower;database=code" providerName="MySql.Data.MySqlClient" /></connectionStrings>
</configuration>

四、添加类

[Table("Student")]public class Student{public Student(){}[Key]public int StudentID { get; set; }public string StudentName { get; set; }public DateTime AddTime { get; set; }}[Table("Standard")]public class Standard{public Standard(){}public int StandardId { get; set; }public string StandardName { get; set; }public DateTime AddTime { get; set; }}

  

添加SchoolContext 继承DbContext

[DbConfigurationType(typeof(MySql.Data.Entity.MySqlEFConfiguration))]public class SchoolContext : DbContext{public SchoolContext(): base("name=conncodefirst"){}static SchoolContext(){DbConfiguration.SetConfiguration(new MySql.Data.Entity.MySqlEFConfiguration());}public DbSet<Student> Students { get; set; }public DbSet<Standard> Standards { get; set; }//protected override void OnModelCreating(DbModelBuilder modelBuilder)//{//    base.OnModelCreating(modelBuilder);//}}

  

最后调用

SchoolContext dbCOntext = new SchoolContext();//dbCOntext.Database.bool flag = dbCOntext.Database.CreateIfNotExists();Student stud = new Student() { StudentName = "New Student", AddTime = DateTime.Now };dbCOntext.Students.Add(stud);dbCOntext.SaveChanges();

  结果

 

转载于:https://www.cnblogs.com/wangyonglai/p/10308198.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/395352.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

iOS开发Swift篇—(七)函数(1)

一、函数的定义 &#xff08;1&#xff09;函数的定义格式 1 func 函数名(形参列表) -> 返回值类型 { 2 // 函数体... 3 4 } &#xff08;2&#xff09;形参列表的格式 形参名1: 形参类型1, 形参名2: 形参类型2, … &#xff08;3&#xff09;举例&#xff1a;计算2个…

如何用计算机管理员权限,教你电脑使用代码添加管理员权限的详细教程

我们在使用电脑运行某些软件的时候&#xff0c;可能需要用到管理员权限才能运行&#xff0c;通常来说直接点击右键就会有管理员权限&#xff0c;但最近有用户向小编反馈&#xff0c;在需要管理员权限的软件上点击右键没有看到管理员取得所有权&#xff0c;那么究竟该如何才能获…

activiti 5.22的demo运行

activiti 5.22的demo运行 从github上clon下来的activiti项目,运行demo项目activiti-webapp-explorer2时&#xff0c;在使用到流程设计工作区&#xff0c;选取activiti modeler作为设计器的时候报错。 从下面的报错信息中发现&#xff0c;请求路径http://localhost:8080/activit…

宣布JavaScript 2017状况调查

by Sacha Greif由Sacha Greif 宣布JavaScript 2017状况调查 (Announcing the State of JavaScript 2017 Survey) 让我们找出去年以来发生的变化&#xff01; (Let’s find out what’s changed since last year!) In a hurry? You can take the survey here.匆忙&#xff1f;…

内是不是半包围结构_轻钢别墅的体系结构

一、轻钢别墅介绍1、轻钢别墅的屋面系统轻钢别墅屋面系统是由屋架、结构OSB面板、防水层、轻型屋面瓦&#xff08;金属或沥青瓦&#xff09;组成的。轻钢结构的屋面&#xff0c;外观可以有多种组合。材料也有多种。在保障了防水这一技术的前提下&#xff0c;外观有了许多的选择…

JavaScript call()函数的应用

call([thisObj[,arg1[, arg2[, [,.argN]]]]]) call 方法可以用来代替另一个对象调用一个方法。call 方法可将一个函数的对象上下文从初始的上下文改变为由 thisObj 指定的新对象。 thisObj 可选项。将被用作当前对象的对象。 arg1, arg2, , argN 可选项。将被传递方法参数序…

hive 去重 字符串_hive函数

Hive是建立在 Hadoop 上的数据仓库基础架构,定义了简单的类 SQL 查询语言(HQL)函数分类&#xff1a;简单内置函数&#xff1a;数学函数&#xff0c;字符函数&#xff0c;日期函数&#xff0c;条件函数&#xff0c;聚合函数。高级内置函数&#xff1a;行列转换函数&#xff0c;分…

python word

代码&#xff1a; 1 #codingutf-82 __author__ zhm3 from win32com import client as wc4 import os5 import time6 import random7 import MySQLdb8 import re9 def wordsToHtml(dir):10 #批量把文件夹的word文档转换成html文件11 #金山WPS调用&#xff0c;抢先版的用KWPS&a…

aws lambda_如何为AWS Lambda实施日志聚合

aws lambdaby Yan Cui崔燕 如何为AWS Lambda实施日志聚合 (How to implement log aggregation for AWS Lambda) During the execution of a Lambda function, whatever you write to stdout (for example, using console.log in Node.js) will be captured by Lambda and sent…

【Python3爬虫】为什么你的博客没人看呢?

我相信对于很多爱好和习惯写博客的人来说&#xff0c;如果自己的博客有很多人阅读和评论的话&#xff0c;自己会非常开心&#xff0c;但是你发现自己用心写的博客却没什么人看&#xff0c;多多少少会觉得有些伤心吧&#xff1f;我们今天就来看一下为什么你的博客没人看呢&#…

泰安高考2021成绩查询,泰安高考成绩查询入口2021

高考结束之后&#xff0c;为了方便大家进行高考成绩的查询&#xff0c;下面跟着出国留学网小编来一起看看“泰安高考成绩查询入口2021”&#xff0c;仅供参考&#xff0c;希望对大家有帮助。2021山东高考成绩查询时间及志愿填报时间根据山东2021年夏季高考须知&#xff0c;2021…

用GitHub Issue取代多说,是不是很厉害?

2019独角兽企业重金招聘Python工程师标准>>> 摘要: 别了&#xff0c;多说&#xff0c;拥抱Gitment。 2017年6月1日&#xff0c;多说正式下线&#xff0c;这多少让人感觉有些遗憾。在比较了多个博客评论系统&#xff0c;我最终选择了Gitment作为本站的博客评论系统&a…

mysql延时优化教程_Mysql优化之延迟索引和分页优化_MySQL

什么是延迟索引&#xff1f;使用索引查询出来数据&#xff0c;之后把查询结果和同一张表中数据进行连接查询&#xff0c;进而提高查询速度!分页是一个很常见功能&#xff0c;select ** from tableName limit ($page - 1 ) * $n ,$n通过一个存储过程插入10000条数据进行测试&…

【动态规划】Vijos P1313 金明的预算方案(NOIP2006提高组第二题)

题目链接&#xff1a; https://vijos.org/p/1313 题目大意&#xff1a; m(m<32000)金钱&#xff0c;n&#xff08;n<60&#xff09;个物品&#xff0c;花费vi&#xff0c;价值vi*ci,每个物品可能有不超过2个附件&#xff0c;附件没有附件。 题目思路&#xff1a; 【动态规…

计算机网络应用答题卡,2013-2014学年第2学期11级计算机网络技术毕业考试试卷

2013-2014学年第2学期11级《计算机网络技术》课程毕业考试试卷得分&#xff1a;一、单项选择题&#xff1a;(每题1分&#xff0c;共30分&#xff0c;答案必须写在后面的选择题答题卡内&#xff0c;否则不得分)1、计算机网络可以按网络的覆盖范围来划分&#xff0c;以下()不是按…

0622 - 如何坚守自己的价值观?

如果有人有着和自己迥异的价值观&#xff0c;且混得很好&#xff0c;且和自己是熟人&#xff0c;自己是不是要改变自己、向其学习&#xff1f; 比如&#xff0c;常说的「学习好的比学习差的打工」&#xff0c;那到底是要好好学习&#xff0c;还是提前混人脉、攒经验&#xff1f…

如何免费注册Coursera课程

One question I get asked all the time here at Class Central is: are Coursera courses really free?在班级中心&#xff0c;我一直被问到的一个问题是&#xff1a; Coursera课程真的免费吗&#xff1f; Coursera’s user interface is intentionally designed to push le…

三态门有一个信号控制端en_三态门verilog

双向口-三态门的电路IC专业技术文章2008-12-06 14:59:24阅读119评论0字号&#xff1a;大中小订阅1.TTL三态门电路工作原理:三态门电路的基本结构如下图所示&#xff1a;(1)图1给出了三态门的电路结构图及图形符号。其中控制端EN为低电平时,P点为高电平&#xff0c;二极管D截止&…

[树形dp] Jzoj P3914 人品问题

Description 网上出现了一种高科技产品——人品测试器。只要你把你的真实姓名输入进去&#xff0c;系统将自动输出你的人品指数。yzx不相信自己的人品为0。经过了许多研究后&#xff0c;yzx得出了一个更为科学的人品计算方法。这种方法的理论依据是一个非常重要的结论&#xff…

为什么那些每三年跳一次槽的人越跳越好? - 震撼

现在&#xff0c;人们已经放下了对跳槽的偏见。这是一件好事。之前。假设你每几年换一次工作&#xff0c;人们会认为你的简历上有 “污点”。面试官会认为你无法胜任一份工作。与同事相处不好。或者你对公司不忠诚&#xff0c;不能承担任务&#xff0c;等等。 这样的想法非常快…