CUBRID学习笔记 37 ADO.NET Schema Provider

通常需要添加以下引用:

 

 
1
2
3
using System.Data;
using System.Data.Common;
using CUBRID.Data.CUBRIDClient;

 

定义连接字符串:

 

 
1
2
/* conection string, please modify before using. */
string _connString = "server=localhost;database=demodb;port=33000;user=public;password=";

 

用 CUBRIDConnectionStringBuilder生成连接字符串 这个我比较喜欢:

 
1
2
3
4
5
6
7
8
string server = "localhost";
int port = 33000;
string database = "demodb";
string user = "public";
string password = "";
string encoding = "utf-8";
CUBRIDConnectionStringBuilder sb = new CUBRIDConnectionStringBuilder(server, port, database, user, password, encoding);
string _connString = sb.GetConnectionString();

获取用户表:

 

 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
/* create a new CUBRIDConnection instance */
using (CUBRIDConnection conn = new CUBRIDConnection())
{
    try
    {
        /* set the connection string */
        conn.ConnectionString = _connString;
        /* connect to db server */
        conn.Open();
  
        /* create a new CUBRIDSchemaProvider instance */
        CUBRIDSchemaProvider schema = new CUBRIDSchemaProvider(conn);
        /* get all tables */
        DataTable dt = schema.GetTables(new string[] { "%" });
  
        /* print all tables */
        for (int i = 0; i < dt.Rows.Count; i++)
            Console.WriteLine(dt.Rowsi2.ToString());
    }
    catch (Exception exp)
    {
        Console.WriteLine(exp.Message);
    }
}

 

获取所有用户:

 

 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
/* create a new CUBRIDConnection instance */
using (CUBRIDConnection conn = new CUBRIDConnection())
{
    try
    {
        /* set the connection string */
        conn.ConnectionString = _connString;
        /* connect to db server */
        conn.Open();
 
        /* create a new CUBRIDSchemaProvider instance */
        CUBRIDSchemaProvider schema = new CUBRIDSchemaProvider(conn);
        /* get all users */
        DataTable dt = schema.GetUsers(null);
 
        /* print all users */
        for (int i = 0; i < dt.Rows.Count; i++)
            Console.WriteLine(dt.Rowsi0.ToString().ToUpper());
    }
    catch (Exception exp)
    {
        Console.WriteLine(exp.Message);
    }
}

 

获取所有视图: 

 

 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
/* create a new CUBRIDConnection instance */
using (CUBRIDConnection conn = new CUBRIDConnection())
{
    try
    {
        /* set the connection string */
        conn.ConnectionString = _connString;
        /* connect to db server */
        conn.Open();
 
        /* create a new CUBRIDSchemaProvider instance */
        CUBRIDSchemaProvider schema = new CUBRIDSchemaProvider(conn);
        /* get all tables */
        DataTable dt = schema.GetViews(new string[] { "%" });
 
        /* print all tables */
        for (int i = 0; i < dt.Rows.Count; i++)
            Console.WriteLine(dt.Rowsi2.ToString());
    }
    catch (Exception exp)
    {
        Console.WriteLine(exp.Message);
    }
}
posted @   过错  阅读(177)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示