C# 连接本地数据库

C# 连接本地数据库C#VSCodeM1C#如何连接本地数据库?1.安装MySQL下载MySQL软件,傻瓜式安装即可,安装完之后,在系统偏好号设置里会出现一个MySQL的图标。在安装的时候会让用户输入密码,这个自己看着输就行了,但是别忘记了。建议别用终端命令行安装了,对初学者来说学习成本比较大。2.连接本地MySQL安装完MySQL之后,点击MySQL图标,开启MySQL,如下我已开启我本地已安装了Navicate,我就使用Navicate对本地数据库进行连接,验证是否能连接成功打开Nvi.

大家好,又见面了,我是你们的朋友全栈君。

C#
VSCode
M1

C# 如何连接本地数据库?

1. 安装MySQL

下载MySQL软件,傻瓜式安装即可,安装完之后,在系统偏好号设置里会出现一个MySQL的图标。

在安装的时候会让用户输入密码,这个自己看着输就行了,但是别忘记了。
在这里插入图片描述
建议别用终端命令行安装了,对初学者来说学习成本比较大。

2. 连接本地MySQL

安装完MySQL之后,点击MySQL图标,开启MySQL,如下我已开启
在这里插入图片描述

我本地已安装了Navicate,我就使用Navicate对本地数据库进行连接,验证是否能连接成功

在这里插入图片描述
打开Nvicate点击Connection,选择MySQL

在这里插入图片描述
填入数据库名,输入密码连接就可以了
在这里插入图片描述
连接上之后可以创建一个数据库Test

在这里插入图片描述
然后我们在数据库Test里面创建表,之后就可以使用C# 连接到本地的数据库,对表Test进行操作了。

3. C# 连接本地MySQL

我们本地创建一个控制台命令程序Demo,然后完整代码如下

// 定义连接字符串。这里Test是我们创建的数据库表;Uid是一个表字段;输入数据库的密码即可
string connectStr = "Server=127.0.0.1;Database=Test.Uid=root;Password=xxx;";

// 创建链接对象
MySqlConnection connection = new MySqlConnection(connectStr);
if (connection != null) 
{ 
   
    Console.WriteLine("数据库连接成功");
}
else
{ 
   
    Console.WriteLine("数据库连接失败");
    return;
}

// 打开连接
connection.Open();

// 拼写SQL语句
StringBuilder sqlB = new StringBuilder();
sqlB.AppendLine("SELECT ");
sqlB.AppendLine(" stuID ");
sqlB.AppendLine(" , name ");
sqlB.AppendLine("FROM studen ");
sqlB.AppendLine("; ");

// 创建执行Sql的对象
MySqlCommand command = new MySqlCommand(sqlB.ToString(), connection);

// 执行Sql
MySqlDataReader reader = command.ExecuteReader();

// 遍历数据
while(reader.Read())
{ 
   
    Console.WriteLine("{0}\t{1}", reader["stuID"], reader["name"]);
}

上面的代码我们使用了 StringBuilder 来拼写Sql语句,使用MySqlConnectionMySqlCommand 等类进行数据库的操作

StringBuilder 是 System.Text 这个库里,我们需要Using这个库

MySqlConnection 和 MySqlCommand 是MySQL的一个库,MySql.Data,我们需要将 MySql.Data.MySqlClient 引入项目里

.net6 首选我们将库Using进来,在 .csproj 文件中添加 ItemGroup

<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
    <OutputType>Exe</OutputType>
    <TargetFramework>net6.0</TargetFramework>
    <ImplicitUsings>enable</ImplicitUsings>
    <Nullable>enable</Nullable>
  </PropertyGroup>

  <ItemGroup>
    <Using Include="MySql.Data.MySqlClient" />
    <Using Include="System.Text" />
  </ItemGroup>

  <ItemGroup>
    <PackageReference Include="MySql.Data" Version="8.0.28" />
  </ItemGroup>

