Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

add doc of c#-connect and update create-instance link #301

Merged
merged 3 commits into from
Apr 24, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
134 changes: 134 additions & 0 deletions docs/MatrixOne-Cloud/App-Develop/Tutorial/c-net-crud-demo.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,134 @@
# C# 基础示例

本篇文档将指导你如何使用 C# 构建一个简单的应用程序,并实现 CRUD(创建、读取、更新、删除)功能。

## 开始前准备

- 已完成[创建实例](../../Instance-Mgmt/create-instance/create-serverless-instance.md)

- 已安装[. NET Core SDK](https://dotnet.microsoft.com/zh-cn/download)

- 已安装 [MySQL Client](https://dev.mysql.com/downloads/installer/)

## 步骤

### 步骤一:创建 C# 应用

使用 dotnet 命令创建一个应用。例如,创建一个名为 myapp 的新应用:

```
dotnet new console -o myapp
```

随后切换到 myapp 目录下

### 步骤二:添加 MySQL Connector/NET NuGet 包

使用 NuGet 包管理器安装 MySql.Data 包:

```
dotnet add package MySql.Data
```

### 步骤三:连接 MOC 实例 进行操作

编写代码连接 MOC 实例,建立一个学生表并进行增删改查操作。在 Program.cs 文件中写入以下代码:

```
using System;
using MySql.Data.MySqlClient;

class Program
{

static void ExecuteSQL(MySqlConnection connection, string query)
{
using (MySqlCommand command = new MySqlCommand(query, connection))
{
command.ExecuteNonQuery();
}
}
static void Main(string[] args)
{
Program n =new Program();
string connectionString = "server=freetier-01.cn-hangzhou.cluster.matrixonecloud.cn;user=585b49fc_852b_4bd1_b6d1_d64bc1d8xxxx:admin:accountadmin;database=test;port=6001;password=xxx";
using (MySqlConnection connection = new MySqlConnection(connectionString))
{
try{
connection.Open();
Console.WriteLine("已经建立连接");
// 建表
ExecuteSQL(connection,"CREATE TABLE IF NOT EXISTS Student (id INT auto_increment PRIMARY KEY, name VARCHAR(255),age int,remark VARCHAR(255) )");
Console.WriteLine("建表成功!");
//插入数据
ExecuteSQL(connection,"INSERT INTO Student(name,age) VALUES ('张三',22),('李四',25),('赵五',30)");
Console.WriteLine("成功插入数据!");
//更新数据
ExecuteSQL(connection,"UPDATE Student SET remark = 'Updated' WHERE id = 1");
Console.WriteLine("成功更新数据!");
//删除数据
ExecuteSQL(connection,"DELETE FROM Student WHERE id = 2");
Console.WriteLine("成功删除数据!");
//查询数据
MySqlCommand command = new MySqlCommand("SELECT * FROM Student", connection);
using (MySqlDataReader reader = command.ExecuteReader())
{
while (reader.Read())
{
Console.WriteLine($"姓名: {reader["name"]}, 年龄: {reader["age"]},备注: {reader["remark"]}");
}
}
Console.WriteLine("数据查询成功!");
}
catch (MySqlException ex)
{
Console.WriteLine(ex.Message);

}
finally
{
Console.WriteLine("准备断开连接");
connection.Close();
Console.WriteLine("断开连接成功!");
}

//connection.Close();
}
}
}
```

### 步骤四:运行程序

在终端执行命令 `dotnet run`:

```
(base) admin@admindeMacBook-Pro myapp % dotnet run
已经建立连接
建表成功!
成功插入数据!
成功更新数据!
成功删除数据!
姓名: 赵五, 年龄: 30,备注:
姓名: 张三, 年龄: 22,备注: Updated
数据查询成功!
准备断开连接
断开连接成功!
```

### 步骤五:检查数据

使用 Mysql 客户端连接 Moc 实例 对 Student 表进行查询:

```
mysql> select * from student;
+------+--------+------+---------+
| id | name | age | remark |
+------+--------+------+---------+
| 3 | 赵五 | 30 | NULL |
| 1 | 张三 | 22 | Updated |
+------+--------+------+---------+
2 rows in set (0.00 sec)
```

可以看到,数据返回正确。
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@

* 确认你已完成安装 MySQL 客户端。

* 已完成[创建实例](../../Instance-Mgmt/create-instance.md),并通过 MySQL 客户端连接 MatrixOne Cloud 并创建一个命名为 *test* 的数据库:
* 已完成[创建实例](../../Instance-Mgmt/create-instance/create-serverless-instance.md),并通过 MySQL 客户端连接 MatrixOne Cloud 并创建一个命名为 *test* 的数据库:

```sql
mysql> create database test;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@

在开始之前,请确保已经下载并安装了以下软件。

* 已完成[创建实例](../../Instance-Mgmt/create-instance.md),通过 MySQL 客户端创建数据库。
* 已完成[创建实例](../../Instance-Mgmt/create-instance/create-serverless-instance.md),通过 MySQL 客户端创建数据库。

```mysql
mysql> create database test;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@

在你开始之前,确认你已经下载并安装了如下软件:

- 已完成[创建实例](../../Instance-Mgmt/create-instance.md)。
- 已完成[创建实例](../../Instance-Mgmt/create-instance/create-serverless-instance.md)。

- 确认你已完成安装 [Python 3.8(or plus)](https://www.python.org/downloads/)。

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@

* 确认你已完成安装 MySQL 客户端。

* 已完成[创建实例](../../Instance-Mgmt/create-instance.md),并通过 MySQL 客户端连接 MatrixOne Cloud 并创建一个命名为 *test* 的数据库:
* 已完成[创建实例](../../Instance-Mgmt/create-instance/create-serverless-instance.md),并通过 MySQL 客户端连接 MatrixOne Cloud 并创建一个命名为 *test* 的数据库:

```sql
mysql> create database test;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@

### 1. 安装构建 MatrixOne

1. [创建实例](../../Instance-Mgmt/create-instance.md)。
1. [创建实例](../../Instance-Mgmt/create-instance/create-serverless-instance.md)。

2. 在 MySQL 客户端新建一个命名为 `test` 数据库。

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@

### 1. 安装构建 MatrixOne

1. [创建实例](../../Instance-Mgmt/create-instance.md)。
1. [创建实例](../../Instance-Mgmt/create-instance/create-serverless-instance.md)。

2. 在 MySQL 客户端新建一个命名为 `test` 数据库。

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@

在你开始之前,确认你已经下载并安装了如下软件:

1. [创建实例](../../Instance-Mgmt/create-instance.md)。
1. [创建实例](../../Instance-Mgmt/create-instance/create-serverless-instance.md)。

2. 通过 MySQL 客户端连接 MatrixOne 并创建一个命名为 *test* 的数据库:

Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
# C# 连接

MatrixOne Cloud 支持 C# 连接,并且支持 MySQL Connector/NET 驱动。

本篇文档将指导你了解如何使用 C# 连接 MatrixOne Cloud。

## 开始前准备

- 已完成[创建实例](../../Instance-Mgmt/create-instance/create-serverless-instance.md)

- 已安装[. NET Core SDK](https://dotnet.microsoft.com/zh-cn/download)

- 已安装 [MySQL Client](https://dev.mysql.com/downloads/installer/)

## 使用 C# 连接 MOC 实例

### 步骤一:创建 C# 应用

使用 dotnet 命令创建一个新的控制台应用。例如,创建一个名为 myapp 的新应用:

```
dotnet new console -o myapp
```

随后切换到 myapp 目录下

### 步骤二:添加 MySQL Connector/NET NuGet 包

使用 NuGet 包管理器安装 MySql.Data 包:

```
dotnet add package MySql.Data
```

### 步骤三:连接 MOC 实例

在 Program.cs 文件中写入以下代码:

```
using System;
using MySql.Data.MySqlClient;

class Program
{
static void Main(string[] args)
{
Program n =new Program();
string connectionString = "server=freetier-01.cn-hangzhou.cluster.matrixonecloud.cn;user=585b49fc_852b_4bd1_b6d1_d64bc1d8xxxx:admin:accountadmin;database=test;port=6001;password=xxx";
using (MySqlConnection connection = new MySqlConnection(connectionString))
{
try{
connection.Open();
Console.WriteLine("成功建立连接");
}
catch (MySqlException ex)
{
Console.WriteLine(ex.Message);
}
finally
{
connection.Close();
}
}
}
}
```

### 步骤四:运行程序

在终端执行命令 `dotnet run`:

```
(base) admin@admindeMacBook-Pro myapp % dotnet run
成功建立连接
```

## 参考文档

关于使用 C# 通过 MatrixOne 构建一个简单的 CRUD 的示例,参见 [C# 基础示例](../Tutorial/c-net-crud-demo.md)。
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ MatrixOne Cloud 支持 Golang 连接,并且支持 [Go-MySQL-Driver](https://gi

- 已安装 [MySQL 客户端](https://dev.mysql.com/downloads/mysql),如果你没有安装,可以点击 [MySQL 客户端](https://dev.mysql.com/downloads/mysql)至官方网站进行下载安装。

- 已完成[创建实例](../../Instance-Mgmt/create-instance.md)。
- 已完成[创建实例](../../Instance-Mgmt/create-instance/create-serverless-instance.md)。

- 已安装 [Golang 1.18 版本及以上](https://go.dev/dl/),如果你没有安装,可以点击 [Golang 1.18 版本及以上](https://go.dev/dl/)至官方网站进行下载安装;如果你已安装,可以使用下面的命令行检查版本:

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ MatrixOne 现在支持通过以下几种数据库客户端工具的方式连接

## 前期准备

- 已完成[创建实例](../../Instance-Mgmt/create-instance.md)。
- 已完成[创建实例](../../Instance-Mgmt/create-instance/create-serverless-instance.md)。
- 已经[获取 MatrixOne Cloud 实例的连接命令](../../Instance-Mgmt/create-instance.md#_10)。
- 默认为公网连接,若想使用私网连接请参考章节[私网连接]( ../../Security/private-link.md)完成配置。

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@

使用 JDBC 连接 MatrixOne 前,需要完成以下下载安装任务:

1. 已完成[创建实例](../../../Instance-Mgmt/create-instance.md)。
1. 已完成[创建实例](../../../Instance-Mgmt/create-instance/create-serverless-instance.md)。
2. 下载安装 [JDK 8+ version](https://www.oracle.com/sg/java/technologies/javase/javase8-archive-downloads.html)。
3. 下载安装 [MySQL 客户端](https://dev.mysql.com/downloads/mysql/)。
4. 下载安装 JAVA IDE,本篇文档以 [IntelliJ IDEA](https://www.jetbrains.com/idea/) 为例,你也可以下载其他 IDE 工具。
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ MatrixOne Cloud 支持 Python 连接,支持 `pymysql` 和 `sqlalchemy` 两种

## 开始前准备

- 已完成[创建实例](../../Instance-Mgmt/create-instance.md)。
- 已完成[创建实例](../../Instance-Mgmt/create-instance/create-serverless-instance.md)。

- 已安装 [Python 3.8(or plus) version](https://www.python.org/downloads/)。

Expand Down
4 changes: 2 additions & 2 deletions docs/MatrixOne-Cloud/App-Develop/import-data/stream-load.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ INTO TABLE tbl_name;

你可以使用 `LOAD DATA INLINE` 将流式数据导入 MatrixOne Cloud,本章将介绍如何进行流式导入,并且给出导入 *csv* 数据的示例。

1. [创建 MatrixOne Cloud 实例](../../Instance-Mgmt/create-instance.md)。
1. [创建 MatrixOne Cloud 实例](../../Instance-Mgmt/create-instance/create-serverless-instance.md)。

2. [通过 MySQL Client 连接 MatrixOne Cloud 服务](../connect-mo/database-client-tools.md#mysql-client-matrixone-cloud)。

Expand Down Expand Up @@ -65,7 +65,7 @@ INTO TABLE tbl_name;

PyMySQL 是一个纯 Python MySQL 客户端库,下面将指导你如何使用 PyMySQL 进行 `LOAD DATA INLINE` 操作。

1. [创建 MatrixOne Cloud 实例](../../Instance-Mgmt/create-instance.md)。
1. [创建 MatrixOne Cloud 实例](../../Instance-Mgmt/create-instance/create-serverless-instance.md)。

2. [通过 MySQL Client 连接 MatrixOne Cloud 服务](../connect-mo/database-client-tools.md#mysql-client-matrixone-cloud)

Expand Down
2 changes: 1 addition & 1 deletion docs/MatrixOne-Cloud/App-Develop/read-data/cte.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ SELECT ... FROM <query_name>;

你需要确认在开始之前,已经完成了以下任务:

- 已完成[创建实例](../../Instance-Mgmt/create-instance.md)。
- 已完成[创建实例](../../Instance-Mgmt/create-instance/create-serverless-instance.md)。

## CTE 语句使用示例

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@

你需要确认在开始之前,已经完成了以下任务:

- 已完成[创建实例](../../Instance-Mgmt/create-instance.md)。
- 已完成[创建实例](../../Instance-Mgmt/create-instance/create-serverless-instance.md)。

### 数据准备

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@

你需要确认在开始之前,已经完成了以下任务:

- 已完成[创建实例](../../Instance-Mgmt/create-instance.md)。
- 已完成[创建实例](../../Instance-Mgmt/create-instance/create-serverless-instance.md)。

### 数据准备

Expand Down
2 changes: 1 addition & 1 deletion docs/MatrixOne-Cloud/App-Develop/read-data/subquery.md
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@

你需要确认在开始之前,已经完成了以下任务:

- 已完成[创建实例](../../Instance-Mgmt/create-instance.md)。
- 已完成[创建实例](../../Instance-Mgmt/create-instance/create-serverless-instance.md)。

### 数据准备

Expand Down
2 changes: 1 addition & 1 deletion docs/MatrixOne-Cloud/App-Develop/read-data/views.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@

你需要确认在开始之前,已经完成了以下任务:

- 已完成[创建实例](../../Instance-Mgmt/create-instance.md)。
- 已完成[创建实例](../../Instance-Mgmt/create-instance/create-serverless-instance.md)。

### 数据准备

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@

在阅读本页面之前,你需要准备以下事项:

- 已完成[创建实例](../../Instance-Mgmt/create-instance.md)。
- 已完成[创建实例](../../Instance-Mgmt/create-instance/create-serverless-instance.md)。
- 了解什么是[数据库模式](overview.md)。

## 什么是数据库
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@

在阅读本页面之前,你需要准备以下事项:

- 已完成[创建实例](../../Instance-Mgmt/create-instance.md)。
- 已完成[创建实例](../../Instance-Mgmt/create-instance/create-serverless-instance.md)。
- 了解什么是[数据库模式](overview.md)。

## 使用次级索引
Expand Down
Loading