MySQL命令行数据操作使用心得(总结版)
Char 0~255
Varchar 0~65535
text 0~65535(只能保存字符)
Longtext 0~4294967295(只能保存字符)
CMD登陆mysql
mysql -u root -p
mysql -P 3306 -uroot -p123456 (-P必须大写表示端口)
1,数据库操作databases
创建数据库
create database
显示数据库
show databases
删除数据库
drop database <数据库名>
连接数据库
Use <数据库名>
查看当前使用的数据库
select database()
显示当前数据库信息
Show tables
导入sql数据库
mysql -u root -p creat 数据库名 //先创建一个同名数据库
mysql -u root -p 数据库名 <数据库本地地址
use 数据库名 //更新数据库
show table //显示新的导入表
导入.sql文件命令(例如d:/mysql.sql)
use database;
source d:/mysql.sql;
导入导出数据库(解决编码问题)
mysql -uroot -p--default-character-set=utf8 joke<c:/joke.sql
mysqldump –uroot –p joke table>joke.sql
导出(备份)数据库
mysqldump -u root -p 数据库名>c:/文件名.sql
2,表操作table
建立表
命令:create table <表名> ( <字段名1> <类型1> [,..<字段名n> <类型n>]);
create table MyClass(
id int,
name char(20) not null,
sex enum('f','m'));
mysql> create table classify(
->title varchar(100) primary key,content longtext,author longtext,board lon
gtext,datatype longtext);
获取表结构
describe myclass
desc MyClass;
更改表名
rename table 原表名 to 新表名
删除表
drop table <表名>
清空表
delete from 表名
插入表中记录
往表 MyClass中插入二条记录, 这二条记录表示:
编号为1的名为Tom的成绩为96.45
编号为2 的名为Joan的成绩为82.99
编号为3 的名为Wang的成绩为96.5.
insert into MyClassvalues(1,'Tom',96.45),(2,'Joan',82.99), (2,'Wang', 96.59);
insertinto 表名 values("hyq","M");
更新表中数据
update MYTABLE set sex="f" wherename='hyq';
用文本方式将数据装入数据库表中(例如d:/mysql.txt)
load data local infile "d:/mysql.txt" intotable mytable;
删除表中数据
delete from 表名where 表达式
delete from MyClass where id=1;
MySQL批量替换指定字段字符串语句
UPDATE 数据表名 SET 字段名 = replace(字段名, '要替换的字符串', '替换为') WHERE 设定条件;
update xxx set column = repalce(column,chr(ascii),''); //oracle
update jo1 set 内容=replace(内容,char(13)+char(10),''); //回车+换行
3,字段操作
在表中增加字段:
alter table 表名add字段 类型 其他;
例如:在表MyClass中添加了一个字段passtest,类型为int(4),默认值为0
alter table MyClass add passtest int(4) default '0' //其中4可以省略,长度默认为11
删除字段
alter table 表名 drop column 字段名
更新字段内容
update 表名set 字段名 = 新内容
update 表名set 字段名 = replace(字段名,'旧内容','新内容');
文章前面加入4个空格
update article set content=concat(' ',content);
修改字段类型
alter table forum alter column column_name new_data_type
4,索引
提高检索、查询速度;创建维护费时间,占用物理空间,影响插入记录的速录。(解决:先删除索引再插入记录)
建立索引
Create table index1(index(id));
er table forum alter column column_name new_data_type
5,查询操作
查询表
select * from MyClass;
查询前几行数据
select * from MyClass order by id limit 0,2;
查询表中数据总数
select count(*) from table
字段类型
1.INT[(M)] 型:正常大小整数类型
2.DOUBLE[(M,D)][ZEROFILL] 型: 正常大小(双精密)浮点数字类型
3.DATE 日期类型:支持的范围是1000-01-01到9999-12-31。MySQL以YYYY-MM-DD格式来显示DATE值,但是允许你使用字符串或数字把值赋给DATE列
4.CHAR(M) 型:定长字符串类型,当存储时,总是是用空格填满右边到指定的长度
5.BLOB TEXT类型,最大长度为65535(2^16-1)个字符。
6.VARCHAR型:变长字符串类型
查看mysql版本
Select @@Version
查看mysql默认编码
show variables like 'character%';
show variables like "character%";
..
设置MySQL编码
MySQL(版本是5.1.22)支持多种编码格式,并且可以在多个级别上设置不同的编码格式。
- 服务器级:在安装MySQL时可以设置服务器的默认编码格式
- 最简单的修改方法,就是修改mysql的my.ini文件中的字符集键值,
如:default-character-set = utf8
character_set_server = utf8
修改完后,重启mysql的服务,service mysql restart - 数据库级:在创建数据库时可以指定数据库的编码格式,如果不指定,则默认继承服务器的编码格式。示例如下:
CREATEDATABASE db_name DEFAULT CHARACTER SET utf8;
- 表级:在MySQL中可以对同一个数据库中表指定不同的编码格式,如果不指定将继承数据库的编码格式。示例如下:
CREATETABLE `db_name`.`tb_name`(
id VARCHAR(20)NOTNULL,
name VARCHAR(20)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
- 列级:另外还可以对同一个表中的不同列指定不同的编码格式,示例如下:
CREATETABLE `db_name`.`tb_name`(
id varchar(20)NOTNULL,
name varchar(20) CHARACTER SET utf8
);
制定编码方式的一个好处是,增强对中文的处理,可解决表中部分中文字段内容在不同工具下乱码的问题
1.具体查询
SELECT content FROM forum
WHERE content='缩小贫富差距,是一个纠结的课题,怎么缩?关键是收入分配。话语权大的利益群众,收入分配明显偏高,导致收入差距拉大'
2.仔细搜索
SELECT content,
DATE,
url,
id,
ObjectKey,
RobotName,
ExecutionId,
FirstExtracted,
LastExtracted,
ExtractedInLastRun,
LastUpdated,
num
FROM aeolus.forum WHERE id='哄旗飞舞'
3.模糊查询
SELECT 字段 FROM 表
WHERE 字段 LIKE'我%'
4.模糊删除
DELETE FROM aeolus.forum WHEREid LIKE '%' ;
CRLF –
Carriage-Return Line-Feed回车换行 回车(CR, ASCII 13, \r) 换行(LF, ASCII 10, \n)
MySQL命令行数据操作使用心得(总结版)的更多相关文章
- [转]Mysql命令行常用操作
Mysql命令行常用操作 一.从命令行登录MySQL数据库服务器 1.登录使用默认3306端口的MySQL /usr/local/mysql/bin/mysql -u root -p 2.通过TCP连 ...
- MySQL命令行基本命令操作
进入命令模式后, 显示所有数据库 show databases; 选定某个数据库 use 数据库名; 创建数据库 create database 数据库名; 删除数据库 drop table 数据库名 ...
- mysql命令行客户端结果分页浏览
转载请注明出处:http://xiezhenye.com/2008/06/mysql%e5%91%bd%e4%bb%a4%e8%a1%8c%e5%ae%a2%e6%88%b7%e7%ab%af%e7% ...
- cmd 命令行模式操作数据库 添加查询 修改 删除 ( 表 字段 数据)
一 查看数据库.表.数据字段.数据 1 首先配置环境变量 进入mysql 或者通过一键集成工具 打开mysql命令行 或者mysql 可视化工具 打开命令行 进入这样的界面 不同的机器操作不同 ...
- Mysql命令行导入sql数据
mysqldump 是在 操作系统命令行下运行的,不是在 MySQL 命令行下运行的. 登陆数据库: 登陆本地mysql : mysql -h localhost -u root -p123456 ...
- mysql 命令行操作入门(详细讲解版)
之前分享过多次Mysql主题,今天继续分享mysql命令行入门 1. 那么多mysql客户端工具,为何要分享命令行操作? -快捷.简单.方便 -在没有客户端的情况下怎么办 -如果是mysql未开启 ...
- mysql命令行批量插入100条数据命令
先介绍一个关键字的使用: delimiter 定好结束符为"$$",(定义的时候需要加上一个空格) 然后最后又定义为";", MYSQL的默认结束符为" ...
- Mysql命令行备份与还原数据库操作实例
无论是Windows还是Linux,都可以通过如下命令行形式备份Mysql数据库 备份命令: 在windows的DOS窗口命令行或linux的shell命令行,假设需要备份的数据库是advanced: ...
- 通过mysql命令行理解mysql
引言:工具不可谓给我们的生活带来了便利,但有些时候我们却忘记了事物本身的意义.在大多数人都在追捧甚至是盲从各种各样的工具有多先进的时候,你是否有反思过:你目前是否有使用它的资格. 假设你学会了使用一款 ...
随机推荐
- Boost Thread学习笔记五
多线程编程中还有一个重要的概念:Thread Local Store(TLS,线程局部存储),在boost中,TLS也被称作TSS,Thread Specific Storage.boost::thr ...
- uva 1025
紫皮书 非原创…… 某城市的地铁是线性的有n个车站从左到右编号为1-n,有M1辆地铁从第一站出发,有M2辆车从最后一站出发,mario从第一站出发,目的是在时刻T会见车站n的一个朋友(间谍).在车站等 ...
- autotools入门笔记(一)
GNU autotools作用:收集系统配置信息并自动生成Makefile文件. GNU autotools主要包括三个工具:autoconf.automake.libtool,还有很多辅助的工具,包 ...
- android 实现代码关机
开始从网上搜索,通过发action的方式实现,不过一直没有成功. Intent intent = new Intent(); intent.setAction(Intent.ACTION_SHUT ...
- session对象和applicatione对象
ASP.NET 的常用对象有:response对象.request对象.application对象.server对象.session对象.下面主要讨论session对象和cookie对象. sessi ...
- <摘录>详谈高性能UDP服务器的开发
上一篇文章我详细介绍了如何开发一款高性能的TCP服务器的网络传输层.本章我将谈谈如何开发一个高性能的UDP服务器的网络层.UDP服务器的网络层开 发相对与TCP服务器来说要容易和简单的多,UDP服务器 ...
- MySQL内存表的特性与使用介绍 -- 简明现代魔法
MySQL内存表的特性与使用介绍 -- 简明现代魔法 MySQL内存表的特性与使用介绍
- Android动态布局,并动态为TextView控件设置drawableLeft、drawableRight等属性加入图标
注:(图中每个条目和图标都是由代码动态生成) 代码动态布局,并须要为每个条目设置图标,此时用到了 android:drawableLeft="@drawable/icon" 父x ...
- Swift - 二进制,八进制,十六机制的表示方法
当前位置: 首页 > 编程社区 > Swift > Swift - 二进制,八进制,十六机制的表示方法 Swift - 二进制,八进制,十六机制的表示方法 2015-01-23 14 ...
- ActiveX 暴漏你全部信息的可怕的插件!
近期在项目中常常接触ActiveX控件,对于这个名词相信仅仅要是上网看视频的用户一定都会遇到adobe更新或者载入的提示,这就是一个ActiveX控件.一直以为Active控件是处理复杂的页面逻辑提供 ...