mysql5.0命令_MySQL5.0常用命令

MySQL5.0中文问题:

登录时用命令:

mysql --default-character-set=gbk -u root -p

建表时用命令:

create table name(name varchar(20))[TYPE=MyISAM,]default character set gbk;

=====================

连接服务者:

mysql -h host -u user -p

=====================

新增超级用户:

GRANT ALL PRIVILEGES ON *.* TO grb@"%" IDENTIFIED BY 'password' WITH GRANT OPTION;

=====================

返回当前所选数据库、当前用户、版本信息和当前时间:

select database(),user(),version(),now();

=====================

查看库、表:

show databases;

use databasename;

show tables;

show tables from databaseName;

=====================

建库、删库:

create database if not exsits library;

drop database library;

=====================

建表:

一个表中只能有一个auto_increment;

在没指定default情况下:对于null就插入null,对于not null,数值类型就插入0,字符串类型就插入

空字符串,时间戳就插入当前时期和时

间,enum类型就插入枚举组的第一条?

create table members(member_id int(11) not null auto_increment,fname varc

har(50) default 'guo' not null,lname varchar(50) not null,tel varchar(15),email varchar

(50) no

t null,primary key(member_id));

not null auto_increment default primary key()

=====================

索引:

create table users(

user_id int(4) not null auto_increment,

fname varchar(50) not null,

lname varchar(50) not null,

index id(user_id);

create table users(

id int(4) not null auto_increment,

fname varchar(50) not null,

lname varchar(50) not null,

index (fname,lname),primary key(id));

=====================

为已存在的表建索引:

create index indexname on tablename(column);

=====================

删除索引:

drop index indexname on tablename;

=====================

unique索引:

用unique修饰符指定输入字段值必须唯一.

create table users(name varchar(8),pass varchar(20),unique(name));

=====================

* fulltext全文索引

=====================

主键:

index也可以用于多个字段,插入记录时要求两index不同时重复即可。

create table firewall( host varchar(11) not null, port smallint(4) not null,access enum

('deny','allow') not null,primary key

(host,port));

=====================

* 外键:

删除外键:alter table table_name drop foreign key key_id;

=====================

* 表类型:MyISAM、ISAM、HEAP、BerkeleyDB、InnoDB、MERGE

=====================

复制表:(create table…select不能复制键,要手工创建)

create table newTable select field1,field2 from oldTable where condition;

新建表并复制原表的若干字段:

create table newTable(newField1,newField2) select oldField1,oldField2 from oldTable;

创建一个空副本:

create table newTable select * from oldTable where 0=1;

另一种复制表方法:(MySQL 4.1)

create table newTable like oldTable;

=====================

描述表(查看表结构):

describe tableName;

=====================

查看索引:

show index from tableName;

=====================

查看数据库中表的详细信息:

show table status from databaseName;

=====================

检索用sql命令创建的表:

show create table databaseName.tableName;

=====================

修改表:

alter table members add othermessage varchar(50) not null;//添加字段

alter table tableName add primary key(email);//添加主键

alter table drop primary key;//删除主键

alter table tableName change oldField newField auto_increment unique;//修改已存在字段

alter table tableName drop field;//删除字段

alter table tableName add email varchar(30) after id;//在指定位置添加新字段after或first

alter table tableName alter id set default 0;//设置或删除默认值

alter table tableName add id int(3) auto_increment primary key first;//添加

auto_increment字段后,原有记录会被自动编号

alter ignore table tableName change name name varchar(10) not null unique;//设置某一字段

为unique时用ignore字句删除重复记录

* 添加外键参照;

* 更改表类型;

* 添加删除索引;

alter table addressbook_table default character set gb2312;

=====================

重命名表:

alter table oldTableName rename to newTableName;

或:rename table oldTableName to newTableName;

=====================

删除表:

drop table tableName;

drop table if exsits tableName;

=====================

查询记录:

select id,name,mail from dbname.tablename;

=====================

插入记录:(into是可选的)

insert into members values(null,'guo','guo','7758521','mailtoguoguo@163.com',null);

insert into members(id,name,password) values(last_insert_id()+1,'tom','secret');

insert into members values(a,b,c),(d,e,f),(g,h,i);//一次插入多条记录

插入时间:insert into time(now());

=====================

* replace

=====================

on duplicate key update

insert into menu(id,label,url) values(a,b,c) on duplicate key update label='d',url='e';

=====================

删除所有记录:

delete from members;

=====================

修改记录:

update members set tel='7654321',email='mrguoguo@mail.csdn.net' where member_id=1;

=====================

重复信息只显示一次:

select distinct name from members;

=====================

查询中运用算术运算:

select name,math+physics+chinese from grades;

=====================

使用内建函数:

select count(*) from members;

select avg(math),avg(phisics),avg(chinese) from grades;

select min(math) from grades;

select max(math) from grades;

=====================

排序:

select * from members order by member_id,name desc;//asc

=====================

限制条数:

select * from members limit 2,3;(从第2行开始显示,共显示3条记录)

select * from members limit 19,-1;//返回从第20行到表尾的记录

=====================

分组:

select name,count(*) from tableName group by name;

=====================

having类似where

where针对所有记录,通常与select delete update搭配

having只对经过操作的记录检索,以进一步筛选,通常与group by搭配

=====================

* 使用变量

=====================

通配符:

select * from members where name like '%guo%';

=====================

* 为表和列取别名

=====================

复制记录:

insert into users(name,pass) select name,pass from otherTable;

=====================

导出记录:

select * from tableName into outfile 'd:/abc.txt' fields terminated by '\t' enclosed by

'@';

=====================

将.sql或.txt文件导入数据

mysql> \. d:\site\grb.sql

注意:不用逗号结束。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值