我是团结3D v4.5 pro的新程序员。我正在使用统一3D作为我的增强现实应用程序,我选择了SQLite来创建并轻松处理我的数据库(在android上构建之后)。我在java http://wiki.unity3d.com/index.php/SQLite中找到了2个脚本...我将它转换为c#(因为我用c#编程)并且它帮助了我很多但我无法找到方法"查询&# 34;删除例如firstName或LastName ..我试过这样:
public void DeleteFrom ( String tableName,String itemToDelete, String wPar,String wValue )
{
string query ;
query = "DELETE FROM " + tableName + " WHERE " + itemToDelete + wPar + wValue ;
dbcmd = dbcon.CreateCommand();
dbcmd.CommandText = query;
reader = dbcmd.ExecuteReader();
}
然后我在另一个脚本中调用它"使用数据库"因为它是吼叫的
public void DeleteRow(string FirstName )
{
db.DeleteFrom("'"+TableName+"'","FirstName","=","'"+firstName+"'");
}
但我得到的是删除整个Row(firstName lastName)
我不知道你是否理解我的意思:我只想删除firstName并保留在我的数据表中它的lastName所以我可以为lastName分配任何其他新的firstName 。我希望你理解我的观点。请接受我的任何帮助,并提前感谢你。 :)
答案 0 :(得分:0)
如果我理解正确,听起来你不想做真正的删除。没有删除字段,只有整行。相反,你想要的是一个更新。使用此代码清除行的名字字段:
public void ClearFirstName(string tableName, string firstname )
{
string query ;
query = "UPDATE " + tableName + " SET FirstName = '' WHERE FirstName = '" + firstname + "'";
dbcmd = dbcon.CreateCommand();
dbcmd.CommandText = query;
reader = dbcmd.ExecuteReader();
}
此代码的问题在于,一旦清除了名字,您将无法再次引用它(它将为空)。我建议你添加一个唯一的数字ID字段来引用表格中的每一行。然后,您可以在SQL语句的WHERE子句中使用该ID。