php+mysql
- 安装Navicat for MySQL
- sql语句
- php链接数据库
# 1、安装Navicat
创建连接
默认用户名,密码:root
创建新用户
赋予权限
新建数据库
字符集:utf8 -- UTF-8 Unicode
排序规则:utf8_unicode_ci
utf-8》编码格式
新建表
varchar 长字符串;
int数字类型;
date日期类型;(年月日)
time时间类型;(时分秒)
设置主键:自动递增
主键:一个表只能存在一个主键,主键不能为空,可以允许自增
主键的作用是用来快速查询数据库数据
# 2、sql语句
sql是用于访问和处理数据库的标准的计算机语言
- sql可以访问数据库
- 执行crud操作(create增加,retrieve查询,update更新,delete删除)
- 标准计算机语言
oracle,sql server,mysql,db2.....
sql分为两个部分:
- 数据操作语言(dml)
- select-获取数据
- update-更新数据
- delete-删除数据
- insert into-插入数据
- 数据定义语言(ddl)
- CREATE DATABASE - 创建新数据库
- ALTER DATABASE - 修改数据库
- CREATE TABLE - 创建新表
- ALTER TABLE - 变更(改变)数据库表
- DROP TABLE - 删除表
- CREATE INDEX - 创建索引(搜索键)
- DROP INDEX - 删除索引
select语句
选取数据,将结果放在结果集中
SELECT 列名称 FROM 表名称
SELECT * FROM 表名称
select NAME from username
1
2
3
2
3
sql语句对大小写不敏感
where子句
有条件的选取数据
select 列 from 表 where 列 运算符 值 select * from people select * from people where city='beijing'
1
2
3
4
5
6
7insert into语句
向表格中插入新的行
insert into 表名称 (表头1,表头2) values (值1,值2) insert into 表名称 (name) values (dongfang)
1
2
3
# 3、php链接数据库
<?php
//insert into
// 创建连接 主机+端口号,用户名,密码,数据库
$conn = new mysqli("localhost:3308", "root", "root", "test");
// 检测连接
//->相当于js中的.
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
else{
echo "成功";
}
//设置sql语句
$sql = "INSERT INTO username (name) VALUES (123)";
//执行sql语句,并判断结果
if($conn->query($sql) === TRUE)
{
echo "插入成功";
}else{
echo "Error: " . $sql . "<br>" . $conn->error;
}
//关闭连接
$conn->close();
?>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<?php
//select
// 创建连接
$conn = new mysqli("localhost:3307", "zhao", "123456", "first");
// 检测连接
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
} else{
echo "成功";
}
$sql = "select * from username";
//执行sql,将结果查询结果赋值给$result
$result=$conn->query($sql);
if( $result && $result->num_rows>0 ){
//fetch_all方法获取结果集
$res = $result->fetch_all(MYSQLI_ASSOC);
// 参数fetch_type可以为MYSQLI_NUM(索引数组,默认)、MYSQLI_ASSOC(关联数组)、MYSQLI_BOTH(两者都要)
print_r($res);
//循环取出
foreach( $res as $row ) {
echo "<br>";
print_r( $row );
print $row["id"];
print $row["name"];
}
} else {
echo "error:".$mysqli->errno." : ".$mysqli->error;
}
$conn->close();
?>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44