GVKun编程网logo

java\ADO.NET

2

本文将带您了解关于java\ADO.NET的新内容,另外,我们还将为您提供关于.NETCore开发日志——ADO.NET与SQLServer、.NETCore、.NETStandard、ASP.NET

本文将带您了解关于java\ADO.NET的新内容,另外,我们还将为您提供关于.NET Core 开发日志 ——ADO.NET 与 SQL Server、.NET Core、.NET Standard 、ASP.NET Core 和 .NET Framework 有什么不同?、.NET EF 链接 mysql MySql.Data.MySqlClient” 的 ADO.NET 提供程序未在计算机或应用程序配置文件中注册或无法加载 解决、.NET MVC5 之 ADO.NET的实用信息。

本文目录一览:

java\ADO.NET

java\ADO.NET

@梅公子 你好,想跟你请教个问题:

谢谢你的回复,不好意思,我的问题问的不好,请见谅。

以下是在visual C#的工作环境下运用ADO.NET连接OLE DB和OLEDB数据源的方法,我想问的是能不能用java来实现?

4、双击“登录”按钮,进入按钮事件编写界面,在该界面书写如下代码操作:
(1)在窗体顶部导入SqlClient命名空间: using System.Data.SqlClient;(2)在“登录”按钮事件中完成如下代码操作
private void button1_Click(object sender, EventArgs e)
{
try
{
string connectionstring;
if (radioButton1.Checked)
{
connectionstring = "integrated security=true;initial catalog=student;server=WZH";}
else
{
connectionstring = "integrated security=false;initial catalog=student;server=WZH;" + "user id=" + textBox1.Text + ";password=" + textBox2.Text;
}
SqlConnection conn = new SqlConnection(connectionstring);
conn.Open();

if (conn.State == ConnectionState.Open)
{ MessageBox.Show("恭喜您,登录成功!"); }
}
catch(Exception ex)
{MessageBox.Show(ex.Message);} 
}
(3)在“取消”按钮事件中完成如下代码操作
private void button2_Click(object sender, EventArgs e)
{ this.Close(); }
5、导入命名空间ODBC和OLEDB命名空间,分别测试ODBC和OLEDB两种连接方式。
(1)导入命名空间
using System.Data.Odbc;
using System.Data.OleDb;
(2)修改连接字符串语句:
connectionstring = "Driver={SQL Server};integrated security=true;” +
“initial catalog=student;server=WZH";
connectionstring = "Provider=SQLOLEDB.1;integrated security=sspi;”+
“initial catalog=student;server=WZH";
(3)修改连接对象Connection:
OdbcConnection conn = new OdbcConnection(connectionstring);
OleDbConnection conn = new OleDbConnection(connectionstring);
(4)执行程序,测试连接。

.NET Core 开发日志 ——ADO.NET 与 SQL Server

.NET Core 开发日志 ——ADO.NET 与 SQL Server

在.NET 世界,如果想要对数据库进行操作,总少不了 ADO.NET 的身影。在.NET Core 里同样离不开那些熟悉的类库与 API。这里简略地介绍下如何通过 ADO.NET 对 SQL Server 进行不同的处理。

System.Data.SqlClient

第一步先在项目工程中查看有无 System.Data.SqlClient 引用,如果没有的话,可以用以下三种方式安装:

  • Visual Studio 上的可视化 Nuget 包管理工具 (Manage NuGet Packages),找到相应类库,点击安装按钮
  • 同样是 Visual Studio 上的包管理控制台 (Package Manager Console) 输入命令,Install-Package System.Data.SqlClient
  • 命令行界面 (CLI) 中使用命令,dotnet add package System.Data.SqlClient

查询

可以使用最基础的 ExecuteReader 方法:

using (var conn = new SqlConnection("Server=.;Integrated Security=true"))
{
    conn.Open();
    using (var cmd = new SqlCommand("select top 10 * from [AdventureWorks2016CTP3].[Person].[Person]", conn))
    {
        using (var reader = cmd.ExecuteReader())
        {
            while (reader.Read())
            {
                Console.WriteLine(reader["FirstName"]);
            }
        }
    }
}

