Mysql入门实战(上)
发布日期:2016-4-24 20:4:16
1.Mysql服务的启动,停止 一般只要你安装好了,每次启动电脑时mysql服务都是自动启动的。当然mysql也有他自己的启动停止等命令; 1.1windows下Mysql的启动与停止: 在 Windows 命令提示符下运行: 启动: net start MySQL 重启: net restart MySQL 停止: net stop MySQL 1.2Linux下Mysql的启动与停止: 启动: 使用 service 启动:service mysql start 使用 safe_mysqld 启动:safe_mysql& 使用 mysqld 脚本启动:/etc/inint.d/mysql start 停止: 使用 service 启动:service mysql stop 使用 mysqld 脚本启动:/etc/inint.d/mysql stop mysqladmin shutdown 重启: 使用 mysqld 脚本启动:/etc/inint.d/mysql restart 使用 service 启动:service mysql restart 2.数据库管理: 2.1登陆到mysql: 当 MySQL 服务已经运行时, 我们可以通过MySQL客户端工具登录到MySQL数据库中: 命令如下所示: mysql -h 主机名 -u 用户名 -p -h : 该命令用于指定客户端所要登录的MySQL主机名, 登录当前机器该参数可以省略; -p : 告诉服务器将会使用一个密码来登录, 如果所要登录的用户名密码为空, 可以忽略此选项; -u : 所要登录的用户名。 比如登陆本地的: peace@peace-rong:~$ mysql -u root -p Enter password: #键入你安装时用的密码 Welcome to the MySQL monitor. Commands end with ; or \g. 登陆后就可以使用mysql的sql命令了 SQL语句的分类: DDL: 数据定义语言: create / drop / alter DML:数据操作语句: insert / delete /update / truncate DQL: 数据查询语言:select / show 注意:MySQL语句以分号(;)作为语句的结束, 若在语句结尾不添加分号时, 命令提示符会以 -> 提示你继续输入(有个别特例, 但加分号是一定不会错的); 2.2查询所有数据库: 命令:show databases;注意分号结尾 mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema |-- mysql元数据,基础数据 | day01 |--这是我自己建立的数据库 | mysql |--mysql配置数据库,其中包含用户信息。(用户名和密码,权限管理) | performance_schema |--mysql数据库软件的运行数据,日志信息,性能数据 | test | --测试数据库。空的 +--------------------+ 5 rows in set (0.00 sec) mysql> 2.3创建数据库: 要使用数据库你得先创建自己的数据库: 语法格式: create database 数据库名 [其他选项]; 其中其他选项可选; 实践: 创建一个数据库day01并且指定默认字符级为utf-8;注意在sql中需要写成utf8 create database day01 default character set utf8; ##创建成功返回结果如下: Query OK, 1 row affected (0.00 sec) 你可以查看刚刚创建的数据库的默认字符集: show create database day01; ##输出: 'day01', 'CREATE DATABASE `day01` /*!40100 DEFAULT CHARACTER SET utf8 */' 2.4修改数据库: 语法格式: alter database 数据库名 default character set gbk; 实践: 修改刚刚创建的数据库的默认字符; mysql> alter database day01 default character set gbk; Query OK, 1 row affected (0.00 sec) 2.5 删除数据库: 这条语句勿乱用! 语法格式: drop database 数据库名; 实践: 删除刚刚创建的数据库; mysql> drop database day01; Query OK, 0 rows affected (0.01 sec)123123 2.6使用数据库 要对一个数据库进行操作, 必须先选择该数据库, 否则会提示错误: ERROR 1046(3D000): No database selected 两种方式对数据库进行使用的选择: 1. 在登录数据库时指定, 命令: mysql -D 所选择的数据库名 -h 主机名 -u 用户名 -p 例如登录时选择刚刚创建的数据库: mysql -D day01 -u root -p; 2. 在登录后使用 use 语句指定, 命令: use 数据库名; use 语句可以不加分号, 执行 use samp_db 来选择刚刚创建的数据库, 选择成功后会提示: Database changed 3.表管理: 有了数据库你就可以对数据库进行操作了,比如创建和修改表,添加数据等;下面的演示都以day01来表现; use day01;--使用day01 3.1查看所有表: 语法格式: show tables; 演示如下:因为我们还没有创建表所以是空表 mysql> show tables; Empty set (0.00 sec)123123 3.2创建表 有了数据库必须有表才能存储你所需要的数据; 表能存储的字符类型如下: 1.日期和时间: date、time、datetime、timestamp、year 2.数字类型 整数: tinyint、smallint、mediumint、int、bigint 浮点数: float、double、real、decimal 3.字符串类型 字符串: char、varchar 文本: tinytext、text、mediumtext、longtext 4.二进制(可用来存储图片、音乐等): tinyblob、blob、mediumblob、longblob 语法格式 ##简单格式 create table 表名称(列声明);**注意**列声明由逗号隔开最后一个列声明没有逗号。 ##带条件创建,判断是否存在表:不存在则创建: create table if not exists 表名称(列声明); 实践: 以创建 students 表为例, 表中将存放 学号(sid)、姓名(sname)、分数(smark)、年龄(sage)、 这些内容: -- create table create table student( sid INT,-- 学号整型 sname varchar(20),-- 名字字符型 smark int,-- 分数整型 sage int-- 年龄 ); ##输出: Query OK, 0 rows affected (0.01 sec) 查看刚刚创建的表结构: desc student; +-------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------+-------------+------+-----+---------+-------+ | sid | int(11) | YES | | NULL | | | sname | varchar(20) | YES | | NULL | | | smark | int(11) | YES | | NULL | | | sage | int(11) | YES | | NULL | | 3.3删除表 这条语句勿乱用! 语法格式: drop table 表名; 实践: 删除刚刚创建表; mysql> drop table student; Query OK, 0 rows affected (0.01 sec) 3.4修改表: 修改用alter命令语句; 添加字段: -- 添加字段sgender varchar(2);性别 alter table student add column sgender varchar(2); 删除字段: -- 删除字段,先添加sbb字段,然后再删除 alter table student add column sbb varchar(2); alter table student drop column sbb; 1、 修改字段类型: -- 修改字段数据类型。修改字段 smark int到 smark varchar(2); alter table student modify column smark varchar(2); 2、 修改字段名称: -- 修改字段名称,将smark修改为mark alter table student change column smark mark int; 3、修改表名称: -- 修改表名称,将student表名修改为teacher alter table student rename to teacher; 4.增删改数据 毫无疑问查询语句是sql中用的最多的语句,但是没有增删改,查询的存在也无意义。这部分只要讲解:insert,update,delete语句的使用; 4.1插入数据:insert insert语句也是常用语句,用来向表插入一行数据。 语法格式: ##插入:全部字段必须给值 INSERT INTO 表名 VALUES(值);-- 此去必须给全值 ##插入部分字段: INSERT INTO 表名(字段1,字段2) VALUES(字段1的值,字段2的值) 实践: 向student插入数据: -- 1.增加数据 INSERT INTO student VALUES(001,'peace',1,22,'男');-- 注意不能少或多字段值 -- 插入部分字段 INSERT INTO student(sid,sname) VALUES(002,'rong'); 4.2删除数据:delete delete语句要慎用! 语法格式: delete from 表 where 条件(可选) 演示如下: -- 删除所有数据(建议少用)-- -- delete from student; -- 带条件的删除-- delete from student where sid=003; delete和truncate table比较 -- delete from: 可以全表删除 1)可以带条件删除 2)只能删除表的数据,不能删除表的约束 3)使用delete from删除的数据可以回滚(事务) -- truncate table: 可以全表删除 1)不能带条件删除 2)即可以删除表的数据,也可以删除表的约束 3)使用truncate table删除的数据不能回滚 -- TRUNCATE TABLE student; 4.3修改数据:update 这个可以用来修改指定行的内容,比如qq修改名字等 语法格式: update 表名 set 字段名=修改后的值 where 条件(可选); 演示如下: -- 修改所有数据,建议少用-- UPDATE student set mark=10; -- 带条件的修改(建议使用)-- update student set mark=2 where sid=2; -- 修改多个字段,SET 字段名=值,字段名=值,....-- update student set mark=1,sage=23 where sid=1; 上一条: Mysql入门实战(中) 下一条: MySQL从库扩展探索说明
|