mysql安装


  • 下载社区版本MySQL软件包(地址),或者windows installer
  • 接压缩安装包到目标路径
  • 在系统变量Path中加入目标路径
  • 在mysql安装路径下,修改配置文件mysql-default.ini:

    basedir = C:\mysql\mysql(mysql所在目录)

    datadir = C:\mysql\mysql\data(mysql所在目录\data)

  • 以管理员身份启动CMD,运行安装: mysqld -install
  • 启动mysql: net start mysql
  • 登陆mysql:mysql -u root -p
  • 更改密码:mysql> update mysql.user set password=PASSWORD('123') where User='root' ;
  • mysql> flush privileges

表操作


  • 创建 create table [模式名].tablename(column_name 数据类型 default 值,......);

  • 删除表: drop table table_name;
  • 重命名表名:alter table table_name rename to new_table_name;
  • 添加列: alter table tablename add ......;
  • 修改列: alter table tablename modify ......;
  • 删除列: alter table tablename drop column_name;
  • 重命名列名:alter table tablename change old_column_name new_column_name;
  • 删除表中的数据:truncate tabl_name;

约束


  • 非空约束:在列定义和修改是追加 not null,取消非空约束追加 null;
  • 唯一约束:UNIQUE
    • 列级约束语法:在列定义后加 unique 关键字;
    • 表级约束语法(为多列建立组合约束):在创建表或修改表(add)时加入:unique(列名) 指定约束名:constraint 约束名 unique(列名,列名,....);(几个列名对应值组合不一样)
    • 删除唯一约束:alter table table_name drop index 约束名;
  • 主键约束:primary key
    • 在定义列时,追加 primary key
    • 表级约束语法:constraint 约束名 primary key(列名),或者 primary key(列名);
    • 删除主键约束:alter table table_name drop primary key;
    • 增加主键约束:add primary key(列名); modify 列名 primary key;
    • 主键自增长:auto_increment primary key
  • 外键约束:references table_name(column_name)
    • 列级约束:追加 references table_name(column_name);
    • 表级约束:foreign key(column_name) references table_name(column_name);
    • 为外键约束指定名字:constraint 约束名 foreign key(column_name) references table_name(column_name);
    • 删除约束:drop foreign key 约束名;
    • 外键约束可以自参照;
    • 主表删除时动作:追加 on delete cascade 或 on delete set null;
    • 列的值可以为null;
  • CHECK约束:追加 check(表达式);(不过,不起作用)

索引


  • 创建:create index index_name on table(column_name);
  • 删除:drop index index_name on table(column_name) ;
  • mysql数据库要求不同表,索引可以相同,oracle则要求索引名全局唯一;

视图


  • 创建:create or replace view view_name as 查询语句;
  • with check option ,创建的视图不可修改;
  • oracle 数据库:with read only;
  • 删除:drop view view_name;

记录的插入,修改,删除


  • 插入:insert into table_name[ (column_name,.......)] values(value,......);或者可以用select查询子句来插入值;
  • update:update table_name set column_name=value where 条件表达式;
  • delete from : delete from table_name where条件表达式;

MySQL密码重置


  • net stop mysql
  • mysqld -nt --skip-grant-tables
  • 打开一个新命入令行窗口,执行mysql,此时不需密码即可连接
  •  use mysql;
    update user set password=password("新密码") where user="root";
    flush privileges;
    exit;
  • 进任务管理器关闭mysqld -nt进程
  • net start mysql

tips


  • 利用Explain命令分析sql执行效率

