MySQL 语句命令的使用

MySQL 语句命令的使用

数据库的创建:create database 数据库名;不区分大小写,与所用的系统有关,文件夹不分,一般情况下,在创建数据库的时候,加上if not exists ,

create database if not exists Car;

显示当前数据库:show database;

设置字符集和校对规则:create database if not exists 数据库名

character set 字符集名

collate 校对规则

例子:create database if not exists xsm;

character set utf8;

collate utf8_general_ci;

显示服务器上所支持的字符集和校对规则:

show character set;显示的是服务器上所支持的字符集和默认的校对规则

show collation like 'gb2312';凡是显示指定字符集的都显示出来

显示指定库的字符编码:

show create database 数据库名;

注:如果系统的字符编码和数据库的字符编码不一样,则会出现乱码。所以,在设置字符的同时,要把字符编码集设好:

set character_set_client='gbk'; 修改字符编码集,默认的编码是gbk,但数据库结束 是utf8,会造成乱码

set character_set_results='gbk'; 返回的时候也是utf8,索引修改为gbk

数据库的修改: alter 修改

数据库修改的是参数,不能修改数据库的名字

alter database xsxxm;

default character set Latin1;//修改字符集为默认

alter database xsxxm;

character set Latin1;

collate Latin1_swedish_ci;

数据库的删除: drop 删除

drop database xsxxg;

drop database if exists xsxxg;//判断在存在的情况下删除 不会出错

在数据库中创建表:

创建表之前要启动数据库,即开启数据库---------- use 数据库名

显示当前数据库的表格:show tables;

show tables from 数据库名; 是显示指定数据库中的表结构

show create table 表名; 是显示创建表的属性

创建表:

create table[if not exists] 表名(列名类型 选项,列名 类型 选项,列名 类型 选项); 建表

create table xs(id int,name char(10),sex bool,age tinyint,score int);

选项是指:

(1) not null null(默认的为空)

(2) default 默认值

(3) primary key 指定某一列是否为主键 主键的列一定不为空,可把not null去掉

(4) unique key 唯一性,与主键的唯一区别是可以为空

类型有:

date ‘1990-01-09’

char int byte(sex)

varchar 可变的字符

例子:

char(3);类型为字符类型的,是定长的,多舍,少加空格

varchar(30);变长的,30表示的是字符串最多能够存30个,少了不会补空格

创建临时的表------- temporary:

create temporary table t1(int id,name char(10));

临时表只对当时创建的有效,数据库关了之后在启动就没有了。

查看表的结构:

show columns from xs; 查看当前的数据库的表的结构

show columns from tab1 from xsm; 查看指定数据库xsm中的表tab1的结构

show columns from xsm.tab1; 查看指定数据库xsm中的表tab1的结构

表格中插入数据

要求:如果该类为primary key 则该列不能为空

有默认值的列,在插入时可用default

允许为null的列,在插入时可以使用null

如果插入数据时,并没有给每个列都提供值,则不能省去列名表

insert into xs(sid,sname) values('123444','张个');

insert [into] 表名(列表名)values(列表所在的位置);

insert into xs(sid,sname,ssex,sbirthday,memo) values('101101','张宏',1,'1980-6-4','该同学的特长是跑步')

在插入数据时,当我们把每一列都提供了值,可以缺省列表名

insert into xs values(1,'张三',0,18,98);

insert into xs(id) values(1);//插入指定的列,在表名后加括号,指定要加入的列

insert into xs(id) values(1,null);和insert into xs(id) values(1);一样,是在没有设为空时,系统会自动设为空

插入多行数据

insert into xs

(sid,sname,ssex) values('101120','aaa',1),('101121','bbb',1),('101122','ccc',0); 第二种:通过set语句指明要插入的每一行记录中每一列的值

insert into xs

set sid='1001025',sname='ddd',ssex=0;

替换: replace into xs

values('100015','rtyy',0)

修改列表:

(1) 增加列

alter table 表格名

add column 列名 列类型 特性;

add column age tinyint unsigned; unsigned 是无符号类型,写入年龄时不能是负数,只能是大于等于0的数。

add column sex tinyint not null;//修改表格的结构---添加性别列,column是表示列

add column sex tinyint not null default 0;默认值为0

add column idcard char(18) unique after sname; unique 代表唯一性,在sname后面插入,默认插入是末尾

add column score float(8,3);//8是显示的长度,3是小数点之后的位数,如果多余3位,四舍五入

alter table ta

add column score int(8) zerofill int(8) 是显示的宽度,当显示的宽度小于8时,用0补,如果大于8时,长度原样显示

decimal (10,4) numeric(10,3)

(2)对已有列的修改 :设置、删除字符段的默认值 修改已有列的名字、修改已有列的类型以及特性

alter table xs

alter column sbirthday set default '1990-2-2'; 设置默认值

alter table xs

alter column ssex drop default; 删除默认值

修改已有列的名字、修改已有列的类型以及特性

alter table xs

change column memo(旧的) smemo(新的) text; //change即可修改名字也可修改类型

rename table memo to smemo 修改表的名字

alter tables xs

modify column smemo varchar(200) not null; //修改列的类型

alter ignore tables xs

modify column smemo varchar(200) not null; //修改列的类型,不为空是修改不成功的

ignore是对不需要的数据删除

(3)删除已有的列:

alter table xs

drop column credit;

(11)删除表中的数据:

delete from xs; //删除所有的数据

删除符合条件的行

delete from xs

where ssex=1;

delete from xs

where sid='101120';

delete from xs

where scredit>60;

truncate是截断,在删除后是释放了内存中的存储页

truncate table xs;//删除表格中的所以数据 和delete from xs效果 一样,但truncate table xs的效率高

(12)修改表格中的数据:

update xs

set ssex=1

where sid='101122'; //修改的条件

update xs

set sbirthday='1990-8-1'

where ssex=0;

update xs

set scredit=scredit+10;//都加十分

(13)给表格重命名:

alter table xs

rename to 表名;

(14)修改表名命令:

rename table student to xs;

(15)表格的删除:

drop table [if exists] xsm;

(16)所有show 命令:

show databases;

show tables;

show columns from 表名; //显示当前数据库的结构

show columns from 表名 from 数据库 //显示指定数据库的结构

show columns from 数据库.表名 //显示指定数据库的结构

show create database school 显示创建数据库school的详细语句

show create table xs 显示创建数据库中表xs的详细语句

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值