प्रौद्योगिकी साझेदारी

SqlSugar-बहु-दत्तांशकोशसञ्चालनार्थं SqlSugar इत्यस्य उपयोगं कुर्वन्तु

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

बहु-दत्तांशकोश-सञ्चालनानि कर्तुं SqlSugar-इत्यस्य उपयोगेन मुख्यतया निम्नलिखितपदार्थाः सम्मिलिताः सन्ति ।

1. दत्तांशकोशसंयोजनं विन्यस्यताम्

प्रथमं भवद्भिः स्वस्य परियोजनायां विन्याससञ्चिकां सेट् कर्तव्या (उदा.appsettings.jsonweb.configवाapp.config ) बहुविधदत्तांशकोशानां कृते संयोजनतारं विन्यस्यताम् । प्रत्येकं संयोजनतारं भिन्नदत्तांशकोशेन सह सङ्गच्छते ।

यथा इञ्appsettings.json, भवान् एतत् एवं विन्यस्तुं शक्नोति :

 

json复制代码

{
"ConnectionStrings": {
"DefaultConnectionSqlServer": "Server=myServerAddress;Database=myDataBase;User Id=myUsername;Password=myPassword;",
"DefaultConnectionMySql": "server=localhost;user=root;password=myPassword;database=myOtherDataBase;",
// 可以继续添加更多数据库的连接字符串
}
}

2. SqlSugarClient उदाहरणं रचयन्तु

प्रत्येकं दत्तांशकोशस्य कृते भवता कार्यं कर्तव्यं, भवता aSqlSugarClientinstance, तथा च तस्य निर्माणकाले तत्सम्बद्धे database connection configuration मध्ये pass ।

 

csharp复制代码

using SqlSugar;
// 创建SqlServer数据库的SqlSugarClient实例
var dbClientSqlServer = new SqlSugarClient(new ConnectionConfig()
{
ConnectionString = Configuration.GetConnectionString("DefaultConnectionSqlServer"), // 从配置文件获取连接字符串
DbType = DbType.SqlServer,
IsAutoCloseConnection = true,
// 其他配置...
});
// 创建MySql数据库的SqlSugarClient实例
var dbClientMySql = new SqlSugarClient(new ConnectionConfig()
{
ConnectionString = Configuration.GetConnectionString("DefaultConnectionMySql"), // 从配置文件获取连接字符串
DbType = DbType.MySql,
IsAutoCloseConnection = true,
// 其他配置...
});

3. दत्तांशकोशक्रियाः कुर्वन्तु

इदानीं भवन्तः एतानि उपयोक्तुं शक्नुवन्तिSqlSugarClient instance इति दत्तांशकोशक्रियाः कर्तुं । भवतः व्यावसायिक आवश्यकतानुसारं तत्सम्बद्धं दत्तांशकोशं चालयितुं तत्सम्बद्धं उदाहरणं चिनोतु ।

 

csharp复制代码

// 使用SqlServer数据库实例插入数据
var user = new User { Name = "张三", Age = 20 };
var id = dbClientSqlServer.Insertable(user).ExecuteReturnIdentity();
// 使用MySql数据库实例查询数据
var userList = dbClientMySql.Queryable<User>().ToList();

4. पार-दत्तांशकोश-सञ्चालनस्य सावधानताः

  • क्रॉस-डाटाबेस प्रश्न : SqlSugar स्वयं प्रत्यक्षतया क्रॉस्-डाटाबेस् संयुक्तप्रश्नानां (JOIN) समर्थनं न करोति । यदि भवान् भिन्न-भिन्न-दत्तांशकोशानां मध्ये संघीय-प्रश्नानि कर्तुं प्रवृत्तः अस्ति, तर्हि भवान् अनुप्रयोग-स्तरस्य दत्तांशं विलीनं कर्तुं शक्नोति, अथवा दत्तांशकोश-स्तरीय-समाधानस्य (यथा SQL Server इत्यस्य लिङ्क्ड्-सर्वर्) उपयोगं कर्तुं विचारयितुं शक्नोति
  • व्यवहारप्रक्रियाकरणम् : अनेकदत्तांशकोषेषु दत्तांशसङ्गतिः आवश्यकी भवति तेषां कार्याणां कृते, भवान् वितरितव्यवहारस्य उपयोगं कर्तुम् इच्छति । SqlSugar स्वयं प्रत्यक्षतया वितरितं व्यवहारसमर्थनं न प्रदाति, परन्तु भवान् .NET इत्यस्य उपयोगं कर्तुं शक्नोतिSystem.Transactions वितरितव्यवहारस्य प्रबन्धनार्थं नामस्थाने वर्गाः । तथापि वितरितव्यवहारस्य कार्यप्रदर्शनस्य जटिलतायाः च विषये अवगताः भवन्तु ।
  • कार्यप्रदर्शनविचाराः : बहु-दत्तांशकोशक्रियाः कुर्वन् प्रत्येकस्य दत्तांशकोशस्य कार्यक्षमतां भारं च विचारयन्तु । एकस्मिन् समये बहुषु दत्तांशकोषेषु बहुमात्रायां समवर्तीकार्यं परिहरन्तु, येन कार्यप्रदर्शनस्य समस्याः उत्पद्यन्ते ।