【9-2】mysql数据库学习01的更多相关文章

  1. MySQL数据库学习: 01 —— 数据库的概述

    壹 概述 一 了解SQL 1.1 数据库基础 1.1.1 什么是数据库 数据库(database)保存有组织的数据的容器(通常是一个文件或一组文件). 易混淆:人们常常用“数据库”这个词语来代表他们使 ...

  2. MySQL数据库学习笔记(十二)----开源工具DbUtils的使用(数据库的增删改查)

    [声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...

  3. MySQL数据库学习笔记(十)----JDBC事务处理、封装JDBC工具类

    [声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...

  4. MySQL数据库学习笔记(九)----JDBC的ResultSet接口(查询操作)、PreparedStatement接口重构增删改查(含SQL注入的解释)

    [声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...

  5. Mysql数据库学习笔记之数据库索引(index)

    什么是索引: SQL索引有两种,聚集索引和非聚集索引,索引主要目的是提高了SQL Server系统的性能,加快数据的查询速度与减少系统的响应时间. 聚集索引:该索引中键值的逻辑顺序决定了表中相应行的物 ...

  6. MYSQL数据库学习笔记1

      MYSQL数据库学习笔记1 数据库概念 关系数据库 常见数据库软件 SQL SQL的概念 SQL语言分类 数据库操作 创建数据库 查看数据库的定义 删除数据库 修改数据库 创建表 数据类型 约束 ...

  7. MySQL数据库学习笔记<一>

    MySQL基本概念以及简单操作   一.MySQL   MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于Oracle 旗下产品.MySQL 是最流行的关系型数据库管理系 ...

  8. MySQL数据库学习初步

    我使用的环境是Win7,开始学习PHP和MySQL,并且买了本<Head First PHP & MySQL>,可以从Head First Labs官网获得HeadFirst系列书 ...

  9. mysql数据库学习目录

    前面的话 对于前端工程师来说,数据库并不是主要技能点,但是基本的增删改查操作还是需要了解的.小火柴将mysql数据库的学习记录整理如下 目录  前端学数据库之基础操作 前端学数据库之数据类型 前端学数 ...

随机推荐

  1. .net config文件 配置类的集合

    1,appconfig文件 <configSections> <section name="ToolConfig" type="DMTools.Tool ...

  2. XCode显示iOS Simulators时不显示系统版本号并出现Identifier(UUID)

    如果出现如下的显示问题,说明你添加了多个相同系统版本的iOS Simulators: 打开Windows->Devices,查看已经出现了相同版本的模拟器: 那么我们删除一些相同的模拟器,即可解 ...

  3. 洛谷P1629 邮递员送信

    题目描述 有一个邮递员要送东西,邮局在节点1.他总共要送N-1样东西,其目的地分别是2~N.由于这个城市的交通比较繁忙,因此所有的道路都是单行的,共有M条道路,通过每条道路需要一定的时间.这个邮递员每 ...

  4. Mac 配置 vim

    Mac 配置 vim 安装 vim 7.4 cd ~ hg clone https://code.google.com/p/vim/ cd vim ./configure --with-feature ...

  5. A.Kaw矩阵代数初步学习笔记 7. LU Decomposition

    “矩阵代数初步”(Introduction to MATRIX ALGEBRA)课程由Prof. A.K.Kaw(University of South Florida)设计并讲授. PDF格式学习笔 ...

  6. AngularJs form.FormController、ngModel.NgModelController

    form.FormController FormController跟踪所有他所控制的和嵌套表单以及他们的状态,就像有效/无效或者脏值/原始. 每个表单指令创建一个FormController实例. ...

  7. vc++ 中 IntelliSense: 无法打开 源 文件 "xxx.h"

    类似无法找到文件的问题都可以用这个方法解决,就是路径的问题.vc++2008的项目转到vc++2010也可能出现类似的问题. 解决方法: 在  项目属性=>配置属性=>C/C++  =&g ...

  8. 【Alpha版本】 第八天 11.16

    一.站立式会议照片: 二.项目燃尽图: 三.项目进展: 成 员 昨天完成任务 今天完成任务 明天要做任务 问题困难 心得体会 胡泽善 完成我要应聘的列表显示,完成账户信息设置界面 完成我要应聘的详情显 ...

  9. React Native 开发之 (07) 常用组件-View

    掌握了React Native的组件就可以使用IOS的原生组件和API. 一 View组件 就像开发web应用程序中,需要使用很多的HTML标签.例如 div,form.但是在基于DIV+CSS布局的 ...

  10. redis理解

    1. Redis是什么 redis是nosql的一种. 这个问题的结果影响了我们怎么用Redis.如果你认为Redis是一个key value store, 那可能会用它来代替MySQL:如果认为它是 ...