2012-03-24 175 views
0

我已經在phpmyadmin中設置了兩個兩個表 - 表用戶標識和表數據。用戶ID表由一個列ID組成,表數據由以下列組成 - id|name|price。我在表userid的列id中添加了一個索引以指向表數據的id。現在我有一個用戶在android應用程序中進行某些選擇。我想將這些數據插入到表格數據中。我知道我必須使用jdbc並知道如何爲沒有任何索引的表輸入數據。但是在相關表格的情況下,我很困惑如何去做。用戶名是從這個鏈接http://android-developers.blogspot.in/2011/03/identifying-app-installations.html獲得的。有人請告訴我如何使用java輸入數據。 (混淆是如何輸入用戶標識和相應的數據)。從關係數據庫檢索數據

+0

當你說你已經添加表的用戶ID的列ID的索引點到表數據的id,你的意思是'data'.'id'是'userid'.'id'的外鍵嗎?如果是這樣,那麼在'userid'中沒有相應的記錄就不可能插入'data'。或者我沒有理解你的問題? – Abhay 2012-03-24 17:18:02

回答

1

只要您在向數據表中插入新記錄時知道用戶標識即可。基本上,你必須:

Statement stmt = conn.createStatement(); 
stmt.executeUpdate("INSERT INTO data (id, name, price) VALUES ('id from userid table', 'a name', 'a price')"); 

顯然PARAMS不正確地轉義(他們真的應該如此),而且也沒有測試的錯誤,但是這將讓你開始。

然後,例如,選擇所有與給定用戶ID的數據,你會做這樣的事情:

Statement stmt = conn.createStatement(); 
stmt.executeQuery("SELECT * FROM userid LEFT JOIN data WHERE userid.id = data.id"); 
+0

我認爲索引表會提高速度並減少重複。或者我誤解了這裏。 – user1092042 2012-03-24 12:58:55

+0

@ user1092042絕對的,但是你所問的可以通過在用戶表中的id字段上添加索引來處理,索引不需要存儲在單獨的表中。 – clexmond 2012-03-24 13:03:17

+0

但是數據需要正確識別。如果我有很多用戶,那麼我需要知道哪些數據屬於誰。對不起,如果我看起來很愚蠢,但我很新(索引被存儲在數據表中作爲外鍵) – user1092042 2012-03-24 13:07:18