通过android和JDBC将变量值插入Sql server

Posted

技术标签:

【中文标题】通过android和JDBC将变量值插入Sql server【英文标题】:Insert variable value into Sql server through android and JDBC 【发布时间】:2016-02-24 06:14:02 【问题描述】:

我无法从我的 SQLite 数据库向我的 SQL Server 2008 插入值。这是我尝试使用大量示例的代码,但失败了。

dd =MainActivity.this.openOrCreateDatabase("Sellapp", MODE_PRIVATE, null); 
                   Cursor crs = dd.rawQuery("SELECT * FROM customer", null);
                   while(crs.moveToNext())
                          String uname = crs.getString(crs.getColumnIndex("id"));
                            String ucode= crs.getString(crs.getColumnIndex("cust_name"));
                            Log.v("executess", uname);
                            PreparedStatement stmt = connect.prepareStatement("insert into item_device (im_code, im_desc) values (?, ?");
                            stmt.setString(1, uname);
                            stmt.setString(2, ucode);
                            stmt.executeUpdate();
                            Log.v("EExecutess", ucode);

在变量 uname 中,你的代码有我的数据库值。当我试图从这些变量中列出值时,我可以做到这一点而不会出现任何错误。但是当我尝试将整个表插入 SQL 服务器时,我做不到。我尝试了其他问题的示例,但没有人适合我的问题。请任何人帮助。提前谢谢..

【问题讨论】:

你如何连接到sqlserver,你是使用api还是其他方式? @Çağrı 使用 jdbc。我有一个连接类。与 SQL 服务器的连接工作正常,因为 SQLite 数据库中的值只是从服务器中获取的。现在我正试图在同一个数据库中的另一个表上插入。 【参考方案1】:

您将需要一个 Web 服务来处理 SQLServer 访问。您不能直接从移动设备访问 SQLSERVER。

【讨论】:

我正在从我的系统访问它。我可以使用 jdbc 驱动程序访问 SQL 服务器。从 SQL 服务器中选择值正在工作。当我以正常插入方法插入值时,它正在插入。我的问题是我不能在变量中插入值..我不知道通过哪种方法可以做到这一点。【参考方案2】:

我自己发现的。我从没想过它很简单。我在这里发布我的答案。可能会对某人有所帮助..可以使用Batch execution 来完成

dd = MainActivity.this.openOrCreateDatabase("Sellapp", MODE_PRIVATE, null); 
Cursor crs = dd.rawQuery("SELECT * FROM customer", null);

while(crs.moveToNext())
    String uname = crs.getString(crs.getColumnIndex("id"));
    String ucode = crs.getString(crs.getColumnIndex("cust_name"));
    String INSERT_RECORD = "insert into item_device(im_code, im_desc) values(?,?)";

    PreparedStatement pstmt = connect.prepareStatement(INSERT_RECORD);
    pstmt.setString(1, uname);
    pstmt.setString(2, ucode);
    pstmt.addBatch();


    // execute the batch
    int[] updateCounts = pstmt.executeBatch();

【讨论】:

以上是关于通过android和JDBC将变量值插入Sql server的主要内容,如果未能解决你的问题,请参考以下文章

如何将变量值与 select 语句的结果一起放入 sql 表中?

通过单击鼠标将变量值传递给java中的servlet

如何将变量值传递给套接字字符串

如何将变量值“传递”给 JSON 动态对象?

js如何实现将一个通过计算出来的变量值,不刷新页面就可以将变量值显示在同一页面的文本框中?

将变量值从反应构造函数传递到 nodeJS 后端