</Project>

在这里插入图片描述
因为我创建的是控制台应用程序,所以直接在终端中使用如下命令导入库

dotnet add package MySql.Data
Demo dotnet add package MySql.Data
  正在确定要还原的项目…
  Writing /var/folders/k1/96lj0hk91js5fh5lhxnl7s740000gn/T/tmpn7jejh.tmp
info : 正在将包“MySql.Data”的 PackageReference 添加到项目“/Users/morris/Desktop/Demo/Demo.csproj”。
info :   CACHE https://api.nuget.org/v3/registration5-gz-semver2/mysql.data/index.json
info : 正在还原 /Users/morris/Desktop/Demo/Demo.csproj 的包...
info :   GET https://api.nuget.org/v3-flatcontainer/mysql.data/index.json
info :   OK https://api.nuget.org/v3-flatcontainer/mysql.data/index.json 217 毫秒
info :   GET https://api.nuget.org/v3-flatcontainer/mysql.data/8.0.28/mysql.data.8.0.28.nupkg
info :   OK https://api.nuget.org/v3-flatcontainer/mysql.data/8.0.28/mysql.data.8.0.28.nupkg 108 毫秒
info :   GET https://api.nuget.org/v3-flatcontainer/k4os.compression.lz4.streams/index.json
info :   OK https://api.nuget.org/v3-flatcontainer/k4os.compression.lz4.streams/index.json 196 毫秒
info :   GET https://api.nuget.org/v3-flatcontainer/k4os.compression.lz4.streams/1.2.6/k4os.compression.lz4.streams.1.2.6.nupkg
info :   OK https://api.nuget.org/v3-flatcontainer/k4os.compression.lz4.streams/1.2.6/k4os.compression.lz4.streams.1.2.6.nupkg 92 毫秒
info :   GET https://api.nuget.org/v3-flatcontainer/k4os.compression.lz4/index.json
info :   OK https://api.nuget.org/v3-flatcontainer/k4os.compression.lz4/index.json 233 毫秒
info :   GET https://api.nuget.org/v3-flatcontainer/k4os.compression.lz4/1.2.6/k4os.compression.lz4.1.2.6.nupkg
info :   OK https://api.nuget.org/v3-flatcontainer/k4os.compression.lz4/1.2.6/k4os.compression.lz4.1.2.6.nupkg 93 毫秒
info : 已通过内容哈希 4EN8EE6bZG2U8dFfeqn+Om3UNajK3cPYHvyQROCFm4jNFVLuRB7Nl5bDkjBSAjfctS6konm+ay3u5RafBzltDA== 从 https://api.nuget.org/v3/index.json 安装 K4os.Compression.LZ4 1.2.6 。
info : 已通过内容哈希 5KMcNFRHeRrnJ9c8k5fZcfAJJEY0FndMiDiHIYa35Mx5KCMkeSNo/PEXu7YmtCoVczJagx+Vt7J/F+//S1PcJQ== 从 https://api.nuget.org/v3/index.json 安装 K4os.Compression.LZ4.Streams 1.2.6 。
info : 已通过内容哈希 7b699tU9ba0r7SBK7K9snGJB9ulnOdwEXG28kpVvaQSN0hHenfoJ/ADOtdfhcvcn1KStBX8pFK5qIl8scdBL2g== 从 https://api.nuget.org/v3/index.json 安装 MySql.Data 8.0.28 。
info : 包“MySql.Data”与项目“/Users/morris/Desktop/Demo/Demo.csproj”中指定的所有框架均兼容。
info : 包“MySql.Data”(版本为 8.0.28)的 PackageReference 已添加到文件“/Users/morris/Desktop/Demo/Demo.csproj”。
info : 将资产文件写入磁盘。路径: /Users/morris/Desktop/Demo/obj/project.assets.json
log  : 已还原 /Users/morris/Desktop/Demo/Demo.csproj (用时 3.6 sec)

