在mysql中插入时出错

时间:2017-07-18 08:05:11

标签: mysql

我在mysql中创建了一个名为student的表,其中2列名为" S-id int not null auto_increment 14012040"和" S-name varchar(45)not null unique" "主键(S-id)" .... 表已成功创建..但是在将一条记录插入数据库之后,在下一次插入时它显示错误,如#34;不允许重复主键" ... PLZ hlp我应该做什么... 在下面我发布屏幕截图....

creating table

[第一次插入成功] [2]

getting error

1 个答案:

答案 0 :(得分:1)

您的主键S-id具有默认值(14012040)。 您只插入S-name和studentcol列的值,因此它将一次又一次地使用S-id默认值。 当它首先运行时,它可以使用默认值,因为它不存在于表中。但第二次会引发错误。 您应该使用自动增量进行S-id,因为ÁlvaroTouzón表示。

<强>更新

根据您的评论,这是工作创建脚本:

request = new StringRequest(Request.Method.GET, URL,
                new Response.Listener<String>() {
                    @Override
                    public void onResponse(String response) {
                        try {
                            JSONObject jsonObject = new JSONObject(response);
                            if (jsonObject.names().get(0).equals("success")) {
                                Toast.makeText(getApplicationContext(),
                                        "SUCCESS" + jsonObject.getString("success"),
                                        Toast.LENGTH_SHORT).show();
                                startActivity(new Intent(getApplicationContext(), Welcome.class));
                            } else {
                                Toast.makeText(getApplicationContext(),
                                        "Error" + jsonObject.getString("Error"),
                                        Toast.LENGTH_SHORT).show();

                            }
                        } catch (JSONException e) {
                            e.printStackTrace();
                        }
                    }
                }, new Response.ErrorListener() {

            @Override
            public void onErrorResponse(VolleyError error) {
            }
        }) {
            @Override
            protected Map<String, String> getParams() {
                HashMap<String, String> hashMap = new HashMap<String, String>();
                hashMap.put("email", email.getText().toString());
                hashMap.put("password", password.getText().toString());
                return hashMap;
            }
        };

        requestQueue.add(request);

工作SQL fiddle here