最近学php,mysql也不可避免的学了一下,总结一下最近掌握的mysql基础。
对数据库来说最频繁的操作就是增、删、改、查,作为一个后台程序员应该熟练运用这些sql语句。
首先从mysql控制台今本操作说起,虽然现在有很多图形管理工具,但也不能过于依赖工具。
1、mysql console 中基本操作
——SHOW databases;
——USE db_name;
——SHOW CREATE TABLE table_name //显示创建表的sql语句
——SHOW tables;
——DESCRIBE table_name //显示表的结构
——SELECT * FROM table_name; //查
——INSERT INTO table_name VALUES ('###','###','###','###'); //缩略写法,完整形式 : INSERT INTO table_name (a,b,c) VALUES ('###','###','###'); //增
——UPDATE table_name SET column_name1 = '###', column_name2 = '###' WHERE column_name = '##' AND(OR) column_name2 = '##'; //改
//注意,此句中有两个“=”,但意义不同,第一个等号代表赋值,WHERE后面的表示相等
——DELETE FROM table_name WHERE ...... //删
//delete删表的内容,不删除表结构,还有truncate也可以删,但我还没用过,不太了解,drop语句,慎用,不留痕迹一下全删了,drop db_name/table_name/column_name
——ALTER TABLE table_name //改
ADD COLUMN new_column_name data_type FIRST/AFTER old_column_name; //添加列
DROP COLUMN column_name; //删除列
CHANGE COLUMN column_name ........ //改变现有列名或数据类型
MODIFY COLUMN column_name.......... //修改现有列的数据类型或位置
2、PHP中mysql基本操作
@mysql_connect("localhost","root","password") or die("Can't connect database: ".mysql_error());
@mysql_select_db("db_name");
@mysql_query("SET NAMES 'utf8'");
@mysql_query("########");
@mysql_fetch_array("#######"); //从结果集中获取一行作为关联数组
@mysql_fetch_row("######"); //从结果集中获取一行作为枚举数组(不常用)
@mysql_num_rows("####") //取得结果集中行数
3、关于WHERE
where语句不管是插入、更新、查找、删除等,都会被用到,越详细的WHERE语句能更准确的定位,帮你争取对数据库以最小的影响完成你的操作,当然,WHERE越详细就越复杂。
它后面可以跟的操作符有=、!=、<、>、<=、>=、 in、 like(可以和通配符%结合一起用,效果将会更好) 、between....and........ AND、OR 、NOT,使用AND时应注意顺序,数据库会根据你给的AND条件依次查询。比如有3个and条件,根据第一个能查到1000条结果,第二条能查到500条,第三条仅能查到100条,那么第一个AND条件应该是第三条。
where语句后可以跟GROUP BY; HAVING; LIMIT; ORDER BY; 当然基本不会同时把这些条件一起放进去,太复杂了,但如果有其中多个时,应遵从 WGHOL 的顺序;