我正在使用SlickGrid / DataView进行CRUD。它工作正常。但是,我们有一些没有主键的表。
Q1:我如何在这些表中使用dataview?如果没有,那么我是否只使用Slickgrid而没有数据视图,或者我有另一种选择?任何一个例子将不胜感激。
Q2:Dataview是否支持复合主键?如果是的话,有人可以给我一个使用它的例子吗?
感谢
答案 0 :(得分:0)
SlickGrid至少需要ID字段,您可以在表格中以不同的方式命名,然后将其别名为" ID"但它必须是一个UNIQUE id字段,因为SlickGrid用它来进行行命名等等。
如果您没有UNIQUE字段并且您确实想要使用复合主键,那么我建议您创建一个伪ID字段,每个循环只增加1。一种简单的方法是在获取数据时执行此操作,类似于以下内容:
$sqlTable = "SELECT * FROM myTable";
$result = mysql_query($sqlTable,$connMySQL);
$i = 1;
while($row = mysql_fetch_array($result, MYSQL_ASSOC)){
$tabData[] = array(
"id" => $i++,
"column1" => $row['column1'],
"column2" => $row['column2']
);
}
现在,如果您使用我刚刚说过的假身份证,这会让您在执行CRUD(更新,删除)时遇到一些问题,因为您的身份证不真实并指向无处......但有一种方法可以解决那也是。
顺便说一句,你应该将你的问题分成两个单独的问题,因为它们是不同的主题。我建议你在另一个问题中询问你的CRUD主题,并提供一些代码,以便我们可以从那里开发。