您的位置:首页 > 数据库 > MySQL

MYSQL数据库查询删除创建企业基本知识

2016-03-12 23:09 736 查看
数据查询语言(DQL)从表中获取数据
select + where (位置) order by(排序) group by haveby
查询用户:select user,host,password from mysql.user;
select user,host,password from mysql.usser order by(排序) 参数 (如user)asc(升序)
select user,host,password from mysql.uer order by (排序) 参数 (如user)desc(反序)
mysql> select user,host,password from mysql.user order by user asc;
+------+-----------------+----------+
| user | host | password |
+------+-----------------+----------+
| | localhost | |
| | master.test.com | |
| root | localhost | |
| root | master.test.com | |
| root | 127.0.0.1 | |
+------+-----------------+----------+
5 rows in set (0.00 sec)

mysql> select user,host,password from mysql.user order by user desc;
+------+-----------------+----------+
| user | host | password |
+------+-----------------+----------+
| root | localhost | |
| root | master.test.com | |
| root | 127.0.0.1 | |
| | localhost | |
| | master.test.com | |
+------+-----------------+----------+
5 rows in set (0.00 sec)

数据操作语言 (DML)
INSERT (插入) UPDATE (修改,更新) DELETE(删除)
分别用于处理表中的数据,称为动作查询语言
如删除:delete from user where user="要删除的用户名";

事务处理语言(TPL)
数据控制语言(DCL)授权
GRANT REVOKE 控制用户对表和列进行访问

数据定义语言(DDL) 如创建表,删除表
CREATE DROP

指针控制语言(CCL)

总之SQL语句最常用的分类有3类:
DDL数据定义语言(CREATE,ALTER.DROP)(创建,修改,删除)《运维
DML数据操纵语言(SELECT,INSERT,DELETE,UPDATE)(查询,插入,删除,修改)《开发
DCL数据控制语言(GRANT,REVOKE,COMMIT,ROLLBACK)(????????)《运维

创建库:create database 库名; 如
mysql> create database xiaohu;
Query OK, 1 row affected (0.00 sec)

查看库:show databases 如
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| test |
| xiaohu |
+--------------------+
4 rows in set (0.00 sec)

查看建库语句:
show create database 库名\G; 如
mysql> show create database xiaohu\G;
*************************** 1. row ***************************
Database: xiaohu
Create Database: CREATE DATABASE `xiaohu` /*!40100 DEFAULT CHARACTER SET utf8 */ 《提示是用的是utf8字符集
1 row in set (0.00 sec)

那如果要建立不同字符级的数据库如GBK:

mysql> create database qiqi default character set 制定一个字符集 gbk collate 制定调度的一个规则 gbk_chinese_ci;
Query OK, 1 row affected (0.00 sec)

mysql> show create database qiqi\G;
*************************** 1. row ***************************
Database: qiqi
Create Database: CREATE DATABASE `qiqi` /*!40100 DEFAULT CHARACTER SET gbk */ 《gbk字符集
1 row in set (0.00 sec)

创建一个utf8字符集
mysql> create database old default character set utf8 collate utf8_general_ci;
Query OK, 1 row affected (0.00 sec)

mysql> show create database old\G;
*************************** 1. row ***************************
Database: old
Create Database: CREATE DATABASE `old` /*!40100 DEFAULT CHARACTER SET utf8 */ 《utf8
1 row in set (0.00 sec)

GBK 字符 create database qiqi default character set 制定一个字符集 gbk collate 制定调度的一个规则 gbk_chinese_ci;
UTF8 字符 create database old default character set utf8 collate utf8_general_ci;

提示:字符集不一致是造成乱码的罪魁祸首
提示:如果编译的时候制定了字符集,以后在创建数据库就不需要创建字符集了

企业怎么创建数据库?
1,根据开发的程序确定字符集(建议UTF8)
2,编译的时候制定字符集 如
-ddefault_charet=utf8
-ddefault_collation=utf8_general_ci
然后创建数据库默认即可

3编译的时候没有指定了字符集或者指定了和程序不同的字符集,怎么解决?
那么直接指定数据库创建字符集就可以 如:
create database old default character set utf8 collate utf8_general_ci

显示数据库:
show databases;
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| old |
| qiqi |
| test |
| xiaohu |
+--------------------+
6 rows in set (0.00 sec)

如果想显示指定的数据库:
mysql> show databases like '%xiao%';
+-------------------+
| Database (%xiao%) |
+-------------------+
| xiaohu |
+-------------------+
1 row in set (0.00 sec)

显示当前的数据库
select database(); 类似于linux中的pwd
mysql> select database();
+------------+
| database() |
+------------+
| xiaohu |
+------------+
1 row in set (0.00 sec)

删除数据库
drop database 库名 如:
mysql> drop database qiqi;
Query OK, 0 rows affected (0.05 sec)

mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| old |
| test |
| xiaohu |
+--------------------+
5 rows in set (0.00 sec)

连接数据库 相当于linux cd命令
use 库名
mysql> use xiaohu
Database changed

mysql> select database(); 查看当前数据库
+------------+
| database() |
+------------+
| xiaohu |
+------------+
1 row in set (0.00 sec)
mysql> select version(); 查看当前版本
+------------+
| version() |
+------------+
| 5.1.55-log |
+------------+
1 row in set (0.00 sec)
mysql> select user(); 查看当前用户
+----------------+
| user() |
+----------------+
| root@localhost |
+----------------+
1 row in set (0.00 sec)

mysql> select now(); 查看当前时间
+---------------------+
| now() |
+---------------------+
| 2016-02-06 04:37:39 |
+---------------------+
1 row in set (0.00 sec)

删除mysql系统的账号:
drop user ‘user’@‘localhost’
如果drop删除不了
delete from mysql.user where user='root' and host='localhost';
flush privileges;刷新权限
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息