|
Home >> FAQs/Tutorials >> MySQL Tutorials
MySQL FAQs - Managing Tables and Running Queries with PHP Scripts
By: FYIcenter.com
Part:
1
2
3
4
5
6
7
8
(Continued from previous part...)
How To Query Multiple Tables Jointly?
If you want to query information stored in multiple tables, you can
use the SELECT statement with a WHERE condition to make an inner join.
Assuming that you have 3 tables in a forum system: "users" for user profile,
"forums" for forums information, and "posts" for postings, you can query
all postings from a single user with a script as shown below:
<?php
include "mysql_connection.php";
$userID = 101;
$sql = "SELECT posts.subject, posts.time, users.name,
. " forums.title"
. " FROM posts, users, forums"
. " WHERE posts.userID = ".$userID
. " AND posts.userID = users.id"
. " AND posts.forumID = forums.id";
$rs = mysql_query($sql, $con);
while ($row = mysql_fetch_assoc($rs)) {
print($row['subject'].", ".$row['time'].", "
.$row['name'].", ".$row['title']."\n");
}
mysql_free_result($rs);
mysql_close($con);
?>
How To Get the ID Column Auto-Incremented?
Many tables require an ID column to assign a unique ID number for each row in the table.
For example, if you have a table to hold forum member profiles, you need an ID number
to identify each member. To allow MySQL server to automatically assign a new ID number
for each new record, you can define the ID column with AUTO_INCREMENT and PRIMARY KEY attributes
as shown in the following
sample script:
<?php
include "mysql_connection.php";
$sql = "CREATE TABLE fyi_users ("
. " id INTEGER NOT NULL AUTO_INCREMENT"
. ", name VARCHAR(80) NOT NULL"
. ", email VARCHAR(80)"
. ", time TIMESTAMP DEFAULT CURRENT_TIMESTAMP()"
. ", PRIMARY KEY (id)"
. ")";
if (mysql_query($sql, $con)) {
print("Table fyi_users created.\n");
} else {
print("Table creation failed.\n");
}
mysql_close($con);
?>
If you run this script, a new table will be created with ID column defined as auto-increment.
The sample script below inserts two records with ID values assigned by MySQL server:
If you run this script, you will get something like this:
1 rows inserted.
1 rows inserted.
1, John King, 2006-07-01 23:02:39
2, Nancy Greenberg, 2006-07-01 23:02:39
(Continued on next part...)
Part:
1
2
3
4
5
6
7
8
|