登录MySQL mysql -hlocalhost-uroot -proot
退出MySQL exit
每条语句后必须加分号:--------------------------------------------
显示数据库 SHOW DATABASES;;查看MySQL服务器上有多少个数据库
创建数据库 CREATE DATABASE db_name [IF NOT EXITSTS][CHARSET utf8];
各个命令之间用空格隔开
db_name 自定义数据库名字 字母数字下划线
[IF NOT EXITSTS] 如果创建的数据库已经存在,则不会报错
[CHARSET utf8]指定当前数据库的字符集,默认为‘拉丁’,
切记:utf8中间不加横线
SHOW命令的使用;
show create database db_name; 查看创建数据库的语句过程
删除数据库 DROP DATABASE db_name [IFEXITSTS];
[IF EXITSTS]如果存在删除就不会报错
修改mysql数据库的字符集:ALERT DATABASE db_name DEFAULT CHARACTERSET 字符集;
数据表操作:
选择当前数据库------>USEdb_name;显示数据表--------->SHOW TABLES; 创建数据表---------->CREATETABLE table_name(列1 类型列的属性,列2 类型列的属性,.....);
例: create table table1(id int not null auto_increment primarykey,title varchar(100) not null,author varchar(20) not null,source varchar(30)not null,
hits int(5) not null default 0,
is_ppt tinyint(1) not null default0,content text null,addate int(16) not null);
auto_increment----自动增长 primarykey----主键
id字段的属性:必须的----NOT null auto_increment primary key
列的类型(mysql的数据类型):整型、浮点型、字符型、文本型、日期型
列的属性:是否为空、NOTnull || NULL
自动增长:AUTO_INCREMENT 只能用于id,一个表只能有一个自动增长属性
默认值: DEFAULT value
主 键:(主索引)只有一个,PRIMARYKEY 一般指定给id字段,一个表只能有一个
整型:tinyint---一个字节(0-255) smalimt----两个字节(0-65535) int----四个字节(0-21亿)bigint----8个字节()
浮点型:float(M,D)可以精确到小数点后7位,M代表总宽度,D代表小数位
double(M,D)可以精确到小数点后15位
字符型和文本
Char(M)固定长度字符,M代表长度
Varchar(M) 可变长度字符,M代表长度
char存取数据的速度要比varchar快一点
文本型
tinytext 0-255 最小文本型
text 0-1677万 中型文本
longtext 42亿
日期时间
date 如:“YYYY-MM-DD”
time 如:“HH:MM:SS”
datetime 如:“YYYY-MM-DD HH:MM:SS”
显示数据表
SHOW TABLE FROM table_name;
显示表的结构
DESCRIBE table_name;
删除表
DROP TRABLE table_name;
修改
使用phpmyadmin来修改
数据处理SQL
结构化查询语言
SQL的主要功能
增 删 改 查
增加:----------- INSERT INTO table_name(字段1,字段2,….) VALUE(值1,值2,…..);
可以指定ID字段,并给id赋值
设置客户端请求的字符集(中文乱码解决):set names gbk;
删除:----------- DELETE FROM table_name [WHERE 条件];
WHERE 字段>值
如果省略where条件,所以得都删除
delete from table1 where id>5;删除id大于5的所有
delete from table1 where id>15 andcontent='上市大公司';
查询:--------- select 字段 from table_name;
describe命令查看数据库表里的字段
导入saixinjituan.sql文件到mysql数据库
先建立一个数据库:然后选择当前数据库;选择菜单栏的导入;
SELECT 字段列表|* FROMtable_name [WHERE条件][ORDER BY][LIMIT]
字段列表|*FROM ------ 查询指定几个字段的信息,使用通配符 * 可以查询所有字段
where条件 如果省略将显示所有记录
order by ---------- 查询的记录按那个字段排序 ASC升序(默认)DESC降序
select* from news order by ID desc;
LIMIT限制输出的记录数-----LIMIT 开始行号,记录数(用于数据分页)
模糊查询用%代替
selectid,title,hits from 007_news where id<50 order by id;
select* from 007_news where id<50 order by id,hits desc;
selectid,title,hits from 007_news where id<50 order by id limit 0,5;
selectid,title form 007_news where keywords is null;查询id或title为空的
修改:-------- UPDATE table_name SET 字段1=新值1,字段2=新值2[WHERE 条件];
update table1 set title='娱乐',author='作为',addate='14399999'where id=33;
PHP连接MySQL服务器
php连接MySQL服务器:mysql_connect()、exit()、mysql_error()
选择数据库-----------mysql_select_db()
设置mysql返回数据字符集--------mysql_query(“set names utf8”)
执行SQL语句---------mysql_query()
从结集中取出记录总数-----------mysql_num_rows()
从结果集中取出一行数据---------mysql_fetch_row()、mysql_fetch_array()、mysql_fetch_assoc()
PHP补充函数----------include()、require()、md5()、urlencode()、urldecode();
PHP+MySQL数据库编程步骤---------
一、登录mysql服务器
二、选择当前数据库
三、设置请求字符集
四、执行SQL语句
PHP函数连接mysql数据库-------- mysql_connect()
resource $link =mysql_connect($db_host,$db_user,$db_pwd)
resource$link = mysql_connect(“localhost”,”root”,””) 不推荐
resource 连接成功,返回一个资源类型的标识符,如果失败,返回false
$db_host 代表mysql服务器的主机名或IP地址,本地为localhost
$db_user 代表mysql服务器的用户账号
$db_pwd 代表mysql服务器的用户密码
exit()输出一个信息,并终止程序运行
void exit([string $status]);
exit(“程序出错了”)
mysql_error()主要用于测试,一旦上线就不可能再使用
输出上一次操作mysql出错的文本信息
语法:mysql_error([resource $link])
$link代表当前的活动链接
@屏蔽系统的错误信息
选择数据库mysql_select_db()
选择要挫折的数据库------返回布尔值
bool mysql_select_db(string $database_name [,resource $link_indentifier])
$database你要操作的数据库名称
[$link]可选 ,代表当前的活动链接
返回值:成功------true 失败-----false
设置MySQL返回的数据字符集
mysql_query(“set names utf8”)
执行SQL语句
mysql_query()---------执行各种SQL语句
语法:
resource $result =mysql_query($sql[,$link]);
$sql 各种SQL语句
增$sql = “insertinto table_name(title,id) values(‘title’,’id’)”;
删$sql = “delete from table_name [where id=5]”;
改$sql = “update table_name set title=’新title’[where id=5]”;
查$sql = “select * from table_name”;
$link当前活动的链接,如果省略,就以上一个打开的链接为准
返回值:当执行SQL语句时,成功返回结果集 是一个资源的数据类型,失败返回FALSE
从结果集中读取数据
取出一行----mysql_fetch_row() 每次读一行数据
从结果集中读取一行数据,并以枚举数组返回
返回一个数组 array mysql_fetch_row(resource$result)
$result代表返回的结果集 返回一个枚举数组,也就是说这一行是存在数组中的,
$row= mysql_fetch_row($result,$link);