通过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 表中?