手动设置和检查 id 字段
Setting and checking the id field manually
我正在开发一个Phonegap应用程序,该应用程序在某个超级用户下添加了20个用户。由于一个超级用户下只有 20 个 id 可用,我在 id 字段中使用了自动增量。现在我得到了以下场景——
1) 用户 1 输入他的 ID 为 1
2)然后,User1根据自己的喜好将ID编辑为4
3) 用户 2 注册,默认数字为 5
4) 用户 2 将其 ID 编辑为 20
这就是我的问题所在,我如何重新检查和分配已分配的号码,然后进行编辑.如您所见,在上述场景中,从 1-4 和从 4-20 的数字将未使用。
以下是我到目前为止所做的代码 -
var db = window.sqlitePlugin.openDatabase("Database", "1.0", "Application", -1);
var Id = window.localStorage["user_id"];
var Number = '';
db.transaction(function(txaf) {
db.transaction(function(tx) {
//store data for local storage
//var Number = GenerateRandom();
//var Number;
tx.executeSql(
"SELECT id,number FROM range WHERE superuser_id = '" +
SuperuserId + "' ORDER BY id ASC Limit 1 ;", [],
function(tx, result) {
//if user id found then just update data for that user
//alert(result.rows.item(0).id);
Number = result.rows.item(0).number;
var UpdateId = result.rows.item(0).id;
var Data = JSON.parse(window.localStorage[
"data"]);
Data.number = Number;
var DataJson = JSON.stringify(Data);
window.localStorage["data"] = DataJson;
tx.executeSql(
"UPDATE range SET is_used = '1' WHERE id = '" +
UpdateId + "'", '', function(tx,
resUpdate) {}, function(e) {
//console.log("ERROR at update: " + e.message);
});
});
}, function(e) {
//console.log("ERROR: " + e.message);
});
id 应该是唯一的。这意味着如果用户更改其 ID,则需要重新调整最多 20 个 ID,从而更改其他用户的首选 ID。可能的出路:
1 不要使用自动增量,自己做ID簿记。向用户提供可用 ID 的选择,并让他们从此列表中进行选择。
2 使用帮助程序表(或使用用户表中的字段)将用户首选 ID 映射到自动生成的 ID。
相关文章:
- 使用getElementById设置动态ID的输入字段的样式
- AngularJS-工厂中promise ID字段的返回值
- 如何使用javascript检查id字段为空的单选按钮
- 使用 JavaScript 比较 2 个数组并创建一个新的对象数组,该数组不包含与 id 字段匹配的对象
- 猫鼬对 id 字段的请求返回 id 和_id
- 杰森.解析正在复制 ID 字段
- Angular JS 自动递增计数器的 ID 字段
- 手动设置和检查 id 字段
- 在节点中使用计数器集合.js递增 ID 字段
- 仅从 ID 字段中检索数字
- 正在获取已创建模型的ID字段
- 从元素jQuery Each中抓取ID字段
- 如何验证我的电子邮件Id字段
- JSON解析Javascript丢失id字段时出错
- EXTjs 3.4.0使用NAME在网格中呈现ID字段
- 向Meteor添加用户id字段.用户收集的帐户包
- 如何使用非-'id'字段作为使用FixtureAdapter时的主键
- 通过id字段过滤数组列表到一个新变量
- 滚动iframe到没有id字段的锚
- JavaScript数独ID字段未注册