在.NET Core 2.0 以后还可以使用 SqlDataAdapter 与 DataSet,看得出微软在向后兼容方面做了不少工作:

using (var conn = new SqlConnection("Server=.;Integrated Security=true"))
{
    var adapter = new SqlDataAdapter("select top 10 * from [AdventureWorks2016CTP3].[Person].[Person]", conn);
    var dataset = new DataSet();
    adapter.Fill(dataset);
    var dt = dataset.Tables[0];
    foreach (var item in dt.Rows)
    {
        var row = item as DataRow;
        Console.WriteLine(row["FirstName"]);
    }
}

插入

using (var conn = new SqlConnection("Server=.;Integrated Security=true"))
{
    conn.Open();
    using (var cmd = new SqlCommand("insert into [AdventureWorks2016CTP3].[Person].[AddressType] (Name) values(@Name)", conn))
    {
        cmd.Parameters.AddWithValue("@Name", "Test");
        cmd.ExecuteNonQuery();
    }
}

更新

using (var conn = new SqlConnection("Server=.;Integrated Security=true"))
{
    conn.Open();
    using (var cmd = new SqlCommand("update [AdventureWorks2016CTP3].[Person].[AddressType] set name = @Name where name = @Criterion", conn))
    {
        cmd.Parameters.AddWithValue("@Name", "Test2");
        cmd.Parameters.AddWithValue("@Criterion", "Test");
        cmd.ExecuteNonQuery();
    }
}

删除

using (var conn = new SqlConnection("Server=.;Integrated Security=true"))
{
    conn.Open();
    using (var cmd = new SqlCommand("delete [AdventureWorks2016CTP3].[Person].[AddressType] where name = @Name", conn))
    {
        cmd.Parameters.AddWithValue("@Name", "Test2");
        cmd.ExecuteNonQuery();
    }
}

存储过程

using (var conn = new SqlConnection("Server=.;Integrated Security=true"))
{
    conn.Open();
    using (var cmd = new SqlCommand("[AdventureWorks2016CTP3].[dbo].[uspGetEmployeeManagers]", conn))
    {
        cmd.CommandType = CommandType.StoredProcedure;
        cmd.Parameters.AddWithValue("@BusinessEntityID", 10);
        using (var reader = cmd.ExecuteReader())
        {
            while (reader.Read())
            {
                Console.WriteLine(reader["FirstName"]);
            }
        }
    }
}

视图

使用上与普通的数据表没有差别。

using (var conn = new SqlConnection("Server=.;Integrated Security=true"))
{
    conn.Open();
    using (var cmd = new SqlCommand("select top 10 * from [AdventureWorks2016CTP3].[HumanResources].[vEmployee]", conn))
    {
        using (var reader = cmd.ExecuteReader())
        {
            while (reader.Read())
            {
                Console.WriteLine(reader["FirstName"]);
            }
        }
    }
}

以上代码例子里的数据库使用的是 AdventureWorks Databases and Scripts for SQL Server 2016 CTP3

.NET Core、.NET Standard 、ASP.NET Core 和 .NET Framework 有什么不同?

.NET Core、.NET Standard 、ASP.NET Core 和 .NET Framework 有什么不同?

经查阅.Net Core相关资料:

  1. https://www.infoq.cn/article/2017%2F10%2Fdotnet-core-standard-difference
  2. https://blog.csdn.net/yiyelanxin/article/details/84439216

对.NET Core、.NET Standard 、ASP.NET Core 和 .NET Framework有了初步的了解:

 

.NET Core

  .NET Core是免费、跨平台的,是托管框架的开源实现。它支持 4 种类型的应用程序:控制台、ASP.NET Core、云和通用 Windows 平台(UWP)。Windows Forms和Windows Presentation Foundation(WPF)并不包含在.NET Core 中。

ASP.NET Core 

  Asp.net core其实就是仍然基于.net Full Framework(最低要求Framework 4.6.2)的项目, 但同时保留了.net core一些新的设置理念,比如Asp.net core默认使用Kestrel作为Http请求的监听器,而不是使用原来庞大的Https.sys。是以.NET Core 为基础构建的应用程序模型。

