MySQL命令行数据操作使用心得(总结版)(一)

2014-11-24 16:58:37 · 作者: · 浏览: 2

MySQL命令行数据操作使用心得(总结版)
Char 0~255
Varchar 0~65535
text 0~65535(只能保存字符)
www.2cto.com
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()
www.2cto.com
显示当前数据库信息
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
mysqldump –uroot –p joke table>joke.sql
导出(备份)数据库
mysqldump -u root -p 数据库名>c:/文件名.sql
2,表操作table
建立表
命令:create table <表名> ( <字段名1> <类型1> [,..<字段名n> <类型n>]);
mysql> create table MyClass(
> id int(4) not null primary key auto_increment,
> name char(20) not null,
> sex int(4) not null default '0',
> degree double(16,2));
mysql> create table classify(
->title varchar(100) primary key,content longtext,author longtext,board lon
gtext,datatype longtext);
www.2cto.com
获取表结构
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';
www.2cto.com
用文本方式将数据装入数据库表中(例如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 字段名
www.2cto.com
更新字段内容
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
www.2cto.com
字段类型
1.INT[(M)] 型:正常大小整数类型
2.DOUBLE[(M,D)][ZEROFILL] 型: 正常大小(双精密)浮点数字类型
3.DATE 日期类型:支持的范围是1000-01-01到9999-12-31。MySQL以YYYY-MM-DD格式来显示DATE值,但是允许