一、数据库相关

1.创建数据库:

mysql> create database test default character set utf8 collate utf8_general_ci;
Query OK, 1 row affected (0.00 sec)

2.查询数据:

查询所有数据库:

mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| taotao |
| test |
| xmall |
+--------------------+
6 rows in set (0.00 sec)

查询当前正在使用的数据库:

mysql> select database();
+------------+
| database() |
+------------+
| taotao |
+------------+
1 row in set (0.00 sec)

3.更改数据库信息:

1.更改名字:

已经废弃rename.

1.若库中所有表为MyISAM引擎,则可改库对应的文件夹的名字 
(现如今这种可能性几乎没有,而且该方法需要停机,不太实际) 
关闭MySQL Server:

sudo /etc/init.d/mysql stop

改目录名:

cd /data/mysql; mv old_db new_db;

开启MySQL Server

 sudo /etc/init.d/mysql start

2.重命名旧库下边的所有表

create databases new_db;
rename table old_db.table1 to new_db.table1,old_db.table2 to new_db.table2,...;
drop database old_db;

3.建新库,使用mysqldump工具导出老库数据并导入新库

mysqldump -uuser -ppass -hhost -Pport--single-transaction old_db >old_db.sql
mysql -uuser -ppass -hhost -Pport -e "create database new_db"
mysql -uuser -ppass -hhost -Pport new_db < old_db.sql
mysql -uuser -ppass -hhost -Pport -e "drop database old_db"

其中方法2中表比较多的情况下,一个个写这些名称未免太痛苦了,可用shell脚本或者存储过程来完成

#!/bin/bash
mysqlconn=" mysql -uuser -ppass -hhost -Pport ”
old_db=”old_db ”
new_db=”new_db ”
$mysqlconn -e “CREATE DATABASE $new_db”
params=$($mysqlconn -N -e “SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE table_schema=’$old_db’”)
for name in $params; do
$mysqlconn -e “RENAME TABLE $old_db.$name to $new_db.$name”;
done;
$mysqlconn -e “DROP DATABASE $old_db” 更改字符集:

mysql> alter database test default character set utf8;
Query OK, 1 row affected (0.00 sec)

4.删除数据库

mysql> drop database test;
Query OK, 0 rows affected (0.00 sec)

5.查看数据库字符编码

mysql> show variables like 'character%';
+--------------------------+----------------------------+
| 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)

6.查看数据库端口

mysql> show variables like 'port';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| port | 3306 |
+---------------+-------+
1 row in set (0.00 sec)

二。数据库表操作

1.创建数据表

mysql> create table tb_user(
-> id tinyint(20) not null auto_increment primary key,
-> username varchar(20) not null)engine=innodb auto_increment=7 default charset=utf8;
Query OK, 0 rows affected (0.00 sec)

2.清空表内容

mysql> truncate table tb_user;
Query OK, 0 rows affected (0.02 sec)

3.修改表名字

mysql> rename table tb_user to t_user;
Query OK, 0 rows affected (0.01 sec)

4.查询所有表

mysql> show tables;
+----------------+
| Tables_in_test |
+----------------+
| t_user |
+----------------+
1 row in set (0.00 sec)

5.删除表

mysql> drop table t_user;
Query OK, 0 rows affected (0.01 sec)

6.查询表信息

mysql> desc t_user;
+----------+-------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+----------+-------------+------+-----+---------+----------------+
| id | tinyint(10) | NO | PRI | NULL | auto_increment |
| username | varchar(20) | NO | UNI | NULL | |
+----------+-------------+------+-----+---------+----------------+
2 rows in set (0.00 sec)

7.增加表信息

mysql> alter table t_user add password varchar(20) not null;
Query OK, 0 rows affected (0.02 sec)
Records: 0 Duplicates: 0 Warnings: 0

8.修改列信息

mysql> alter table t_user modify password varchar(15);
Query OK, 0 rows affected (0.02 sec)
Records: 0 Duplicates: 0 Warnings: 0

9.修改列名字

mysql> alter table t_user change password pwd varchar(10) not null;
Query OK, 0 rows affected (0.02 sec)
Records: 0 Duplicates: 0 Warnings: 0

mysql> desc t_user;
+----------+-------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+----------+-------------+------+-----+---------+----------------+
| id | tinyint(10) | NO | PRI | NULL | auto_increment |
| username | varchar(20) | NO | UNI | NULL | |
| pwd | varchar(10) | NO | | NULL | |
+----------+-------------+------+-----+---------+----------------+
3 rows in set (0.01 sec)

10. 删除列名

mysql> alter table t_user drop pwd;
Query OK, 0 rows affected (0.01 sec)
Records: 0 Duplicates: 0 Warnings: 0