.NET Standard

  .NET Standard是一项实现 BCL 的规范。由于.NET 实现需要遵循这项规范,所以应用程序开发人员就不用担心每一种托管框架实现的 BCL 不同。托管框架的每一种实现都有一套自己的基类库。基类库(BCL)包含诸如异常处理、字符串、XML、I/O、网络和集合这样的类。

.NET Framework

  .NET Framework 用于构建桌面应用程序和运行在互联网信息服务器(IIS)上的 ASP.NET 应用程序。它是第一个托管框架。

Xamarin

  Xamarin 是一个用于构建 iOS、Android、macOS 和桌面应用程序的框架。

.NET EF 链接 mysql MySql.Data.MySqlClient” 的 ADO.NET 提供程序未在计算机或应用程序配置文件中注册或无法加载 解决

.NET EF 链接 mysql MySql.Data.MySqlClient” 的 ADO.NET 提供程序未在计算机或应用程序配置文件中注册或无法加载 解决

网上说 mysql-connector-net-8.0.11.msi 安装 那是正对于开发环境,服务端我往往没有操作环境的权限.

在 EF6 中

首先确认项目是否添加

MySql.Data

System.Data.Entity

使用 NuGet 卸载重装.

如果还不能解决

检查 web.config 

<entityFramework> 
<providers> <provider invariantName="MySql.Data.MySqlClient" type="MySql.Data.MySqlClient.MySqlProviderServices, MySql.Data.Entity.EF6, Version=6.10.8.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d">

</provider>
</providers>
</entityFramework>

在确认如下节点

<system.data>
<DbProviderFactories>
<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.10.8.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d"/>
</DbProviderFactories>
</system.data>

此致基本解决

.NET MVC5 之 ADO.NET

.NET MVC5 之 ADO.NET

OSC 请你来轰趴啦!1028 苏州源创会,一起寻宝 AI 时代

ADO.NET 提供堆数据库或外部数据源的数据访问接口。

数据访问方式:面向链接和面向无连接

面向链接:以 IDBConnection 接口为起点,Open () 打开,Close () 关闭。

数据库事务处理:BeginTransaction () 启动事务,得到 IDbTransaction 接口的对象。Rollback () 撤销,Commit () 完成,

SQL 指令:封装 IDbCommand 接口对象。ExecuteReader (),ExecuteNonQuery (),ExecuteSaclar ().

                ExecuteReader () 会传回 IDataReader 接口对象,而且是获取 IDataReader 接口对象的唯一方法。

                ExecuteNonQuery (),ExecuteSaclar () 里面都调用了 ExecuteReader () 方法。

                IDataReader 接口对象使用:Read () 调用一次,游标往前移动一行,传回一个 IDataRecord 接口对象。

                IDataRecord:GetValue () 获取字段值,GetOrdinal () 获取字段的索引编号,IsDBNull () 判断字段是否为 NULL

                IDataAdapter:面向无链接的对象,包含了 Fill () 以及 Update (). 包含了对数据的添加与更新。包含了:                                                      SelectComman,InsertCommand,UpdateCommand 与 DeleteCommand 指令。

面向无连接的操作:DataSet 和 DataTable

       DataSet:内存里的数据库,DataTable:内存里的数据表。一个 DataSet 可容纳多个 DataTable

      DataSet:IDbDataAdapter 接口对象的 Fill () 获得。Merge (): 合并两个数据集或数据行。

 泛型:一个类可以兼容不同的数据类型(值类型和引用类型)

 

        

今天关于java\ADO.NET的介绍到此结束,谢谢您的阅读,有关.NET Core 开发日志 ——ADO.NET 与 SQL Server、.NET Core、.NET Standard 、ASP.NET Core 和 .NET Framework 有什么不同?、.NET EF 链接 mysql MySql.Data.MySqlClient” 的 ADO.NET 提供程序未在计算机或应用程序配置文件中注册或无法加载 解决、.NET MVC5 之 ADO.NET等更多相关知识的信息可以在本站进行查询。

本文标签: