Can I use chinese parameters name at statement parameter
using Dapper;
using DuckDB.NET.Data;
namespace DapperDuckDBTest;
public class UnitTest1
{
[Fact]
public void TestDatabaseInitializer()
{
using var connection = new DuckDBConnection("Data Source=test.db");
connection.Open();
connection.Execute(@"
CREATE TABLE Model
(
Name VARCHAR,
Number SMALLINT,
数字 SMALLINT
);");
connection.Close();
}
[Fact]
public void TestDatabaseInserter()
{
using var connection = new DuckDBConnection("Data Source=test.db");
connection.Open();
var models = new List<Model>
{
new Model { Name = "LokiSharp", Number = 1, 数字 = 0 },
new Model { Name = "LokiSharp", Number = 2, 数字 = 0 },
new Model { Name = "LokiSharp", Number = 3, 数字 = 0 },
};
foreach (var model in models)
{
connection.Execute(@"INSERT INTO Model (Name, Number, 数字) VALUES ($Name, $Number, $数字);", new {Name = model.Name, Number = model.Number, 数字 = model.数字});
}
}
}
DuckDB.NET.Data.DuckDBException: Invalid Input Error: Values were not provided for the following prepared statement parameters: 数字
DuckDB.NET.Data.DuckDBException
Invalid Input Error: Values were not provided for the following prepared statement parameters: 数字
at DuckDB.NET.Data.PreparedStatement.Execute(DuckDBParameterCollection parameterCollection)
at DuckDB.NET.Data.PreparedStatement.PrepareMultiple(DuckDBNativeConnection connection, String query, DuckDBParameterCollection parameters)+MoveNext()
at DuckDB.NET.Data.DuckDbCommand.ExecuteNonQuery()
at Dapper.SqlMapper.ExecuteCommand(IDbConnection cnn, CommandDefinition& command, Action`2 paramReader) in /_/Dapper/SqlMapper.cs:line 2965
at Dapper.SqlMapper.ExecuteImpl(IDbConnection cnn, CommandDefinition& command) in /_/Dapper/SqlMapper.cs:line 656
at Dapper.SqlMapper.Execute(IDbConnection cnn, String sql, Object param, IDbTransaction transaction, Nullable`1 commandTimeout, Nullable`1 commandType) in /_/Dapper/SqlMapper.cs:line 527
at DapperDuckDBTest.UnitTest1.TestDatabaseInserter() in C:\Users\LokiSharp\Desktop\DapperDuckDBTest\DapperDuckDBTest\UnitTest1.cs:line 40
at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor)
at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr)
Can I use chinese parameters name at statement parameter