数据库连接

mysql -u root -p123456

查看表

show databases

创建数据库设置编码

create table books character set utf8;

创建用户

-- 特别需要注意,在 MySQL 中,账号由两部分组成:
-- 1. user
-- 2. host
-- 即使 user 相同,只要 host 不同,也会被认为是不同账号。
-- 这样可以非常方便对来自不同 ip 地址的访问进行精细的权限控制。
-- 默认情况下,创建的用户 host 为 '%',这是一个匹配符,跟模糊查询里的意思一样,表示匹配所有
create user [用户名] identified by '[密码]';
create user vip identified by 'vippp'; -- 所有连接
create user vip@'127.0.0.1' identified by 'xxx'; -- 本地连接
create user vip@'192.168.%' identified by 'yyy'; -- 192.168 网段的连接

修改密码

set passwor from '用户名' @host=password('新密码');

update mysql.user set password=password('新密码') where user='用户名' and host='%';

删除用户

drop user 用户名;

delete from mysql.user where user='用户名' and host='%'

给权限

grant all on *.* to vip@'127.0.0.1';   --将所有数据库上的所有权利都授予通过本机连接的VIP用户;

grant all privileges on books.* to vip@'%'; --将数据库books上的说有权利都授予所有连接的vip用户;

grant select on books.users to vip@'%';  --将books数据库上的users表的访问权限开发给vip用户;

grant all on *.* to vip@'%' with grant potions;  --witgrant potionss的意思是可以给vip给予权限给别的用户

查看权限

show grants for vip@'%';

进行冲刷

flush privileges

查看当前用户

select user() ,current_user();

创建表

create table 表名

判断存在就删除然后创建

creata table if exists 表名

drop table if exists 表名

创建临时表

create temporary table 表名

mysql自增长

auto_increment

添加外键约束

alter table 表名 add constraint fk_引用id foreign key(引用id) references 被引用表名 (被引用id)

添加主键约束

alter table 表名 add constraint pk_id primary key (id);

删除约束

alter table 表名 drop forign key fk_引用id

添加表的字段

alter table 表名 add 字段名 类型 ;

修改表中的字段为空

alter table 表名 modify 字段名  类型  null

修改表中的字段不为空

alter table 表名 modify 字段名  类型 not null

添加表的字段自增主键

alter table 表名 add column 字段名 类型 auto_increment not null, add primary key(cid);

删除表的字段

alter table 表名 drop column 字段;

删除表的主键

alter table 表名 drop primary key;

创建存储过程  mysql存储100相加的和

create procedure sum(a int)
begin
set @i=0;
set @j=0;
repeat
set @i=@i+1;
set @j=@i+@j;
until a=@i end
repeat;
end $

--能整除三 不能整除9

delimiter $
create procedure asdw(sss int)
begin
set @i=0;
set @cj=1;
repeat
set @i=@i+1;
if @i%3=0 && @i%9!=0 then
set @cj=@cj*@i;
end if;
until @i=sss end repeat;
end

创建索引

CREATE INDEX  索引名字 ON 表名(字段名)

