==============================
MYSQL 数据库的常见操作
==============================
一、mysql 的连接与关闭
-h:指定所连接的服务器位置
-u:数据库的用户名
-p:数据库的密码
- 1 mysql-u 用户名 -p//连接数据库
- 2 密码
- 3 exit //关闭数据库
- 1 mysql_connect($host, $user, $password); //连接数据库
- 2 mysql_close() //关闭数据库
二、创建数据库
1、创建一个名为 test1 的数据库
1 mysql> create database if not exists test1;
2、显示所有数据库
- 1 mysql> show databases; 2+--------------------+ 3| Database | 4+--------------------+ 5| information_schema | 6|mysql| 7| performance_schema | 8| test | 9| test1 |10+--------------------+115 rows in set (0.00 sec)
3、使用名为 test1 的数据库
1 mysql> use test1;
4、删除一个名为 test1 的数据库
1 mysql> drop database if exists test1;
5、创建一个表
三、数据表内容的简单管理
1、添加数据 表记录
1 insert into 表名 (字段名称, 字段名称...) values(值 1, 值 2...);
2、删除数据
1 delete from 表名 where id=1;
3、修改数据
1 update 表名 set 字段名称 = 新值, 字段名称 = 新值... where id=1;
4、查看数据
1 select 字段名称, 字段名称... from 表名;
5、创建表
- 1 create table 表名(
- 2idint,
- 3usernamevarchar(30),
- 4ageint
- 5);
四、数据值和列的类型
1、数值
- 1 int
- 2 tinyint
- 3 字段属性:
- 4 无符号的数 unsigned 增大存储范围
- 5 int(n) (n)默认情况下没有任何意义 不会影响存储范围
- 6zerofill属性 0填充3 001 012 123 1234
- 7 小数
- 8 float(n,m)
- 9 float(6,2); n共几位 2小数点后保留几位
- 10 decimal(6,2);
2、字符
- 1 char(n) 固定长度 n0-255密码char(32)
- 2 varchar(n) 可变长度 用户名 n0-65535 varchar(20)
3、时间和日期 int
4、NULL
五、创建索引
1、主键索引 primary key
一个数据表只能指定一个主键,而且主键的值不能为空
声明一个整形的字段 cid,设置其属性为 NOT NULL 和 AUTO_INCRENENT,并在字段后使用 PRIMARY KEY 设置该字段为主键索引。在创建 book1 时,声明的字段 bid 也设置相同的属性,而且使用另一种从句的方式将其设置为主键索引。并在 book1 表中声明一个 cid 的字段,用于保存 book0 表中的设置为主键的 cid
- 1mysql> create table book0 (
- 2 ->cidINT NOT NULLAUTO_INCREMENTPRIMARY KEY,
- 3 ->booknameVARCHAR(15)NOT NULL
- 4 -> );
- 5Query OK,0rows affected (0.14 sec)
- 6
- 7mysql> create table book1 (
- 8 ->bidint(10)NOT NULL AUTO_INCREMENT,
- 9 ->cid MEDIUMINT(8)NOT NULL,
- 10 ->detailTEXT NOT NULL,
- 11 ->priceDOUBLE NOT NULL,
- 12 -> PRIMARY KEY (bid)
- 13 -> );
- 14Query OK,0rows affected (0.11sec)
注意:防止数据不一致,在删除一条记录之前,必须检查在其他数据表里是否存在对这条记录的引用
2、唯一索引 UNIQUE
避免数据重复出现
在创建表 book2 时,为类别名字段 bookname 使用关键字 UNIQUE 将其定义为一个唯一索引,避免插入数据时出现重复的类别名称
- 1mysql> create table book2 (
- 2 ->cidINT NOT NULLAUTO_INCREMENTPRIMARY KEY,
- 3 ->booknameVARCHAR(15)NOT NULL UNIQUE
- 4 -> );
- 5Query OK,0rows affected (0.08sec
3、普通索引 INDEX
仅提高查询的速度
1 CREATE INDEX ind ON book3(uid,cid); #为 book2 表的两个列创建名为 ind 的索引
4、全文索引
mysql 只支持英文文本
来源: http://www.cnblogs.com/sqyysec/p/6777820.html