MySQL (二) 字符 DML DDL

修改root用户密码
--进入到mysql数据库
use mysql;
--执行修改语句
update user set password = PASSWORD("NEWPASSWORD") where user = 'username';
--修改完成之后使之生效
flush privileges;
--然后退出 便修改成功
介绍几款MySQL的客户端
    1, Navicate
    2, sqlyog
    3, HeidiSQL
第一个SQL命令
显示所有数据库

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| hive               |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
5 rows in set (0.31 sec)
系统数据库的介绍:
Information_schema 
提供了访问数据库元数据的方式。
什么是元数据?元数据是关于数据的数据,如数据库名称、表名、列名、列的数据类型。

Mysql
存储了系统用户信息、用户权限信息。

Performance_schema 
提供进程等待的详细信息,包括锁、互斥变量、文件信息。

Test 测试用的数据库,或删除
创建数据库及使用数据库
--创建数据库
create database dbname;

--使用数据库
use dbname;
Mysql的字符集
--查看数据库数据集

mysql> show variables like 'character_set%';
+--------------------------+----------------------------+
| Variable_name            | Value                      |
+--------------------------+----------------------------+
| character_set_client     | utf8                       |
| character_set_connection | utf8                       |
| character_set_database   | latin1                     |
| character_set_filesystem | binary                     |
| character_set_results    | utf8                       |
| character_set_server     | latin1                     |
| character_set_system     | utf8                       |
| character_sets_dir       | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.00 sec)

修改字符集的方法:
1,停止MySQL服务。
net stop mysql
2, 修改my_default.ini文件为my.ini。

这里写图片描述

3, 启动mysql , net start mysql
   修改data数据的存放位置。

这里写图片描述

如图中的datadir。
SQL的三个级别
针对操作对象的不同,分成三个不同的语言。

1, 数据库操作(管理)语言, DML
Data management language

2, 数据定义语言,对保存数据的格式进行定义, DDL
Data Definition language

3, 数据库控制语言,针对数据库服务进行管理操作, DCL
Data Control Language 

--DBA : 数据库管理员 database administrator
数据定义语言 DDL
用于操作对和对象属性,这种对象包括数据库本身,以及数据库对象。比如:表、视图等等。DDL对这些对象和属性的管理和定义主要表现在create 、 drop 、alter。一个数据库模型包含该数据库中所有实体的描述定义。

创建数据库
`create database dbname;`

使用数据库:
use dbname;
删除数据库:
drop database dbname;
建表
 -> mysql> create table person_info(
    ->     -> person_id int not null auto_increment,
    ->     -> name varchar(50) not null comment '人名',
    ->     -> country varchar(30) default 'china' not null,
    ->     -> account decimal(10,2) default 0.00 comment '账户',
    ->     -> primary key(person_id)
    ->     -> )engine=innodb default charset=utf8;
Auto_increment : 自增长,初始值为1,每插入一行,自动加1.
Comment : 当前字段的定义说明,备注。
Default : 指定默认值
Primary key : 指定主键。
Engine=innodb : 指定数据库引擎
Default charset=utf8 : 指定编码。
Not null / null : 不能为空/可以为空

查看表结构
desc tablename;

+-----------+---------------+------+-----+---------+----------------+
| Field     | Type          | Null | Key | Default | Extra          |
+-----------+---------------+------+-----+---------+----------------+
| person_id | int(11)       | NO   | PRI | NULL    | auto_increment |
| name      | varchar(50)   | NO   |     | NULL    |                |
| country   | varchar(30)   | NO   |     | china   |                |
| account   | decimal(10,2) | YES  |     | 0.00    |                |
+-----------+---------------+------+-----+---------+----------------+
4 rows in set (0.05 sec)
创建结构相同的表
--注意 tablenameB  必须存在
create table tablenameA like tablenameB;
修改表的名称
    alter oldTableName rename to newTableName;
查看当前数据库所有的表
show tables;
修改字段的类型
alter table tablename modify column_name1 column_desc [first|after] column_name2
增加字段
alter table tablename add column_name column_desc [first|after] column_name;
删除字段
alter table tablename drop column_name;
修改字段的名称
alter table tablename change oldColumnName newColumnName column_desc [first|after] column_name;
数据库的管理语言 DML
DML包括:select , insert , update , delete

insert 的几种语法
--后面的value 列 必须与表列意义对应
insert into tablename values(cols........);
--添加多少就要输入多少
insert into tablename (col1,col2,....) values (val1,val2....)
--新查询出来的表的列 必须和增加的表的列 一一对应
insert into tablename select ******;
insert tablename set col1 = 'val1',col2 = 'val2';
update
update tablename set value1 = value2 where ..........
delete
delete from tablename where condition;
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值