mysql

#学生表
CREATE TABLE student(
studentNo INT(4) NOT NULL PRIMARY KEY COMMENT '学号',
loginPwd VARCHAR(20) NOT NULL COMMENT'密码',
studentName VARCHAR(20) NOT NULL COMMENT'姓名',
sex CHAR(2) NOT NULL DEFAULT'男' COMMENT'男',
gradeID INT(4) UNSIGNED COMMENT'年级编号',
phone VARCHAR(50) COMMENT'电话',
address VARCHAR(255) DEFAULT'地址不详' COMMENT'地址',
        bronDate DATETIME COMMENT'出生日期',
        email VARCHAR(50) COMMENT'邮件账号',
        identityCard VARCHAR(18)UNIQUE KEY COMMENT'身份证号'
)COMMENT='学生表';
#年级表
CREATE TABLE grade(
gradeID INT(4) UNSIGNED PRIMARY KEY COMMENT'年级编号',
gradeName VARCHAR(20) COMMENT'年级名称'
)COMMENT='年级表';
#科目表
CREATE TABLE subject1(
subjectNo INT(4) PRIMARY KEY AUTO_INCREMENT COMMENT'课程编号',
subjectName VARCHAR(50) COMMENT'课程名称',
classHour INT(4) COMMENT'学时',
gradeID INT(4) COMMENT'年级编号'
)COMMENT='科目表';
#成绩表
CREATE TABLE result(
studentNo INT(4) NOT NULL COMMENT'学号',
subjectNo INT(4) NOT NULL COMMENT'课程编号',
examDate DATETIME NOT NULL COMMENT'考试日期',
studentResult INT(4) NOT NULL COMMENT'考试成绩'

)COMMENT='成绩表';

create database 数据库名;创建数据库    DROP DATABASE 数据库名; 删除数据库

NOT NULL 非空约束    DEFAULT 默认约束    UNIQUE KEY 唯一约束      COMMENT 表名 :注释

PRIMARY KEY 主键约束    FOREIGN KEY 外键约束     AUTO_INCREMENT 自动增长(默认为1)

UNSIGNED  无符号标识符    ZEROFILL 有符号标识符(不足以0补齐)

修改表名    ALTER TABLE 旧表名 RENAME 新表名;    添加字段    ALTER TABLE 表名 ADD  字段名 数据类型;

修改字段    ALTER TABLE 表名 CHANGE 旧字段名 新字段名 数据类型; 删除字段    ALTER TABLE 表名 DROP 字段名;

设置主键: ALTER TABLE 表名 ADD CONSTRAINT 主键名称  PRIMARY KEY 表名(字段名);

设置外键: ALTER TABLE 表名 ADD CONSTRANIT 外键名称  FOREIGN KEY (外键字段)REFERENCES 关联表名(关联字段名)

设置组合主键:ALTER TABLE 表名 ADD CONSTRANIT 主键名称 PRIMARY KEY(字段名1,字段名2,字段名3)

mysql客户端:
SHOW database; 查看数据库列表 USE 数据库名; 选择数据库  DESCRIBE 表名;显示表结构

DROP TABLE IF EXISTS 表名;删除表,在删除表前可使用if exists验证表是否存在

SHOW VARIABLES LIKE 'storage_engine%'; 查询当前默认引擎

设置表的存储引擎:CREATE TABLE 表名( 代码……)ENGINE=存储引擎(MySAM 查询为主,InnoDB 增删改为主)

MySAM类型的文件后缀:.frm .MYD .MYI  InnoDB类型文件后缀: .frm ibdata(数据存储文件)

插入多条数据:INSERT INTO 表名 字段名(可多写) VALUSE (内容); ALTER TABLE 表名 AUTO_INCREMENT=自增值 重设自增

将查询结果存入新表:CREATE TABLE 新表名 SELECT 字段名1,字段名2…… FROM 原表;新建表

INSERT INTO 表名 SELECT 字段名 FROM 原表名;可加条件判断 WHERE 字段名,条件;直接插入旧表

SELECT * FROM INFORMATION_SCHEMA.KEY_COLUMN_USAGE;查询所有约束; 可加WHERE constraint_name="约束名"

UPDATE 表名 SET 字段名='新数据';更新表数据;可加WHERE 条件 更新一个数据;

DELECT FROM 表名 WHERE 条件 ;删除表数据;

查询语句:SELECT 字段名 FROM 表名 WHERE 条件 【ORDER BY ASC(正序,默认), DESC(倒序)】;

select 字段名 as 别名(吧别名命名给字段); select 字段名 from 表名 where 字段名 is NULL;查询空行;

AVG()返回平均值;COUNT()返回字段行数;MAX()最大值;MIN()最小值;SUM()和;

CONCAT(字符串1,字符串2);字符串连接函数; INSERT(字符串,pos起始位置,len长度,新字符串)替换函数;

LOWER()小写函数;UPPER()大写函数;SUBSTRING(字符串,起始位置,截取长度)截取函数;


CEIL(2.3)返回大于或等于数的最小整数3,FLOOR(2.3)返回小于数或等于数的最大整数2

RAND()返回0~1之间的随机数; 

查询语句ORDER BY 后可加LIMIT(起始位置+1,显示几条数据),控制显示数据的条数LIMIT;

子查询(嵌套查询);select 字段名 from 表名 where+条件:字段名(select 字段名 from 表名 where 条件);

可用IN (条件)返回满足条件的查询  NOT IN 返回没有满足的条件

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值