这个框架就会被下载引用到项目中了

最后执行 dotnet run , 数据库连接成功!

在这里插入图片描述

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/138255.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • sql server索引功能资料

    无论何时对基础数据执行插入、更新或删除操作,SQLServer数据库引擎都会自动维护索引。随着时间的推移,这些修改可能会导致索引中的信息分散在数据库中(含有碎片)。当索引包含的页中的逻辑排序(基于

    2021年12月23日
    46
  • 如何编写一个Makefile文件(手把手的教你)

    如何编写一个Makefile文件(手把手的教你)目录一、概念理解1、什么是Makefile?2、为何使用Makefile?二、实战代码演示与讲解1没有makefile的项目是怎么创建运行的1.1创建文件1.2查看创建的文件1.3给创建的文件放一点内容1.4编译运行2、有makefile的项目如何创建运行2.1删掉自动生成的a.out文件2.2创建makefile2.3执行makefile文件2.4查看目录并运行可执行文件三、代码优化3.1添加clean信息3.2简化makefile信息3.2.1简化第一版3.2.2简化第二版3.

    2022年5月28日
    46
  • 世界性能服务器图片欣赏,AMD发布全球最强服务器显卡-AMD,全球最强,服务器显卡,FirePro,S9000,S7000,虚拟机 ——快科技(驱动之家旗下媒体)–科技改变未来…[通俗易懂]

    FireStream虽然死了,但是AMD并没有放弃在高性能计算领域的努力,只不过由FirePro继承了它的遗志。今天,AMD就发布了号称全球最强悍的服务器显卡“FireProS9000”、“FireProS7000”,面向数据中心里的高性能计算、虚拟桌面基础设施(VDI)、工作站图形等领域,都支持微软RemoteFX、VMwareESXInfoCenter、CitrixXenServer…

    2022年4月11日
    139
  • stm32 sd卡读写_sd卡引脚定义图

    stm32 sd卡读写_sd卡引脚定义图SD卡   SD卡(SecureDigitalMemoryCard)即:安全数码卡,它是在MMC的基础上发展而来,是一种基于半导体快闪记忆器的新一代记忆设备,它被广泛地于便携式装置上使用,例如数码相机、个人数码助理(PDA)和多媒体播放器等。SD卡由日本松下、东芝及美国SanDisk公司于1999年8月共同开发研制。   SD卡按容量分类,可以分为3类:SD卡、SDHC卡、SDXC…

    2022年10月3日
    3
  • 568A线序是什么_水晶头a类线序

    568A线序是什么_水晶头a类线序什么情况下会用上568A线序1985年初,计算机工业协会(CCIA)提出对大楼布线系统标准化的倡仪,美国电子工业协会(EIA)和美国电信工业协会(TIA)开始标准化制定工作。1991年7月,ANSI/EIA/TIA568即《商业大楼电信布线标准》问世。1995年底,EIA/TIA568标准正式更新为EIA/TIA/568AEIA/TIA的布线标准中规定了两种双绞线的线序568A与568B。标准568A:绿白-1,绿-2,橙白-3,蓝-4,蓝白-5,橙-6,褐白-7

    2025年6月26日
    3
  • vue父子组件传值方法_vue父组件向子组件传递对象

    vue父子组件传值方法_vue父组件向子组件传递对象前言在业务场景中经常会遇到子组件向父组件传递数值,或是父组件向子组件传递数值,下面将结合vue富文本框一起来了解一下父与子组件之间的传值业务场景在vue项目中创建了一个可以重复使用的富文本编辑器(可参考【vue】vue富文本编辑器(可重复使用组件)vue-quill-editor),由于是新闻编辑页面,首先需要把已经保存好的新闻内容展示在富文本编辑器中(父组件向子组件传值),其次需要把更新后的新闻内容保存到数据库中(子组件向父组件传值)父组件向子组件传值(v-bind:child.

    2025年9月14日
    6

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号