SQL菜鸟学习笔记2

近期看完了SQL菜鸟学习教程,SQL 总结 | 菜鸟教程 对其中遇到的一些疑惑和学习笔记打算做做整理,分几篇发出来,供大家交流和自己以后方便查看 :D

问题一:关于约束命名

问题二:关于主键和外键

问题三:关于索引

问题四:关于SQLsever修改列的数据类型报错 不兼容冲突 不支持转换的问题

问题五:如果在查询中作多个内容会怎样

问题六:数字类型的数据后的(n)

问题七:子语句的顺序

问题八:where和having

问题一:关于约束命名

1、当时看的时候第一反应就是,我添加一个unique的约束,为啥还要给他命名?

- 应该是因为,为了方便删除

如这个unique约束 是一个索引,而且在有索引情况下,是无法修改其他约束的

然后要删除这个约束的话,就要知道约束名,不然没法删。。

要删除的话,就要先查询索引表中已经存在索引,sql server用exec sp_helpindex 表名,mysql用show create table 表名,的语句,来查看索引,然后找到它给你自动命的名,然后用这个名字删除……

2、发现一个神奇的事情,似乎SQL里对约束命名,有些名字是不能用的

我想命名为current_date,但是就一直报错

换成别的就可以了   神奇

3、关于撤销drop default的问题

用教程里的:

ALTER TABLE Persons ALTER COLUMN City DROP DEFAULT

会一直报错 语法错误default

百度了一会儿,不知道是不是mySQL和SQLserver的区别,还是直接换语法比较对:

alter table access_log drop constraint ab_C;

这个ab_C是我对default约束的命名。

4、关于列名 索引名等各种命名的问题

语法中规定是不可以以数字开头的,只能以字母或漢字下划线等一些符合命名规则的字母開頭,后面可以跟数字。<

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值