2016-10-17 29 views
1

我有一个表os它持有手机的操作系统。属性是os_idnameos_id将从另一张表device使用。据我所知,每次我将在设备中插入一条新记录时,我需要SELECT from osos_id它的name与用户发送的相同。对于使用ids的所有信息(不仅适用于os)会发生这种情况。有没有更好的解决方案来避免每次插入使用SELECT 3-4次?SQL - 在插入之前查找每个值的ID

注意: 这不是HTML项目。这是一项网络服务,数据将从移动设备按字符串推送

+0

用户如何使用下拉列表选择/输入这些值,如设备的操作系统? – saurav

+0

你有没有试过SCOPE_IDENTITY()? – fable

+0

@saurav将是Web服务,它将作为字符串从移动设备推送。 – BlackM

回答

0

最佳方法是从前端用户接收os_id而不是os_name。我不知道你在用户界面中使用的是什么,但我建议使用由os_id填充的下拉列表作为值,os_name作为文本填充。当用户选择os_name时,相应的os_id将随请求一起提交。

+0

感谢您的回答,但我并不清楚这将是一个web服务,并且os名称将被移动设备自动推送。 – BlackM

0

你可以从用户处获得os_id。

<select name="os"> 
    <option value="os_id">name</option> 
</select> 

不要忘记在表格之间建立关系!在这种情况下,如果用户的os_id不存在于os表中,则INSERT命令将返回错误。