MySQL基础

一、Windows 环境 启动mysql
  • 开始 -> 运行 -> cmd > mysql –u root –p
  • -u name 或 –user=name  用来指定使用MySQL的用户名;
  • -p  作用是让mysql在启动时提示人们输入密码;
 
常用的命令:
  • status (\s) 查看数据状态信息 
  • clear (\c) 放弃正在输入的命令 
  • exit 或 quit (\q) 退出mysql程序 
  • help (\h) 显示帮助信息(命令清单) 
  • use database (\u) 选择一个数据库 
  • show databases 查看数据库
 
二、数据库设计:
1、规范化(范式理论)
  • 第一范式 :内容相似的数据列必须消除(“清除”的办法是再创建一个数据表来存放); 必须为每一组相关数据分别创建一个数据表; 每条数据记录必须用一个主键来标识;  数据库表中的字段都是单一属性的,不可再分。
  • 第二范式 :只要数据列里的内容出现重复,就意味着应该把数据表拆分为多个子表; 拆分出来的数据表必须用外键关联起来;
  • 第三范式: 与主键没有直接关系的数据列必须消除(“消除”的办法是再创建一个数据表来存放)
  • 范式的优缺点: 范式只是一种帮助人们更好地设计数据库,但不能代替人们思考。在某些场合,机械的按照范式把所有的冗余都消除干净并不能获得最佳效果。
 
2、主键与外键 —— 数据表之间抽象的关联/引用关系是依靠具体的主键和外键建立起来的。
  • 主键必须是唯一的,用来确定数据记录。
  • 外键的作用是引用另一个数据表的某条记录。
 
3、选项和属性
  • AUTO_INCREMENT
    • 整数数据列,id值自动生成机制。
    • 这个属性必须与NOT NULL 、PRIMARY KEY 或者 UNIQUE 属性同时使用。
  • NULL
    • 默认设置,意味着指定列可以不存在值。
  • NOT NULL
    • 将不允许向该列插入NULL值
  • PRIMARY KEY
    • 把数据列定义为主键
  • DEFAULT
    • 确保在没有任何值可用的情况下,赋予某个常量值
  • UNSIGNED
    • 数据都将是无符号整数
 
三、mysql_connect( 服务器地址,用户名,密码 );
  • 链接数据库
 
四、mysql_select_db( 数据库名 );
  • 选择数据库
 
 

五、SQL语句:

  • 查询(SELECT)
    • SELECT * FROM 数据表名(tablename);
      • 查询整个记录的数据(all)
    • SELECT column1,column2 FROM tablename;
      • 查询特定数据
    • SELECT COUNT(id) FROM tablename;
      • 确定数据表里有多少条数据记录
  • WHERE 子句
    • 设置查询条件,过滤掉不需要的数据行
      • SELECT user FROM tablename WHERE id>1 AND id<5;
      • 查询 id>1 且 id<5 的用户名
    • 范围运算符 (BETWEEN...AND... ) —— 判断表达式值是否在指定的范围内
      • SELECT * FROM tablename WHERE id BETWEEN 2 AND 6;
      • id在2~6之间的数据记录
    • 列表运算符 (IN) —— 判断表达式是否为列表中的指定项
      • 判断表达式是否为列表中的指定项,若加NOT则为不在列表中的其余项
      • SELECT * FROM tablename WHERE id NOT IN(1,3,5);
  • 模式匹配符(LIMIT) —— 指定两个参数,第一个为从哪开始(偏移量),第二个是返回多少个。
    • SELECT * FROM tablename LIMIT 5,5;
    • 索引记录行在6~10。
  • 对查询结果进行排序 (ORDER BY)
    • SELECT * FROM tablename ORDER BY id DESC;
    • ASC表示升序,为默认值,DESC为降序
  • 插入数据记录(INSERT)
    • INSERT INTO user (username,password) VALUES ('admin','123456');
      • user (username,password):插入数据表目标
      • ('admin','123456'):插入数据,可以一次插入多条记录,用“,”隔开
  • 修改数据记录(UPDATE)
    • UPDATE users SET user='ray',pass='32323' WHERE id>5;
      • user='ray',pass='32323':修改后的内容
      • id>5:指定修改位置
  • 删除数据记录(DELETE)
    • DELETE FROM users WHERE id>4;
      • id>4:删除范围
 
六、
  • $result = mysql_query( SQL语句 ) —— 执行查询语句
  • mysql_fetch_row($result) —— 返回数据
 
 
 
 
 
posted @ 2015-06-11 11:19  心胸广阔  阅读(124)  评论(0编辑  收藏  举报