首页 > 数据库技术 > 详细

web前端中基础的MySQL知识点(课堂 笔记)

时间:2015-11-17 23:19:55      阅读:331      评论:0      收藏:0      [点我收藏+]

MYSQL

安装MYSQL

方法一:单独安装MYSQL;

方法二:安装XAMPP集成环境(建议),以下教程默认使用XAMPP环境。

登录

方法一:CMD命令行中操作。

说明:本人的mysql安装在C:\xampp\mysql下,假设mysql未设系统环境变量。

c:cd C:\xampp\mysql\binmysql -uroot -p(此处输入密码然后回车,无密码直接回车)

方法二:XAMPP环境下,启动Apache和Mysql。打开浏览器,地址栏输入http://localhost:88/phpmyadmin,使用WEB界面方式操作数据库。

方法三:下载DBMS(数据库管理系统)软件,用软件界面的方式操作数据库,推荐navicat。

 

SQL语句分四种类型:

  DDL 数据定义语言,比如建库、建表

  DCL 数据控制语言,比如为某用户赋予权限、撤销权限

  DML 数据操纵语言,比如在某张表中插入、更新记录

  DQL 数据查询语言,比如在某张表中查询某些语句

DDL定义数据库+

数据库操作:

创建数据库: 

  方法一:CREATE DATABASE 数据库名称 DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

  方法二:CREATE DATABASE 数据库名称 CHARSET utf8;

  CREATE DATABASE myuser CHARSET utf8;

查看数据库

     SHOW DATABASES;

修改数据库

     ALTER DATABASE 数据库名称 CHARACTER SET utf8;

删除数据库

     DROP DATABASE 数据库名称;

使用(切换)数据库

     USE 数据库名称;

 

数据表操作:

创建表:

CREATE TABLE  表名(

    字段名称1  数据类型,

    字段名称2  数据类型,

    ...

  );

例:

CREATE TABLE myuser(    

id INT PRIMARTY KEY AUTO_INCREMENT,    

name VARCHAR(30),    

pwd VARCHAR(30),    

age INT(30),    

email VARCHAR(30),    

addr VARCHAR(30)

);

约束:

主键

  用PRIMARY KEY标识,一张表中只能有一个主键。

自增约束

  用AUTO_INCREMENT标识,一般主键会设为自增长,其他字段只要有需要即可为其添加自增长属性。

删除数据表:

  DROP TABLE 表名;

查看表结构:

  DESC 表名;

DESC TABLE myuser;

MYSQL数据类型

  TINYINT 很小的整数 1个字节

  SMALLINT 小的整数 2个字节

  MEDIUMINT 中等大小的整数 3个字节

  INT 普通大小的整数 4个字节

  BIGINT 大整数 8个字节

  FLOAT 单精度浮点数 4个字节

  DOUBLE 双精度浮点数 8个字节

  DECIMAL 压缩的“严格”定点数(金钱) M+2个字节

DML操作数据

插入语句 :

用法一:INSERT  INTO 表名 VALUES(字段值1,字段值2,...);

INSERT INTO myuser VALUES(    NULL,    "周芷若",    "123",    "20",    "zzr@qq.com",    "峨眉山");

用法二:INSERT INTO 表名(字段名1,字段名2,...) VALUES(字段值1, 字段值2,...);

INSERT INTO     myuser(name,pwd,addr)    values("小昭","123","光明顶");

用法二可省略某些字段,但是省略的字段不可以是非空字段,除非已经为其设置自增长。

更新语句:

用法一 :UPDATE 表名 SET 字段名=字段值;

            修改所有数据(指定字段值)

   用法二:UPDATE 表名 SET 字段名=字段值 WHERE 字段名=字段值;

    SET后面的"字段名=字段值",为设置的值

    WHERE后面的"字段名=字段值",为查询的值

   用法三:UPDATE 表名 SET 字段名1=字段值1,字段名2=字段值2 WHERE 字段名=字段值;

 

下句将myorder表中orderid值为2的记录的addr字段值更新为‘光明顶’:

UPDATE myorder SET addr=‘光明顶‘ WHERE orderid=2;

WHERE后的语句指定了更新的条件,条件是一个表达式,可以使用任意字段作为条件,符合筛选条件的记录才会执行更新。若不加WHERE条件,UPDATE语句会默认将表中所有数据的记录按照语句执行更新,如下:

UPDATE myorder SET addr=‘光明顶‘;

删除语句:

用法一:DELETE FROM 表名;

        注意 删除指定表中所有数据

用法二:DELETE FROM 表名 WHERE 字段名=字段值;

数据库操作原则:只增不删,只做逻辑删除,不做物理删除。

SQL操作(删除)

          物理删除 执行DELETE语句

      逻辑删除

      简单来说,对于用户来讲是删除的,对于实际来讲并没有删除

      为指定表,增加一个字段(state|status),表示当前这条记录是什么状态

       值为1的话,表示这条记录是正常的

       值为0的话,表示这条记录是删除的

 

DQL查询数据

数据库查询语句主要是select语句。

①基本查询 新版本一样

   用法一:SELECT * FROM 表名;

   用法二:SELECT 字段名1,字段名2,... FROM 表名;

②条件基本查询。使用WHERE关键字。

   用法 : SELECT * FROM 表名 WHERE 字段名=字段值;

③复杂条件查询

   AND - 表示多个条件同时满足

   OR - 表示其中一个条件满足

   IN(SET) - 表示一个字段包含多个值

       SET - 多个值,之间使用","

   = - 表示字段值为指定值

   BTWEEN  AND - 等于 >= AND <=

   IS  NULL - 匹配NULL

④排序查询 - ORDER BY 字段名

    ASC - 正序排序,默认值

    DESC - 倒序排序

 

书写顺序:SELECT * FROM 表名 WHERE 条件 ORDER BY 字段名;

练习:

查询myuser表中所有的记录:

select * from myuser;

查询myuser表中符合某条件的记录,使用WHERE关键字。

查询龄小于50岁,且住址在光明顶的记录:

select * from myuser where age<50 AND addr‘光明顶‘

查询id值为1或者name值为“周芷若”的记录

select * from myuser where id=1 OR name=‘周芷若‘;

查询住址在光明顶或者汝阳王府的记录,以下两句等效:

select * from myuser where addr=‘光明顶‘ OR addr=‘汝阳王府‘; select * from myuser where addr IN(‘光明顶‘,‘汝阳王府‘);

查询年龄在15余40之间的记录,以下两句等效:

select * from myuser where age BETWEEN 15 AND 40; select * from myuser where age>=15 AND age<=40;

 

面试题: select * 和select字段哪个效率高?

答案:旧版MYSQL中select *效率低,新版MYSQL(最新版本MYSQL5.6)中查询效率一样高。

排序

select * from myuser order by age asc;//升序排列,不写asc默认即升序

select * from myuser order by name desc;//降序排列,字符串比较按照unicode码比较

web前端中基础的MySQL知识点(课堂 笔记)

原文:http://www.cnblogs.com/--silence/p/4973037.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!