mysql> desc t_user;
+----------+-------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+----------+-------------+------+-----+---------+----------------+
| id | tinyint(10) | NO | PRI | NULL | auto_increment |
| username | varchar(20) | NO | UNI | NULL | |
+----------+-------------+------+-----+---------+----------------+
2 rows in set (0.00 sec)



07_mysql常用sql语句的更多相关文章

  1. Mysql 常用 SQL 语句集锦

    Mysql 常用 SQL 语句集锦 基础篇 //查询时间,友好提示 $sql = "select date_format(create_time, '%Y-%m-%d') as day fr ...

  2. Mysql 常用 SQL 语句集锦 转载(https://gold.xitu.io/post/584e7b298d6d81005456eb53)

    Mysql 常用 SQL 语句集锦 基础篇 //查询时间,友好提示 $sql = "select date_format(create_time, '%Y-%m-%d') as day fr ...

  3. 50个常用SQL语句

    50个常用SQL语句 Student(S#,Sname,Sage,Ssex) 学生表  S#学号,主键 Course(C#,Cname,T#) 课程表          C#课程号,主键 SC(S#, ...

  4. oracle sqlplus及常用sql语句

    常用sql语句 有需求才有动力 http://blog.csdn.net/yitian20000/article/details/6256716 常用sql语句 创建表空间:create tables ...

  5. oracle常用SQL语句(汇总版)

    Oracle数据库常用sql语句 ORACLE 常用的SQL语法和数据对象一.数据控制语句 (DML) 部分 1.INSERT (往数据表里插入记录的语句) INSERT INTO 表名(字段名1, ...

  6. 常用SQL语句(增删查改、合并统计、模糊搜索)

    转自:http://www.cnblogs.com/ljianhui/archive/2012/08/13/2695906.html 常用SQL语句 首行当然是最基本的增删查改啦,其中最重要的是查. ...

  7. oracle 常用sql语句

    oracle 常用sql语句 1.查看表空间的名称及大小 select t.tablespace_name, round(sum(bytes/(1024*1024)),0) ts_sizefrom d ...

  8. Sqlite常用sql语句

    sqlite常用sql语句 --返回UTC时间 select CURRENT_TIMESTAMP; --返回本地时间 select datetime(CURRENT_TIMESTAMP,'localt ...

  9. 常用SQL语句集合

    一.数据定义 1.创建新数据库:CREATE DATABASE database_name2.创建新表:CREATE TABLE table_name (column_name datatype,co ...

随机推荐

  1. [luogu P3806] 【模板】点分治1

    [luogu P3806] [模板]点分治1 题目背景 感谢hzwer的点分治互测. 题目描述 给定一棵有n个点的树 询问树上距离为k的点对是否存在. 输入输出格式 输入格式: n,m 接下来n-1条 ...

  2. 读《Tooth-Marked Tongue Recgnition Using Multiple Instance Learning and CNN Features》

    本人 组会汇报的一篇关于齿痕舌判定的文章,贴上PPT 涉及多示例学习和神经网络方面知识. 准确率有待提高哈哈.

  3. 【macOS】 在OpenCV下训练Haar特征分类器

    本教程基于以下环境 macOS 10.12.6,OpenCV 3.3.0,python 3.6.由于网上基于masOS系统的教程太少,想出一篇相关教程造福大家-本文旨在学习如何在opencv中基于ha ...

  4. 刷题upupup【Java中HashMap、HashSet用法总结】

    HashMap: 常用操作 1. containsKey() 判断HashMap是否包含key 2. containsValue() 判断HashMap是否包含“值为value”的元素 3. get( ...

  5. AIX详细查看用户/进程使用内存

    本文来自:https://blog.csdn.net/mydriverc2/article/details/41956063 问题描述:通过topas发现%comp内存已使用98% 问题分析: 1,从 ...

  6. python learn note1

    1.python 的缩进 习惯了java,c++之类的宽容,初学python,被它摆了道下马威,写if else,竟然必须要我正确用缩进格式,原来在python里不能用括号来表示语句块,也不能用开始/ ...

  7. history program(language)

    1950与1960年代 有三个现代编程语言于1950年代被设计出来,这三者所衍生的语言直到今日仍旧广泛地被采用: Fortran (1955),名称取自"FORmula TRANslator ...

  8. Altium designer 新建快捷键

    示例: 1.按下Ctrl: 2.点击需要建立快捷键的图标:点击交互式布线图标,然后在选择性输入要用到的快捷键:

  9. python之生成器与迭代器

    生成器 列表生成式:li = [i for i in range(10)] 将列表生成式中[]换成()即为生成器generator 生成器保存的对象不是具体的数,而是一种算法,一种推导式,调用__ne ...

  10. 背景图片利用backgrond-posintion属性实现不同形式的分割

    <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...