这是我现在的代码:
private static MySqlConnection conn = null;
private static MySqlDataAdapter AccountsDa = null;
private static MySqlCommandBuilder AccountsCb = null;
AccountsDa = new MySqlDataAdapter("SELECT * FROM accounts", conn);
AccountsCb = new MySqlCommandBuilder(AccountsDa);
Accounts = new DataTable();
AccountsDa.Fill(Accounts);
如果我这样做,我正在尝试弄清楚如何定义列默认值而无需手动执行:
DataColumn col = new DataColumn();
col.ColumnName = "id";
col.AllowDBNull = false;
col.DataType = System.Type.GetType("System.Int32");
col.DefaultValue = 0;
Accounts.Columns.Add(col);
对于每个列,它都可以正常工作,但是当表格被填满时,我如何让它自动设置数据库中的默认值。我希望我不必手动定义 30 列。
我尝试了 Accountsda.FillSchema(Accounts, SchemaType.Source); 它设置了允许空值和自动增量,但不是默认值
稍后在数据表中添加一行时会出现问题,有时我只需要为一列设置值,然后让其余列使用它们的默认值。
我可以输入 180 行代码来手动定义插入行的默认值,但是在创建/填充数据表时必须有一种方法可以从数据库中获取它
我正在使用内存数据表,因为有时数据仅存在 2 分钟,然后再次被删除,因为这是用于在线 rts 游戏的专用服务器。所以为了保存数据库上的点击,我使用数据表并操作它们并每 10 分钟刷新一次,这样我每 10 分钟对数据库只有 1,000 次点击,而不是可能有 40,000 次点击