-3

我会试着解释我需要做什么。

我有一张桌子,在这张桌子上我有 ID。这个 ID 是我的主键(auto_increment)。我还有第二张桌子。

我需要的是当我在我的秒表中保存一些东西时,我想使用我的第一个表的 ID。

我读过很多东西,但我只是从中得到更多的头痛,所以如果有人能帮助我,我将不胜感激。

数据库

4

3 回答 3

3

您需要外键的概念。这可以被定义为一个约束或只是这样使用。假设您有“教师”和“学生”,学生被分配给一位教师。所以老师有一个ID。现在您的“学生”表也有一个 ID(它是主键)和一个外键TEACHER_ID,它指的是教师条目。

ALTER TABLE `Pupils` ADD FOREIGN KEY (TEACHER_ID) REFERENCES `Teachers` (ID)

将创建一个约束,它TEACHER_ID指的ID是教师的。

在 PHP 中,如果您同时创建两个条目。您可以先插入教师,然后使用:

$teacherID = mysql_insert_id();

这将返回最后一个auto_increment值(在这种情况下是您的教师ID),然后将其设置TEACHER_ID为您的学生条目。

于 2012-09-14T07:27:39.997 回答
0
Declare @id int
SET @id=1

INSERT INTO table2(col1,col2...)
select col1,col2... from table1 where ID=@id
于 2012-09-14T07:19:19.743 回答
0

你没有说你在 php 中使用的是哪个版本的 mySQL,但是使用 mysqli 你可以使用 mysqli_insert_id 函数(mysql_insert_id 也可以)例如:

$query = "INSERT INTO myCity VALUES (NULL, 'Stuttgart', 'DEU', 'Stuttgart', 617000)";
mysqli_query($link, $query);

printf ("New Record has id %d.\n", mysqli_insert_id($link));

有关更多信息,请参阅:http ://us3.php.net/manual/en/mysqli.insert-id.php

于 2012-09-14T07:32:30.063 回答