5. सारांशः

बहु-दत्तांशकोश-सञ्चालनानां कृते SqlSugar इत्यस्य उपयोगे मुख्यतया बहु-दत्तांशकोश-संयोजनानि विन्यस्तं बहु-निर्माणं च भवतिSqlSugarClient उदाहरणं, तथा च व्यावसायिकआवश्यकतानां आधारेण दत्तांशकोशसञ्चालनं कर्तुं तत्सम्बद्धं उदाहरणं चिनोतु । ज्ञातव्यं यत् पार-दत्तांशकोश-प्रश्नानां वितरित-व्यवहार-प्रक्रियाकरणस्य च अतिरिक्त-विचारानाम्, विन्यासानां च आवश्यकता भवितुम् अर्हति । तदतिरिक्तं प्रणाल्याः स्थिरतां कार्यक्षमतां च सुनिश्चित्य प्रत्येकस्य दत्तांशकोशस्य कार्यक्षमतां भारं च प्रति ध्यानं दातव्यम् ।

संलग्नः अस्ति SqlSugar अनुप्रयोगसङ्केतः:

SqlSugar इत्यस्य उपयोगेन;


//दत्तांशकोश वस्तु निर्मायताम् (उपयोगः EF Dapppper इत्यस्य समानः अस्ति यत् नूतनस्य माध्यमेन थ्रेड् सुरक्षां सुनिश्चितं करोति)
SqlSugarClient Db = नया SqlSugarClient (नया कनेक्शनविन्यास ()
{
ConnectionString = "दत्तांशस्रोत = डेमो.डीबी",
DbType = DbType.Sqlite, 1999।
IsAutoCloseConnection = सत्यम्
},
db =&gt; { .
 
db.Aop.OnLogExecuting = (sql, पार्स) =&gt;
    {

//देशी SQL अनुशंसा 5.1.4.63 प्राप्नुवन्तु, प्रदर्शनं ठीकम् अस्ति
Console.WriteLine (उपयोगविधि.GetNativeSql (sql, पार्स));

//पैरामीटर्-रहितं SQL प्राप्तुं कार्यप्रदर्शने प्रभावः भवति विशेषतः बहुभिः पैरामीटर्-युक्तं बृहत् SQL डिबगिंग् कृते उपयोक्तव्यम् ।
//Console.WriteLine (उपयोगविधि.GetSqlString (Db प्रकार. Sqlसर्वर, sql, pars))


    };

//अवलोकयन्तु यत् बहु-किरायेदारस्य अनेकाः सेटिङ्ग्स् सन्ति ।
//db.GetConnection (i).Aop

});

//दत्तांशकोशस्य निर्माणं कुर्वन्तु
Db.DbMaintenance.CreateDatabase(); // Dameng तथा Oracle आँकडाधारनिर्माणस्य समर्थनं न कुर्वन्ति

//सारणी रचयन्तु (दस्तावेजस्य प्रवासनं पश्यन्तु)
Db.CodeFirst.InitTables<Student> (); //सर्व पुस्तकालय समर्थन

//सारणीयाः सर्वं पृच्छतु
var list = Db.प्रश्नयोग्य<Student> ().ToList ();

//युज्
Db.Insertable (नया छात्र () { SchoolId = 1, नाम = "जैक" }).ExecuteCommand ();

//नवीनीकरण
Db.Updateable (नया छात्र () { आईडी = 1, स्कूल आईडी = 2, नाम = "jack2" }).ExecuteCommand ();

//लुप्
Db.विलोपनीया<Student> ().Where (it =&gt; it.Id == 1).ExecuteCommand ();


Console.WriteLine("आरम्भं कृत्वा अभिनन्दनम्, केवलं पश्चात् दस्तावेजीकरणं जाँचयितुम् आवश्यकम्।");
Console.ReadKey ();
 

//सत्तायाः संरचना दत्तांशकोशस्य समाना अस्ति
public class Student
{
//दत्तांशः स्वयमेव वर्धमानः अस्ति, IsIdentity इत्यनेन सह योजयितुं आवश्यकम् अस्ति
//दत्तांशकोशः प्राथमिकः कुञ्जी अस्ति अतः IsPrimaryKey इत्यनेन सह योजयितुं आवश्यकम् अस्ति
//टिप्पणी: द्वौ विशेषणौ दत्तांशकोशेन सह पूर्णतया सङ्गतौ भवितुमर्हति
[शर्करास्तम्भ (IsPrimaryKey = सत्य, IsIdentity = सत्य)]।
public int Id { प्राप्त करें; दृढः; } .
public int? SchoolId { प्राप्त करें; दृढः; } .
सार्वजनिक स्ट्रिंग्? नाम { प्राप्त; दृढः; } .
}