zoukankan      html  css  js  c++  java
  • 数据库

    数据库

    数据库的分类

    1. 关系与非关系
    	关系:数据库中表与表之间有联系 -- mysql
        非关系:数据库中没有表的概念 -- Redis、MongoDB(介于关系与非关系之间)
        
    2. 内存与硬盘
    	内存:数据可以永久存储 -- mysql、MongoDB
        硬盘:数据的存取效率极高 -- Redis、memcache
    
    3. sql与nosql
    	sql:数据库操作通过sql语句
        nosql:数据库操作就是key-value形式(value就是一条记录)
    

    连接数据库

    1. 游客登录(不一定能登入,登入了也啥都不能干)
    # 语法
    > mysql
    
    
    2. 账号密码登录
    # 语法
    > mysql -u root -p
    再输入密码,没有任何提示,没有密码直接回车
    
    
    3. 连接指定服务器的mysql
    # 语法
    > mysql -h ip地址 -p 端口号 -u 账号 -p
    回车后输入密码
    
    # 例子
    > mysql -h localhost -p 3306 -u root -p
    
    
    4. 退出数据库
    # 语法
    > quit
    > exit
    

    用户信息查看

    1. 查看当前登录的用户
    # 语法
    mysql> select user();
    
    
    2. root权限下可以查看所有用户信息
    # 语法
    mysql> select * from mysql.user;
    mysql> select * from mysql.user G
    mysql> select user,password,host from mysql.user;
    
    
    3. root登录下,删除游客(操作后要重启mysql服务)
    # 语法
    mysql> delete from mysql.user where user='';
    
    4. root登录下,修改密码(操作后要重启mysql服务)
    # 语法
    mysql> update mysql.user set password=password('123456') where host='localhost';
    
    
    5. 没有登录,修改密码
    # 语法
    > mysqladmin -u 用户名 -p旧密码 -h 域名 password 新密码
    
    # 例子
    > mysqladmin -uroot -p123456 -hlocalhost password root
    
    
    6. root登录下,创建用户
    # 语法
    mysql> grant 权限们 on 数据库名.表名 to 用户名@主机名 indentified by '密码';
    

    数据库的基本操作

    1. 查看已有的数据库
    # 语法
    mysql> show databases;
    
    
    2. 选择某个数据库
    # 语法
    mysql> use 数据库名;
    
    
    3. 查看当前所在数据库
    # 语法
    mysql> select database();
    
    
    4. 创建数据库
    # 语法
    mysql> create database 数据库名 [charset=编码格式];
    
    # 例子:
    mysql> create database xiaowu;
    
    
    5. 查看创建数据库的详细内容
    # 语法
    mysql> show create database 数据库名;
    
    # 例子:
    mysql> show create database xiaowu;
    
    
    6. 删除数据库
    # 语法
    mysql> drop database 数据库名;
    
    # 例子:
    mysql: drop database xiaowu;
    

    表的基本操作

    前提:先选取要操作的数据库
    
    1. 查看已有的表
    # 语法
    mysql> show tables;
    
    
    2. 创建表
    # 语法
    mysql> create table 表名(字段们);
    
    # 例子
    mysql> create table student(name varchar(16), age int);
    
    
    3. 查看创建表的sql
    # 语法
    mysql> show create table 表名;
    
    # 例子
    mysql> show create table student;
    
    
    4. 查看创建表的结构
    # 语法
    mysql> desc 表名;
    
    
    5. 删除表
    # 语法
    mysql> drop table 表名;
    
    # 例子
    mysql> drop table student;
    

    记录的基本操作

    1. 查看某个数据库中的某个表的所有记录,如果在对应数据库中,可以直接查找表
    # 语法
    mysql> select * from [数据库名.]表名;
    注:*代表查看所有字段
    
    
    2. 给表的所有字段插入数据
    # 语法
    mysql> insert [into] [数据库名.]表名 values (值1,...,值n);
    
    # 例子:给有name和age两个字段的student表插入数据
    (插入一条)mysql> insert into student values ('张三', 18);
    (插入多条)mysql> insert into student values ('李四', 20), ('王五', 22);
    (指定数据库)mysql> insert into dawu.student values ('赵六', 18), ('孙七', 19);
    
    
    3. 根据条件修改指定内容
    # 语法
    mysql> update [数据库名.]表名 set 字段1=新值1, 字段2=新值2 where 字段=旧值;
    注:i.可以只修改部分字段 ii.没有条件下,所有的记录都会被更新
    
    # 例子
    mysql> update student set name='小吴', age=19 where name='张三';
    mysql> update student set name='哈哈';
    
    
    4. 根据条件删除记录
    # 语法
    mysql> delete from [数据库名.]表名 where 条件;
    
    # 例子
    mysql> delete from student where name='哈哈';
    
  • 相关阅读:
    .net同时执行多条sql语句(含事务功能)
    SQL标量值函数:小写金额转大写
    找出与某id相近的四条记录
    sql查询优化 索引优化
    半成品收发数量流程管控
    半成品进销存
    多表分页查询存储过程
    DataGridView数据用NPOI导出到Excel
    SQL事务+存储过程
    left join、right join和join的区别
  • 原文地址:https://www.cnblogs.com/yunluo/p/11573435.html
Copyright © 2011-2022 走看看