簡體   English   中英

mysql(一行中添加多個值)android應用

[英]mysql (add more than one value in one row) android app

我正在嘗試在連接到mysql的android應用中創建一個函數,並執行以下操作:

我的數據庫中有兩個表:

CREATE TABLE IF NOT EXISTS `courses` (
`course_id` int(11) NOT NULL,
  `course_name` varchar(20) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

和:

CREATE TABLE IF NOT EXISTS `users` (
  `uid` int(11) NOT NULL,
  `unique_id` varchar(23) NOT NULL,
  `firstname` varchar(50) NOT NULL,
  `lastname` varchar(50) NOT NULL,
  `dept` varchar(20) NOT NULL,
  `email` varchar(100) NOT NULL,
  `encrypted_password` varchar(80) NOT NULL,
  `salt` varchar(10) NOT NULL,
  `created_at` datetime DEFAULT NULL,
  `type` varchar(20) NOT NULL
) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=18 ;

這個想法是user type = instructor將添加一門課程, user type = student將加入該課程,許多學生將加入許多課程,任何課程將有許多學生,現在我的功能稱為my courses ,即當學生單擊時在它上面,它將給他列出他加入的所有課程的清單,那么我該如何在我的php腳本中做到這一點?

對不起,我的英語不好 :)

提前致謝

正如Mohamed所提到的,您需要在數據庫中建立多對多關系。 這意味着您將需要一個中間表。 我們稱其為users_courses表。

該表至少需要兩個字段:

  1. uid-這用作用戶表的外鍵。
  2. course_id-這是課程表的外鍵。

每當用戶添加課程時,都會分別添加帶有用戶ID和課程ID的記錄。

一種訪問數據的方法是通過join語句:

SELECT <fields you need>
FROM users
INNER JOIN users_courses
ON users.uid = users_courses.course_id
INNER JOIN courses
ON users_courses.course_id = courses.course_id
WHERE <your conditions>

多對多關系

並在您的Sql查詢中使用內部聯接。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM