MySQL(一)

 

数据库的概念

数据库服务器、数据库和表之间的关系

所谓安装数据库服务器, 只是在机器上安装了一个数据库管理程序, 这个管理程序可以管理多个数据库.

一般开发人员在设计项目的时候会针对每一个应用创建一个数据库.

为了保存每一类实体, 在一个数据库中创建多个表

操作库

创建库

CREATE DATABASE [IF NOT EXISTS] 数据库名 [参数[ 参数] [ 参数]...];

参数:

       CHARACTER SET 码表名

       COLLATE 校对规则名   参见帮助文档第10章

命令:show character set;可以显示MySQL支持的字符集和校对规则

create database school;

创建一个名为school的数据库

use school;

打开数据库school(指定school数据库为当前数据库)

数据库:表、视图、存储过程、触发器等数据对象

 

create database 数据库名[不能是纯数字的,但能用数字打头,不区分大小写]

系统就会在指定的文件夹创建子文件夹

create database if not exists xsxxgl;//如果是已经存在的那就什么都不做,如果没有存在,那么就创建数据库

create database 数据库

character set 字符集的名称   

collate 字符集的校验规则;

 

show character set;//显示MySQL支持的字符集

 

Show collation like ‘latin1%’;   显示latin1字符集可以采用的校对规则

 

显示库

       SHOW DATABASES;

show databases;显示当前数据库服务器上有哪些数据库

 

显示数据库创建语句

       SHOW CREATE DATABASE 数据库名; 查看数据库所采用的字符集

修改库

       ALTER DATABASE 数据库名[ 参数[ 参数][ 参数]...];

       注意: 不能改数据库的名字

删除库

       DROP DATABASE [IF EXISTS] 数据库名;

操作表

操作表之前使用需要先确定使用哪个数据库

       USE 数据库名

创建表

CREATE TABLE 表名(列名 类型[,列名 类型][,列名 类型]...);

查看所有表

       SHOW TABLES;

查看表的创建语句

       SHOW CREATE TABLE 表名;

显示表结构

       DESC 表名;

修改表名

       RENAME TABLE 原表名 TO 新表名;

修改字符集

       ALTER TABLE 表名 CHARACTER SET 字符集名;

删除表

       DROP TABLE 表名;

操作列

追加列

    ALTER TABLE 表名 ADD 列名 类型[,列名 类型][,列名 类型]...;

修改列类型

       ALTER TABLE 表名 MODIFY 列名 类型[,列名 类型][,列名 类型]...;

修改列

       ALTER TABLE 表名 CHANGE COLUMN 原列名 新列名 类型;

删除列

       ALTER TABLE 表名 DROP 列名;

操作数据

插入

语法:

       INSERT INTO 表名[(列名[,列名]...)] VALUES(值[,值]...);

       向user表中插入3条包含中文的数据

insert into user(id,username,gender,birthday,position,salary,resume)

values(1,'张三','男','1990-9-9','程序员',6000,'介绍');

修改

语法

       UPDATE 表名 SET 列名=值[,列名=值]...[WHERE 条件语句];

注意事项

       WHERE子句选择满足条件的行进行更新, 如果不写, 则更新所有行

alter table tab1;

add column sex tinyint not null default 0;//添加列,带有默认值0

 

删除

语法

       DELETE FROM 表名 [where 条件语句]

 

基本查询

1、选择指定的列

select 列名1,列名2...            from 表名               select xid,name,sex,bir                    from xs;

 

select * from xs;

 

select name as 姓名,xid as 学号                 from xs;//as给所选列定义别名

 

查询计算列

select 姓名,总学分,总学分*1.1 as 提高后的总学分                   from xs;

 

select distinct zhuanye                    from xs;//把重复的行去掉

 

替换查询结果中的数据

select xid,name,

case //替换结构的开始

when zscore<50 then '不及格'

when zscore>=50 and zscore<60 then '及格'

when zscore>60  then '优秀'

end //替换结构的结束

主键约束primary key

创建表格的同时常见主键约束

create table table2

(pid char(6) primary key,

pname char(10)

);

 

create table orderdetail

(cutomerid char(6),

productid char(6),

quantity int,

primary key(customerid,productid)

)

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值