PHPMySQLI的基础数据

本文详细介绍了MySQL数据库的操作,包括如何添加数据(指定字段、不指定字段、部分字段添加)、查看数据(所有数据、部分字段、排序、分组查询)、修改数据(修改字段、字符集、数据内容)以及删除数据。此外,还讲解了SQL的基本操作,如创建、选择和删除数据库,设置字符集,以及各种查询技巧,如WHERE条件查询、聚合函数、排序和分页显示。
摘要由CSDN通过智能技术生成

PHP_MySQLi的操作
一、操作步骤:
1. 连接MySQL数据库
2. 判断是否连接成功
3. 选择数据库
4. 设置字符集
5. 准备SQL语句
6. 向MySQL服务发送SQL语句
7. 解析处理结果集
8. 释放结果集,关闭数据库连接

二、常用操作:

  1. mysqli_connect();–连接数据库,并返回一个连接对象
    格式: mysqli_connect(主机名,用户,密码,数据库名);
    –其中参数可选,若不写则参考php.ini中默认配置

  2. mysqli_connect_errno()–获取数据库连接错误号
    mysqli_connect_error()–获取数据库连接错误信息

  3. mysqli_error(); --获取刚刚(最后)执行数据库操作的错误信息
    mysqli_errno(); --获取刚刚(最后)执行数据库操作的错误号
    错误号为0表示没有错误

  4. mysqli_select_db(数据库连接对象,数据库名);
    选择一个数据库,等同于"use 库名"语句

  5. mysqli_set_charset(数据库连接,字符编码); --设置字符编码
    例如:mysqli_set_charset(l i n k , " u t f 8 " ) ; 等 同 于 : m y s q l i q u e r y ( link,"utf8"); 等同于:mysqli_query(link,"utf8");等同于:mysqliquery(link,“set names utf8”);

  6. mysqli_query(数据库连接,sql语句); – 发送一条sql语句
    sql语句若是查询,则返回结果集,其他则返回boolean值表示执行是否成功。

  7. 解析结果集函数:
    mysqli_fetch_array(); --以关联和索引两种方式数组解析结果集
    也可以指定第二参数来定义返回格式:
    MYSQL_BOTH(0关联和索引)/MYSQL_NUM(2索引)/MYSQL_ASSOC(1关联)

    mysqli_fetch_row(); --以索引式数组解析结果集
    *mysqli_fetch_assoc(); --以关联式数组解析结果集
    mysqli_fetch_object(); --以对象方式解析结果集

  8. mysqli_free_result(结果集名); --释放结果集

  9. mysqli_close(数据库连接); --关闭数据库连接

  10. mysqli_num_rows(结果集); --获取结果集中的数据条数

  11. mysqli_num_fields(结果集); --获取结果集中的列数(字段数量)

12.mysqli_affected_rows — 取得前一次 MySQL 操作所影响的记录行数
关联的 INSERT,UPDATE 或 DELETE 查询所影响的记录行数。

  1. mysqli_insert_id — 取得上一步 INSERT 操作产生的 ID

一、概念:
数据: data
数据库: DB
数据库管理系统:DBMS
数据库系统:DBS
MySQL:数据库
mysql:客户端命令(用来连接服务或发送sql指令)
SQL:结构化查询语言 ,其中MySQL支持这个。
SQL语言分为4个部分:DDL、DML、DQL、DCL

二、连接数据库:
mysql -h 主机名 -u 用户名 -p密码 库名

C:>mysql --采用匿名账号和密码登陆本机服务
C:>mysql -h localhost -u root -proot --采用root账号和root密码登陆本机服务
C:>mysql -u root -p --推荐方式默认登陆本机
Enter password: ****

C:>mysql -u root -p lamp61 --直接进入lamp61数据库的方式登陆

三、授权:
格式:grant 允许操作 on 库名.表名 to 账号@来源 identified by ‘密码’;

--实例:创建zhangsan账号,密码123,授权lamp61库下所有表的增/删/改/查数据,来源地不限
mysql> grant select,insert,update,delete on lamp61.* to zhangsan@'%' identified by '123';
Query OK, 0 rows affected (0.00 sec)123

四、SQL的基本操作
mysql> show character set; 查看系统中可用的字符集
mysql> alter database 库名 default character set utf8;修改数据库字符集
mysql> alter table 表名 character set utf8;修改表字符集
mysql> alter table 表名 modify 字段名 类型 character set utf8;修改字段字符集
mysql>show databases; --查看当前用户下的所有数据库
mysql>create database [if not exists] 数据库名; --创建数据库
mysql> use test; --选择进入test数据库
mysql> drop database 数据库名; --删除一个数据库

mysql> show tables; --查看当前库下的所有表格
mysql> select database();  --查看当前所在的数据库
mysql> desc tb1;  --查看tb1的表结构。
mysql> create table demo(	--创建demo表格
	-> name varchar(16) not null,
	-> age int,
	-> sex enum('w','m') not null default 'm');

mysql> desc demo;  --查看表结构
mysql>\h   -- 快捷帮助
mysql>\c   -- 取消命令输入
mysql>\s   -- 查看当前数据库的状态
mysql>\q   -- 退出mysql命令行12345678910111213

五、 MySQL数据库的数据类型:

MySQL的数据类型分为四大类:数值类型、字串类型、日期类型、NULL。

5.1 数值类型:
	*tinyint(1字节)
	smallint(2字节)
	mediumint(3字节)
	*int(4字节)
	bigint(8字节)
	*float(4字节)   float(6,2)
	*double(8字节)  
	decimal(自定义)字串形数值
	
 5.2 字串类型
	普通字串
	*char  定长字串   	 char(8)  
	*varchar 可变字串 varchar(8)
	
	二进制类型
	tinyblob
	blob
	mediumblob
	longblob
	
	文本类型
	tinytext
	*text      常用于<textarea></textarea>
	mediumtext
	longtext
	
	*enum枚举
	set集合
	
5.3 时间和日期类型:
	date  年月日
	time  时分秒
	datetime 年月日时分秒
	timestamp 时间戳
	year 年

5.4 NULL值
	NULL意味着“没有值”或“未知值”
	可以测试某个值是否为NULL
	不能对NULL值进行算术计算
	对NULL值进行算术运算,其结果还是NULL
	0或NULL都意味着假,其余值都意味着真

MySQL的运算符:
	算术运算符:+ - * / % 
	比较运算符:= > < >= <= <> != 
	数据库特有的比较:in,not in, is null,is not null,like, between and 
	逻辑运算符:and or not123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051

六、**表的字段约束:
unsigned 无符号(正数)
zerofill 前导零填充
auto_increment 自增
default 默认值
not null 非空
PRIMARY KEY 主键 (非null并不重复)
unique 唯一性 (可以为null但不重复)
index 常规索引
设置typeid为type表中的id的外键///typeid int references type(id),

七: *建表语句格式:
create table 表名(
字段名 类型 [字段约束],
字段名 类型 [字段约束],
字段名 类型 [字段约束],

);
1.进入数据库:c:> mysql -u root -p

2.创建数据库:mysql> create database 库名;

3.进入数据库:mysql> use 库名;

4.查看当前在哪个库:mysql> select database();

5.创建表:
–普通创建:create table ~ 表名~(表内容);
– 通过多行创建表:
mysql> create table 表名(
-> id int

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值