【问题标题】:Slickgrid/Dataview without Primary Key没有主键的 Slickgrid/Dataview
【发布时间】:2013-11-01 00:29:26
【问题描述】:

我将 SlickGrid/DataView 用于 CRUD 目的。它工作正常。但是,我们有一些没有主键的表。

Q1:我如何为这些表使用数据视图?如果不是,那么我是否只使用没有数据视图的 Slickgrid 或者我有其他选择?任何示例将不胜感激。

Q2:Dataview 是否支持复合主键?如果是的话,有人可以给我一个使用它的例子吗?

谢谢

【问题讨论】:

    标签: slickgrid dataview


    【解决方案1】:

    SlickGrid 至少需要 ID 字段,您可以在表中取任何可能以不同方式命名的字段,然后将其别名为“ID”,但它必须是唯一的 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'] 
        );
    }
    

    现在,如果您确实像我刚才所说的那样使用了假 ID,这会给您在执行 CRUD(更新、删除)时带来一些问题,因为您的 ID 不是真实的并且指向任何地方......但是有一种方法可以解决那也是。

    顺便说一句,您应该将您的问题分成 2 个单独的问题,因为它们是不同的主题。我建议您在另一个问题中询问您的 CRUD 主题,并提供一些代码,以便我们可以从那里进行开发。

    【讨论】:

      猜你喜欢
      • 2012-03-31
      • 2015-09-28
      • 2018-12-13
      • 1970-01-01
      • 2013-11-04
      • 2012-02-26
      • 1970-01-01
      • 1970-01-01
      • 2013-07-19
      相关资源
      最近更新 更多