From 46ee538c2ffe3ea76c647524c74c2ce6add8a2d3 Mon Sep 17 00:00:00 2001 From: crupest Date: Tue, 6 Dec 2022 11:58:37 +0800 Subject: Develop secret api. v13 --- .../CrupestApi.Commons/Crud/TableInfo.cs | 27 +++++++++++++++++++++- 1 file changed, 26 insertions(+), 1 deletion(-) (limited to 'docker/crupest-api/CrupestApi/CrupestApi.Commons/Crud/TableInfo.cs') diff --git a/docker/crupest-api/CrupestApi/CrupestApi.Commons/Crud/TableInfo.cs b/docker/crupest-api/CrupestApi/CrupestApi.Commons/Crud/TableInfo.cs index bf62df2..9610e40 100644 --- a/docker/crupest-api/CrupestApi/CrupestApi.Commons/Crud/TableInfo.cs +++ b/docker/crupest-api/CrupestApi/CrupestApi.Commons/Crud/TableInfo.cs @@ -190,6 +190,31 @@ CREATE TABLE {tableName}( return result.ToString(); } + public string GenerateInsertSql(InsertClause insertClause, out DynamicParameters parameters) + { + var relatedColumns = insertClause.GetRelatedColumns(); + foreach (var column in relatedColumns) + { + if (!ColumnNameList.Contains(column)) + { + throw new ArgumentException($"Column {column} is not in the table."); + } + } + + parameters = new DynamicParameters(); + + var result = new StringBuilder() + .Append("INSERT INTO ") + .Append(TableName) + .Append(" (") + .Append(insertClause.GenerateColumnListSql()) + .Append(") VALUES (") + .Append(insertClause.GenerateValueListSql(parameters)) + .Append(");"); + + return result.ToString(); + } + public string GenerateUpdateSql(WhereClause? whereClause, UpdateClause updateClause, out DynamicParameters parameters) { var relatedColumns = new HashSet(); @@ -200,7 +225,7 @@ CREATE TABLE {tableName}( { if (!ColumnNameList.Contains(column)) { - throw new ArgumentException($"Field {column} is not in the table."); + throw new ArgumentException($"Column {column} is not in the table."); } } -- cgit v1.2.3