Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/197.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android java插入到sql server数据类型(从字符串转换为uniqueidentifier时转换失败)_Java_Android_Sql Server - Fatal编程技术网

Android java插入到sql server数据类型(从字符串转换为uniqueidentifier时转换失败)

Android java插入到sql server数据类型(从字符串转换为uniqueidentifier时转换失败),java,android,sql-server,Java,Android,Sql Server,我对MySQL中的uniqueidentifier有问题,当我试图将一个数据数组插入到一个列中有uniqueidentifier数据类型的表中时,它只是说将字符串转换为uniqueidentifier时转换失败 下面是MySQL块: if (Gender.trim().equals("")) z = "Value not enough"; else { try {

我对MySQL中的uniqueidentifier有问题,当我试图将一个数据数组插入到一个列中有uniqueidentifier数据类型的表中时,它只是说将字符串转换为uniqueidentifier时转换失败

下面是MySQL块:

    if (Gender.trim().equals(""))
                z = "Value not enough";
            else {
                try {
                    Connection con = connectionClass.CONN();
                    if (con == null) {
                        z = "Error in connection with SQL server";
                    } else {


                        final String query = "USE [dbtest]" +
                                "insert into [tablename] ([DepositorID],[Name],[Sex],[DateOfBirth],[Race],[Occupation],[Occupation_others],[AddressLine1],[AddressLine2],[Postcode]," +
                                "[City],[State],[AgeSah],[TelNo],[HPNo],[Email],[Bank],[BankNo],[CreatedBy],[CreatedOn],[ModifiedBy],[ModifiedOn]) values " +
                                "('" + nokppv + "','" + Namev + "','" + sex + "','" + Date + "','" + Race + "','" + Occupation + "','" + Occupation2 + "','" + Address + "','" + Address2 +
                                "','" + Postcode + "','" + City + "','" + State +  "','" + agesah +  "','" + telno +  "','" + Phonev  + "','"+ Email  +"','"+ Bank  +"','"+ BankNo +
                                "',' "+ chars +"','"+ CreatedOn +"','"+ chars1  +"','" + ModifiedOn + "')";
                        System.out.println("Query:"+query);
                        Statement stmt = con.createStatement();
                        ResultSet rs = stmt.executeQuery(query);

                        if (rs.next()){
                            z = "Registration successful";
                            isSuccess = true;
                        }else {
                            z = "Registration error";
                            isSuccess = false;
                        }


                    }
                } catch (Exception ex) {
                    isSuccess = false;
                    z = "Exceptions";
                    System.err.println("Message:"+ex.getMessage());
                    System.err.println("Cause:"+ex.getCause());
                    System.out.println("Query:"+query);
                }
            }


    }

        return z;
    }
我已经尝试过的事情

  • uniqueidentifier的列允许null,并尝试将其插入null,出现相同错误

  • 尝试了android GUID代码,同样的错误,发现sql server uid是顺序的,这与java uid不同

  • 尝试从JDBC库声明UniqueIdentifier变量,出现相同错误

  • 我确实发现有帖子提到UID生成器,它生成一个与SQLUID数据类型兼容的顺序UID,但帖子的答案非常模糊。 我只需要一些提示或者一些例子来编写我自己的代码,我希望我能提供足够的数据。有人愿意带我到处看看绳子吗?顺便说一句,我使用的是MSSQL 2016 并使用Android Studio作为Java平台。

    尝试:

    +"CONVERT(uniqueidentifier,'"+chars+"' )"
    
    +"CONVERT(uniqueidentifier,'"+chars1+"' )"
    
    你应该得到:

    values ('840403055141','Shariffah Saralisha binti Syed Ali','P','04-03-1984','K','015','null','No 43, Jalan valera 1/3, Taman Tingtong','null','43900','Sepang','K','Y','null','0123456789‌​','Demo@emailhost.co‌​m','123','123',CONV‌​ERT(uniqueidentifier‌​,'55555555-2222-2222‌​-2222-222222222222')‌​,'2017-02-16 19:59:22','CONVERT(uniqueidentifier,'22222222-2222-2222-2222‌​-222222222222'),'nul‌​l') 
    

    您应该使用
    CONVERT
    NEWID
    Is
    寄存者
    a
    uniqueidentifie
    并尝试传递包含
    string
    nokppv
    ?我将尝试使用CONVERT,但NEWID不是来自C#?java中也有新的ID?除了CreatedBy和ModifiedBy之外,每个变量都是字符串,只是这两个变量是唯一的标识符。它的变量是chars和chars1,尝试将字符串转换为char,但没有用。非常感谢,错误消失了,但这个错误会弹出下一个值('840403055141'、'Shariffah Saralisha binti Syed Ali'、'P'、'04-03-1984'、'K'、'015'、'null'、'43号、Jalan valera 1/3、Taman Tingtong'、'null'、'43900'、'Sepang'、'K'、'Y'、'null'、'0123456789'、'Demo@emailhost.com“,”123“,”123“,”转换(唯一标识符,“55555555-2222-2222-2222”),”2017-02-16 19:59:22“,”转换(唯一标识符,'22222-2222-2222-2222-2222','null')“55555”附近的错误语法不正确。我检查了查询,但没有明显的错误。我知道它是第一个uniqueid,由CreatedBy创建的,但它前面的两列允许Null。我尝试转换它,没问题,@ReanyMany检查我的更新。我尝试直接在mssql中运行insert,但转换后出现错误从字符串到uniqueidentifier的打开失败。是否有任何设置需要我翻转开关才能使其工作?以及您更新的设置,该设置没有撇号?