mysql常用命令添加外键主键约束存储过程索引的更多相关文章

  1. MySQL的几个概念:主键,外键,索引,唯一索引

    概念: 主键(primary key) 能够唯一标识表中某一行的属性或属性组.一个表只能有一个主键,但可以有多个候选索引.主键常常与外键构成参照完整性约束,防止出现数据不一致.主键可以保证记录的唯一和 ...

  2. mysql数据库表的自增主键号不规律,重新排列

    mysql数据库表的自增主键ID乱了,需要重新排序. 原理:删除原有的自增ID,重新建立新的自增ID. 1.删除原有主键: ALTER TABLE `table_name` DROP `id`; 2. ...

  3. MYSQL的全表扫描,主键索引(聚集索引、第一索引),非主键索引(非聚集索引、第二索引),覆盖索引四种不同查询的分析

    文章出处:http://inter12.iteye.com/blog/1430144 MYSQL的全表扫描,主键索引(聚集索引.第一索引),非主键索引(非聚集索引.第二索引),覆盖索引四种不同查询的分 ...

  4. sql新建数据库表,及添加多个主键

    create table tb_Modules(module_Id int identity(1,1) primary key,  (自增)model_Name varchar(50) not nul ...

  5. Mysql数据库表的自增主键ID号乱了,需要重新排列。

    Mysql数据库表的自增主键ID号乱了,需要重新排列. 原理:删除原有的自增ID,重新建立新的自增ID. 1,删除原有主键:ALTER TABLE `table_name` DROP `id`; 2, ...

  6. mybatis+oracle添加一条数据并返回所添加数据的主键问题

    最近做mybatis+oracle项目的时候解决添加一条数据并返回所添加数据的主键问题 controller层 @RequestMapping("/addplan") public ...

  7. mysql数据库单表只有一个主键自增id字段,ibatis实现id自增

    mysql数据库单表只有一个主键自增id字段,ibatis实现id自增 <insert id="autoid">        insert into user_id ...

  8. MySQL数据表中有自增长主键时如何插入数据

    原文链接:https://blog.csdn.net/RuobaiMEN/article/details/79794199 MySQL数据库表中有自增主键ID,当用SQL插入语句中插入语句带有ID列值 ...

  9. MySQL常用命令和常见问题

    MySQL常用命令和常见问题 --创建数据库并设置字符集 create database wip default character set utf8 collate utf8_general_ci; ...

随机推荐

  1. 转 深入解析:一主多备DG环境,failover的实现过程详解 以及 11g 容灾库可以在线添加tempfile. 以及 11g 容灾库可以在线添加logile.

    https://yq.aliyun.com/articles/229600 核心,就是11g通过datafille_scn 号来追日志,而不是日志序列号来追日志. 加快standby switchov ...

  2. 标签li设为display inline-block后间距问题

    在对导航栏做水平排列的时候,我们往往对li元素设为display:inline-block 目的是为了,让所有li元素并排在一起,但是遇到个问题,我们的标签之间会产生空白边距 如图所示: 这样看上去, ...

  3. Sequelize Docs 中文文档 v4

    Sequelize Docs 中文文档 v4 写在前面 Sequelize 是一个基于 promise 的 Node.js ORM, 目前支持 Postgres, MySQL, SQLite 和 Mi ...

  4. LeetCode 981.基于时间的键值存储(C++)

    创建一个基于时间的键值存储类 TimeMap,它支持下面两个操作: 1. set(string key, string value, int timestamp) 存储键 key.值 value,以及 ...

  5. Kudu 常见的几个应用场景

    不多说,直接上干货! Kudu 常见的几个应用场景 实时更新的应用.刚刚到达的数据就马上要被终端用户使用访问到. 时间序列相关的应用,需要同时支持: 根据海量历史数据查询. 必须非常快地返回关于单个实 ...

  6. 13、Selenium+python+API分类总结

    Selenium+python+API分类总结 http://selenium-python.readthedocs.org/index.html 分类 方法 方法描述 客户端操作 __init__( ...

  7. Java Executors小结

    一 Executors提供了一系列工厂方法用于创先线程池ThreadPoolExecutor线程池的具体实现类,一般用的各种线程池都是基于这个类实现的 返回的线程池都实现了ExecutorServic ...

  8. SpringBoot系列之——整合JPA、mysql

    一.JPA      1. 概念:JPA顾名思义就是Java Persistence API的意思,是JDK 5.0注解或XML描述对象-关系表的映射关系,并将运行期的实体对象持久化到数据库中. 2. ...

  9. C语言中的重定向输入

    所谓重定向输入,就是不用从键盘一组一组的输入数据,而是保存为一个文件,直接将该程序的测试数据进行输入即可:使用freopen()函数会将标准输入stdin重定向到文件input.txt(这个文件名自己 ...

  10. springmvc+spring+mybatis+sqlserver----查询sqlserver----有返回参数

    <resultMap type="java.util.HashMap" id="resultMap"> <result column=&quo ...