SQL 转 C#:从 DDL 脚本生成模型
下面不是示意图:这是生成器对左边脚本的真实输出。在编辑器里点「Codegen → C#」得到的就是同一份代码。
输入schema.sql
CREATE TABLE users (
id BIGINT NOT NULL PRIMARY KEY,
email VARCHAR(255) NOT NULL UNIQUE,
full_name VARCHAR(120),
is_active BOOLEAN NOT NULL,
created_at TIMESTAMP NOT NULL
);
CREATE TABLE orders (
id BIGINT NOT NULL PRIMARY KEY,
user_id BIGINT NOT NULL REFERENCES users(id),
total DECIMAL(12,2) NOT NULL,
note TEXT,
placed_at TIMESTAMP NOT NULL
);输出Models.cs
using System;
public sealed class Users
{
public long Id { get; set; }
public string Email { get; set; } = null!;
public string? FullName { get; set; }
public bool IsActive { get; set; }
public DateTime CreatedAt { get; set; }
}
public sealed class Orders
{
public long Id { get; set; }
public long UserId { get; set; } // → users.id
public decimal Total { get; set; }
public string? Note { get; set; }
public DateTime PlacedAt { get; set; }
}打开编辑器
脚本留在浏览器里:解析和生成都在您的机器上进行,不会上传到服务器。
类型如何对应
| 在 SQL 里 | 在模型里 |
|---|---|
BIGINT | long |
VARCHAR(255) | string |
BOOLEAN | bool |
TIMESTAMP | DateTime |
DECIMAL(12,2) | decimal |
TEXT | string? |
- 可空字段
string?- 列名
FullName- 关系
// → users.id