数据库——mysql的常用操作

博客介绍了数据库整体使用套路,如创建模式的写法;阐述创建表的注意事项,包括主键、外键表达及数据类型要求等;说明了数据库增删改操作要点,如外连接、插入数据等;还提及存储过程,如分隔符、参数类型等内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

数据库整体使用套路:

-- sql启动的时候要用,不需要密码
sudo mysql -uroot -p

  • -- 使用help查看想要的命令(其中\c用最多,用以清楚已经输入但还没执行的语句)

     

  • -- 显示已有数据库
    show databases;
    
    -- 显示已有表
    show tables;
  • -- 选用该数据库
    use 数据库名;
  • -- 具体显示已有表的定义
    show create table Student;
    
    --显示表的具体数据项 
    select* from Student;

  • --看一个表的具体定义
    
    desc 表名;

     

  • 创建模式是authorization而不是authorize,而且后面直接跟用户名,没有on什么的。

数据库创建表的注意事项:

  • 不是每一个表都要主键
  • foreign key 在列级和在表级的不同表达,在列级只需要references 表名(列),在表级需要在前面加上一个
  • foreign key(列名)。!!!注意啊,这里的列名都要加括号。而且要定义多个外码的时候在表级要分开语句,不能用逗号分开(主码是没有表的参照的,所以是可以的)。 
  • 不在表定义的时候给表添加外键:
  •         alter table A
  •         add constraint foreign_key
  •         foreign key(the_key)
  •         references B(...)
  • 一定要注意reference 的s!
  • 对于主码和外键,数据类型必须是相同的,即便是字符串类型的位数也必须是一样的。
  • sql语句的注释: 单行--; 多行/**/
  • 用自己的某列做外码的话,空表插入数据是不能成功的。
  • 比如Course表,如果想要drop掉它的话,要么级联要么先删除掉SC表(因为SC拿它的主码做外码);

数据库增删改:

-- 插入数据,注意values啊
insert into Student(Sno,Sname,Ssex,Sage,Sdept) values("201215122","晨","女",19,"CS");

 

-- 如果要插入中文字符,则需要改变相应列的编码方式

-- 先改表
alter table Student default character set utf8;

-- 然后改列
alter table Student change Sname Sname varchar(20) character set utf8;

 

-- 删除表
drop table 表名;

“至少一个,一个以上”是比较能迷惑人的表达——事实上有就可以了。

  • 如果是问空值的话,如果一旦判度有多个表的时候就要想外连接的问题。
  • 外链接是在from语句的时候就:表1 连接类型 表2 on 链接条件(就像where的一样)。
  • 如果是多个表的外连接怎么办? 思想就是把前一个表当作整体。
  • 思考方式是先看需要什么表,然后是需要什么列,看列要判断是否要去除重复。
  • 插入数据是数据更新的一部分,想要定义格式的话,是在表名的后面搞。
  • 数据置值的时候用=,不能用LIKE。
  • 如果要给聚集函数命名的话,直接在后面加名字就好,即便是中文也不用加引号。而对于子表,则必须用as跟上命名。
  • group by 如果有多个的话,就是按字典序排列。
  • 有时候表的属性没法使用聚集函数,并且也无法使用having(因为聚集函数的使用不再分组内),这个时候可以选择在表的选择时使用子查询表,或者在外和热语句里也可以使用,用几层没关系。
  • 添加列的时候可以并列,但是要重复用add。

 

存储过程

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值