mySQL基础

时间:2024-03-19 18:12:13

1MySQL的登录

n  进入到CMD模式下,输入以下命令:

n  语法格式:mysql.exe  –h主机名  -u用户名-p密码

n  参数说明:

l  mysql.exe是mysql数据库的主应用程序,可以通过“环境变量”来加载它。

l  -h是主机名。如:localhost或127.0.0.1

l  -u是用户名。默认是root。

l  -p是密码。默认密码是root。

n  注意:-h和localhost之间,-u和root之间,-p和root之间没有空格。

 

mySQL基础

 

2、退出MySQL

       mySQL基础

 

MySQL数据库操作

1、显示数据库

       语法格式:SHOW DATABASES;

       说明:查看你的MySQL服务器上有多少个数据库。

mySQL基础

2、创建数据库

l语法:CREATE DATABASE db_name [IF NOT EXITSTS] [CHARSET utf8]

l参数:

udb_name:自已定义的数据库名称。命名规则:字母、数字、下划线。不能是纯数字的名称。

u[IF NOT EXITSTS]:如果创建的数据库已经存在,则不会报错。

u[CHARSET utf8]:指定当前数据库的字符集,默认为latin1。这里的“utf8”中间不加模线。

l举例:create database 007online charset utf8;

mySQL基础

3、删除数据库

l语法格式:DROP DATABASE db_name [IF EXISTS]

l参数说明:

u[IF EXISTS]条件判断,可选项。如果数据库存在,再进行删除,不会报错。

l举例:drop database 007online;

mySQL基础

 

MySQL数据库字符集

l  描述:通过MySQL命令来修改数据库的字符集

l语法:ALTER DATABASE db_name DEFAULT CHARACTER SET utf8;

l说明:将已存在的数据库的字符集修改成指定的字符集

mySQL基础

 

 

MySQL数据表操作

1、选择当前操作的数据库

l语法:USE db_name;

l说明:选中数据库。

mySQL基础

2、显示数据表

       语法:SHOW TABLES;

       mySQL基础

3、创建数据表

l语法:CREATE TABLE table_name(类型 列的属性,类型 列的属性,……);

l说明:多个字段中间用英文下的逗号(,)隔开。

l参数说明

u列的名称:命名规则与数据库的规则一样。

u列的类型:整型、浮点型、字符型、文本型、日期型

u列的属性

n列是否为空:NOT NULL | NULL

n自动增长:AUTO_INCREMENT

l注意:自动增长属性,只能用于id字段。一个表只能有一个自动增长属性。

n默认值:DEFAULT  value。value的值可以是整型或字符型。

n主键(主索引):PRIMARY KEY。

l注意:主索引一般指定是id字段。一个表只能有一个主索引。

u结论:id字段的属性,必须有三个:not null auto_incrementprimary key

mySQL基础

mySQL基础

 

4、显示数据表的结构

       语法:SHOW CREATE TABLE table_name;

  mySQL基础

 

5describe显示表的结构定义

       语法:DESCRIBE table_name

  mySQL基础

6、删除数据表

       语法:DROP TABLE table_name

  mySQL基础    

7、修改数据表(建议使用phpMyAdmin来修改)

  mySQL基础

 

MySQL数据类型

1、整型

       tinyint       0-255        1个字节长

       smallint      0-65535      2个字节长

       int          0-21亿       4个字节长

       bigint        0-42亿      8个字节长

2、浮点型

       float(M,D) 单精度浮点数。 可以精确到小数点后7位。M代表总宽度,D代表小数位。

              float(8,2)含义:宽度为8,小数为2位,整数为5位。

       double(M,D) 双精度浮点数。可以精确到小数点后15位。M代表总宽度,D代表小数位。

3、字符型——取值范围(0-255)

       char(M)   固定长度字符,M代表长度。

       varchar(M)  可变长度字符,M代表长度。

      

       char(6) 存储“邮编”。只能是6个。

       varchar(6)  最少1个,最多6个。

       简单分析:char()存取数据的速度,要比varchar()快一点。

 

4、文本型

       tinytext   0-255最小文本型

       text      0-1677万   中型文本

       longtext  0-42亿      大型文本

5、日期时间型

       date    形如: “YYYY-MM-DD”

       time    形如:“HH:MM:SS”

       datetime  形如: “YYYY-MM-DD HH:MM:SS”

 

 

 

 

 

SHOW命令的使用

lSHOW CREATE DATABASE db_name;  //查看创建数据库的语句过程

 mySQL基础

从以上图上可见,数据库的默认字符集是latin1

 

SQL基础

1SQL简介

       结构化查询语言(Structured Query Language)

       SQL的主要功能:对数据库中的数据进行操作。

 

2、增加一条记录

       语法:INSERT INTO table_name(字段1,字段2,字段3)  VALUES(值1,值2,值3);

       举例:insert into news(title,author,content,addate) values(‘新闻标题’ , ‘张三’ , ‘新闻内容’ , 140000000);

   mySQL基础

设置客户端请求数据的字符集

      语法:set names gbk;

  mySQL基础  

因为CMD程序本身的字符集是GBK,因此,改成UTF8不能解决乱码问题的。

    mySQL基础

    mySQL基础 

2、删除记录

l语法:DELETE FROM table_name [WHERE 条件]

l  注意:如果省略WHERE条件的话,所有的数据都会被删除。

l  where的语法:where 字段>值

l  举例:delete from news where id>5;  //删除id>5的所有记录

l  举例:delete from news where id<=5;  //删除id<=5的记录

l  举例:delete from news where id=170;  //删除id=170的记录

l举例:delete from news where id<100 and hits<500;  //删除id<100hits<500都删除

   mySQL基础

   mySQL基础

3、修改记录

l语法:UPDATE table_name SET 字段1=新值1,字段2=新值2 [WHERE 条件]

l注意:如果省略where条件,所有的记录都会更新成一模一样。

l说明:不想修改的字段,不用列出。

l举例:update news set title = ‘新标题’ , content = ‘新内容’ where id=5;

   mySQL基础

   mySQL基础

4、查询记录

l  语法:SELECT 字段列表|*  FROM table_name [WHERE条件] [ORDER BY ] [LIMIT]

l  说明

u  字段列表|*:查找指定的几个字段的信息,各个字段没有顺序。使用通过符“*”可以查询所有字段信息。

u  WHERE条件:如果省略的话,将显示所有记录。

u  ORDER BY:对查询的记录按哪个字段排序。ASC升序(默认)、DESC(降序)

n举例:select * from news order by id desc;   //对id字段进行降序显示

n举例:select * from news order by id desc,hits asc;  //id降序排列,如果存在相同,按hits升序排。

uLIMIT限制输出的记录数,主要用于“数据分页”。

n语法:limit 开始行号,记录数

n举例:limit 0,10;    //从第0行起,返回10记录

n举例:limit 10,10;   //从第10行起,返回10记录

(1)排序实例

    mySQL基础

    mySQL基础

(2)常用的查询运算符

   mySQL基础

   mySQL基础