c# sqlite 修改字段类型
·
因为sqlite不支持直接修改字段类型, 所以只能创建新的表,再将原始数据复制过去。具体操作步骤如下:
第一步, 将表“tableName”的名称修改为 “oldTable”
string queryString = string.Format("ALTER TABLE {0} RENAME TO {1}", "tableName", "oldTable");
SQLiteCommand cmd = new SQLiteCommand(queryString, dbConnection());
cmd.ExecuteNonQuery();
第二步:重新创新新的表“tableName”, 这里就可以修改字段的类型
queryString = @"CREATE TABLE IF NOT EXISTS " + "tableName"+ @"(
fTemplateid INTEGER,
fTemplatename VARCHAR)";
cmd.CommandText = queryString;
cmd.ExecuteNonQuery();
第三步: 恢复数据(将表“oldTable”中的数据恢复到 “tableName”)
queryString = string.Format("INSERT INTO newTable ({0}) SELECT fTemplateid,fTemplatename FROM {1}", "ID,tableName", "oldTable");
cmd.CommandText = queryString;
cmd.ExecuteNonQuery();
第四步: 删除表“oldTable”
queryString = string.Format("DROP TABLE {0}", "oldTable");
cmd.CommandText = queryString;
cmd.ExecuteNonQuery();
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐


所有评论(0)