mysql数据库替换数据命令_mysql数据库增、删、改、查等基本命令

测试环境:windows7 64位 mysql.exe、Navicat Lite for MySQL、mysql 5.0.18

mysql数据库的基本结构:

数据库(database)包含多个表(table);表包含多个属性列(column);属性列包含多个数据(data);属性列具有四个信息(field,type,null,key,default)。

我们要做得工作就是对database、table、column、data进行增、删、改、查四种操作,一共4*4=16种命令。

1.1 增 database--创建一个数据库

create database databaseName;  --创建名为databaseName的数据库

create database mydb;

1.2 删 database--删除一个数据库

drop database databaseName;  --删除名为databaseName的数据库

drop database if exists databaseName;  --如果存在数据库databaseName,则删除

1.3 改 database

未知

1.4 查 database

show databases;  --显示所有database的databaseName

select database();  --显示当前database的databaseName

2.1 增 table    --创建一个表,创建表时至少有一个column,否则报错

create table tableName

(

columnName1

[,primary key(columnName)]  --也可在此定义主键(primary key),[]中内容可有可无

[,foreign key( columnName1 ) reference tableName2(columnName2)][on delete cascade]/*定义外键columnName1是当前表已经定义的column,tableName2是另一个已经定义的表名,columnName2是另一个  表   的column名字*/

)[comment[=]'table的描述内容'];

--:typeName[null|not null][default defaultValue] [primary key][auto_increment][comment 'column的描述内容'][identity(起始值,递增量)]

--null|not null:空或非空

--default defaultValue:默认值

--auto_increment:从1或当前最大值开始自动增加1,与identity(1,1)一样

create tablemytable

(

idint(8)   not null   auto_increment   comment '表的主键'   primary key,

namechar(10)   not null   default '无',foreign key(id) reference mytable1(id_1) on delete cascade)comment='我的表';

2.2 删 table --删除表

drop table tableName1 [,tableName2]--可删除一个或多个表,默认为当前数据库中的表

drop table databaseName.tableName--删除databaseName中名为tableName的表

2.3 改 table  --改变表的名字

rename table tableName to tableName_new [,tableName1 to tableName_new1];--将名为tableName的表重命名为tableName_new

alter table tableName rename to tableName_new;--同上

2.4 查 table--查看表的名字

show tables from databaseName;  --显示databaseName的所有tableName

show tables;  --显示当前database的所有tableName(use databaseName;--进入某个数据库)

3.1 增 column

alter table tableName add [column] columnName ;  --插入columnName,参考2.1

alter table mytable add age int(2) default 0;

alter table tableName add [column] columnNameafter columnName1;  --在columnName1后插入columnName

3.2 删 column

alter table tableName drop [column] columnName;  --删除columnName

3.3 改 column

alter table tableName modify columnName ;  --修改columnName的

alter table mytable modify age int(4);

alter table tableName change columnName columnName_new ;   --修改columnName的名字为columnName_new及其

添加主键约束:

alter table Studetns add CONSTRAINT c1 primary key(Sno);

3.4 查 column --查看表中所有column的columnName及其信息

describe tableName;--查看表名为tableName中的所有column的columnName及其

show columns from tableName;--同上

4.1 增 data

insert into tableName(columnName1,columnName2[,columnName3])values(value1,value2[,value3])[,(value_1,value_2[,value_3])];--插入一行或多行数据

insert into mytable (name,age) values('Bob',20),('Linda',21);

load data local infile 'path/fileName' into table tableName  --将文件中的数据装载到表中,文件中数据用‘\t’分割,数据行用‘\n’分割

load data local infile 'F:/test.txt' into table mytable;

fd61278a1788049d5f601ed135488766.png

4.2 删 data

truncate table tableName;    --清空tableName中的数据

delete from tableName;      --同上

delete from tableName where ;  --删除满足的数据行

delete from mytable where age=20;

4.3 改 data

update tableName set where ;  --改变满足的行中columnName的数据为data

update mytable set age=22 where name='Bob';

4.4 查 data

select columnName1[,columnName2] from tableName where ;  --查找满足的属性名为columnName1[,columnName2]的数据

select name,age from mytable where id=2;

select * from tableName where ;  --查找满足的数据行

扩展1.创建索引

create [unique|cluster] index indexName on tableName(columnName1,columnName2,...)

CREATE INDEX keyIndex ON SC(sno, cno);

扩展2.创建视图

create view viewName(columnName1,columnName2,...) as

create view avgGrade(Sno, avgG) as

select Sno, avg(Grade)fromSCgroup bySnowith check option;

扩展3.1增加用户

insert into mysql.user(Host,User,Password) values("localhost","userName",password("password"));

insert into mysql.user(Host,User,Password) values("localhost","test",password("1234"));

flush privileges;

扩展3.2删除用户

Delete FROM user Where User='userName' and Host='localhost';

Delete FROM user Where User='test' and Host='localhost';

flush privileges;

扩展3.3用户授权

/*将sql server的一合法帐户(user60)加入到你的数据库当中来,并给其授权,使之:

具有创建表的权限

具有对Students表查询的权限

具有对Studetns表的年龄字段修改的权限*/SP_grantdbaccess'user60';grant create table touser60;grant select on Students touser60;grant update(Sage) on students to user60;

mysql官方文档

http://blog.csdn.net/h1017597898/article/details/9815987

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值