Dart mysql在地图中插入占位符

Dart mysql在地图中插入占位符,mysql,dart,flutter,Mysql,Dart,Flutter,1) 是否有机会通过地图插入巨大的占位符 示例: Map<String, dynamic> job = { 'status': 'test', 'id_sitemap': 2500, 'id_job': 12, 'contact_uuid': 'nejakeuuid', 'id_source': 250, ... more 90 cols }; await connection.query('INSERT INTO

1) 是否有机会通过地图插入巨大的占位符

示例:

Map<String, dynamic> job = {
    'status': 'test',
    'id_sitemap': 2500,
    'id_job': 12,
    'contact_uuid': 'nejakeuuid',
    'id_source': 250,
     ...
     more 90 cols
  };

  await connection.query('INSERT INTO jobs', job);
映射作业={
“状态”:“测试”,
“id_站点地图”:2500,
“id_job”:12,
“联系人:”nejakeuuid“,
“id_源”:250,
...
超过90匹
};
等待连接。查询('插入作业',作业);

2) 如何使用mysql事务?我正在使用package
mysql1
来发布Dart。

可能有点晚了,但是对于其他找到这篇文章的人来说。你可以这样做,虽然不完美,但要灵活一些:

final sql = '''
  INSERT INTO jobs 
    (${job.keys.toList().join(',')}) 
  VALUES 
    (${List.filled(job.keys.length, '?').join(',')})   
''';
await connection.query(sql, job.values.toList());

“插入巨大的占位符”这是什么意思?这意味着我有一个95列的表,我不想写值(?,,,,,,,,,,,,,,,,,,,…),并使用占位符的严格位置。我想使用Map,其中键是列名,值是列值。为了更好地阅读代码。我明白了,但不知道。很酷的解决方案