码迷,mamicode.com
首页 > 数据库 > 详细

Mysql

时间:2018-06-07 21:54:22      阅读:177      评论:0      收藏:0      [点我收藏+]

标签:删除   service   sql语句   统一   建表   命令行   sel   ...   rdbms   

一、数据库

数据库服务器(本质就是一台计算机,该计算机之上安装有数据库管理软件的服务端)

数据库管理系统RDBMS(本质就是一个C/S架构的套接字软件)

库(文件夹)

表(文件)

记录(记录一个事物所有典型的特征/数据)

 

数据库管理系统分类:

关系型:有表结构,存取数据前必先定义表结构,存数据必须按照字段的类型或约束来

非关系型:存取数据都是采用key:value的形式

 

二、Mysql

Mysql其实是采用线程池的socket的服务端

1、基本管理

启动:

启动服务端命令:mysqld

启动客户端:mysql -uroot -p -h 127.0.0.1 -P 3306      本机登录mysql服务端可简写为:mysql -uroot -p

 

把mysql软件做成系统服务:

1)、制作之前先把mysql关掉

2)、制作命令:mysql --install

3)、运行——services.msc查看

 

修改管理员密码命令:

mysqladmin -uroot -p原密码 password ‘新密码‘

 

破解管理员密码:

1)、先关闭mysql服务端

2)、以跳过授权表的方式在命令行中启动mysql服务端,命令:mysqld --skip-grant-tables;

3)、客户端直接以无密码的方式登录root用户,命令:mysql -uroot -p

4)、再起一个客户端,设置新的密码:update mysql.user set password=password(‘新密码‘) where user=‘root‘ and host=‘localhost‘;

5)、刷新:flush privileges;

6)、再命令行中用taskkill杀死mysqld服务,命令:taskkill /F /PID...,然后正常启动mysqld

 

统一字符编码:

在根目录下新建一个my.ini文件,文件内容为:

[mysqld]
character-set-server=utf8
collation-server=utf8_general_ci

[client]
default-character-set=utf8

[mysql]
user="root"
password="管理员密码"
default-character-set=utf8

 

2、基本的SQL语句

1)、库(文件夹)

增:

    create database 增加的库名 charset 字符编码;

 

改:

    alter database 库名 charset 字符编码;    (库改的只能是字符编码)

 

查:

     查看所有库的库名:show databases;

     单独查看某一个库的信息:show create database 库名;

 

删:

    drop database 库名;

 

2)、表(文件)

首先切换文件夹:use 库名;

查看当前文件夹:select database();

增:

    create table 增加的表名(

    字段名1 类型[宽度 约束条件],

    字段名2 类型[宽度 约束条件],

    字段名3 类型[宽度 约束条件]

     );             举例:create table t1(id int,name char);

 

改:

    修改表名:

         alter table 表名 rename 新表名;

    修改字段:

         alter table 表名 modify 字段名 数据类型[约束条件];

         alter table 表名 change 旧字段名 新字段名 数据类型[约束条件];

    增加字段:

         alter table 表名 add 字段名 数据类型[约束条件];

         alter table 表名 add 字段名 数据类型[约束条件] first;     (把字段加到第一位)

         alter table 表名 add 字段名 数据类型[约束条件] after 字段名;     (把字段加到某一个字段的后面)

     删除字段:

          alter table 表名 drop 字段名;

     复制表:

           复制表结构 + 记录:

               create table 复制的表名 select * from 被复制的表名;

          只复制表结构:

               create table 复制的表名 select * from 被复制的表名 where 假的条件;

 

查:

    查看当前库下所有的表名:show tables;

    查看表的详细信息:show create table 表名;

    查看表结构:describe 表名;    简写为:desc 表名;

 

删:

     删除表:

         drop table 表名;

     清空表:

          truncate 表名;

 

3)、记录(文件的一行内容)

增:

     insert into 表名(字段1,字段2,字段3) values (字段1的值,字段2的值,字段3的值);

 

改:

    update 表名 set 字段的值 where 判断条件;

 

查:

    select 字段 from 表名;

 

删:

    delete from 表名 where 判断条件;

 

三、表操作

存储引擎:专门用来处理不同类型的文件

 

1、创建表的完整语法:

create table 增加的表名(

字段名1 类型[宽度 约束条件],

字段名2 类型[宽度 约束条件],

字段名3 类型[宽度 约束条件]

);    

 

类型:类型是限制字段必须以什么样的数据类型传值

约束条件:约束条件是在类型之外添加一种额外的限制

 

注意:

1)、在同一张表中,字段名是不能相同的

2)、宽度和约束条件可选,字段名和类型是必须的

3)、最后一个字段后不能加逗号

 

2、mysql常用数据类型

 

Mysql

标签:删除   service   sql语句   统一   建表   命令行   sel   ...   rdbms   

原文地址:https://www.cnblogs.com/Python1/p/9020326.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!