数据库的基础问题
发布网友
发布时间:2022-04-10 12:04
我来回答
共2个回答
热心网友
时间:2022-04-10 13:33
好吧,那么我们开始~
1】视图。为啥子要建个视图,它不是跟表差不多吗?
因为视图为sql开发者提供了一套很好的解决方案,因为我们做开发,会面临着很多问题,就需要很多解决办法,我们都知道,视图里面到底是什么?打开来看看,封装的都是查询语句。所以说视图是一种特殊的存储过程。那些情况需要视图呢?一般来说,我们做系统设计好了数据表,就很少再直接去修改表,频繁的改动对表来说不是一件好事情,但有时候,业务的更改,我们确实又需要增加新的字段进去,这个时候视图就可以发挥作用,在系统开发中,特别是做报表的时候,视图可以发挥很大的作用。由于它封装的语句,一般操作员看不到真正的表,所以说有一定的数据安全性。
2】索引,它主要是用来提高查询性能的,这个需要大量数据才能体现出来。而且索引占用一定的磁盘空间,不是随便可以建的
3】引号:insert into s_student
values('100','张三','计算机系');
这里的引号表示是一个字符串的意思,你说的where后面怎么是双引号呢?那你是没有看错,它是因为有个设置 set QUOTED_IDENTIFIER off,当 quoted_identifier为off时,对于双引号和单引号的使用,引号不能用于分隔标识符,而是用括号作为分隔符。。在字符串中,用双引号来表示单引号的,引号的使用没有什么特殊的含义,是别人那么规定的
========================================================
补充:单引号,双引号的使用,通俗解释啊
一般的情况下我们都是使用单引号
select * from student where s_name='张三'
插入语句也是单引号
insert into s_student values('100','张三','计算机系');
没有那个地方规定一定要用双引号的,都是个人写sql语句的习惯
为什么你看到别人写的语句where后面带了类似s_name="张三"双引号,
它是因为指定了一个功能语句:set QUOTED_IDENTIFIER off
你把这句话理解为一个开关,这样写就可以正常使用双引号,否则就会报错:
你这样测试效果:打开查询分析器,拷贝以下语句
set QUOTED_IDENTIFIER off
select * from s_student where s_name="张三"
执行是不是正常,但是你把off改为on,就会报错~~~~~~~~ ,你这里where后面的写法没什么特别,是个人书写习惯,你也可以改成单引号,不知到解释的是否清楚?
热心网友
时间:2022-04-10 14:51
视图是为了不要用户看到一些秘密比如密码之类的所建立的一个查询的结果集,比如表A中有三个字段 a1,a2,a3
现在我不让用户看到a1
就这样写:
create view view_a
as
select a2,a3 from a
至于单,双引号,可以在选项里设置是否区分。如果区分的话就不能那样写了。最好用单引好。
索引:如果表的数据不是很多你是感觉不出来会有多快的,数据量大的时候你就会有感觉了。建立索引当然会快很多,不然要它干嘛咯?