❶ 小弟想自学sql server 和 oracle ,现在只有excel基础,算是完全小白,求高手推荐方法,书本,网站
你好朋友,你想学习sql server 和 oracle,因为着两个都是数据库,并且oracle相对sql server 来说难度大点,再加上自己没有基础,所以给你以下几点建议,希望能帮到你;
1.因为没有基础,所以需要从最基础的语句开始学习,需要看视频或者书,视频可以搜,并不存在什么好坏,基础东西都是一样,还有看书,这个我推荐书,因为我是用的大专教材。
2.网站给你推荐一个 w3school 这里面都是基础的知识点。
3.说点最重要的,学习的心态,如果没有一个好的心态,学什么都学不成,所以需要坚持,因为学习是个过渡,学习是枯燥的,但同时学习会很快乐,这是点经验。
就这几点,都是个人的一点经验,希望能帮到你,如果有什么不同也可以追问或者我们共同探讨,共同学习。
如果我的回答对你有帮助,还希望采纳,谢谢。
❷ 怎么学习SQL语句
创建数据库
创建之前判断该数据库是否存在 if exists (select * from sysdatabases where name='databaseName') drop database 'databaseName' go Create DATABASE database-name
删除数据库
drop database dbname
备份sql server
--- 创建 备份数据的 device USE master EXEC sp_admpdevice 'disk', 'testBack', 'c:\mssql7backup\MyNwind_1.dat' --- 开始 备份 BACKUP DATABASE pubs TO testBack
创建新表
create table tabname(col1 type1 [not null] [primary key],col2 type2 [not null],..) 根据已有的表创建新表: A:create table tab_new like tab_old (使用旧表创建新表) B:create table tab_new as select col1,col2… from tab_old definition only
删除新表
drop table tabname
增加一个列
Alter table tabname add column col type 注:列增加后将不能删除。DB2中列加上后数据类型也不能改变,唯一能改变的是增加varchar类型的长度。
添加主键
Alter table tabname add primary key(col) 说明:删除主键: Alter table tabname drop primary key(col)
创建索引
create [unique] index idxname on tabname(col….) 删除索引:drop index idxname on tabname 注:索引是不可更改的,想更改必须删除重新建。
创建视图
create view viewname as select statement 删除视图:drop view viewname
几个简单的基本的sql语句
选择:select * from table1 where 范围 插入:insert into table1(field1,field2) values(value1,value2) 删除:delete from table1 where 范围 更新:update table1 set field1=value1 where 范围 查找:select * from table1 where field1 like ’%value1%’ (所有包含‘value1’这个模式的字符串)---like的语法很精妙,查资料! 排序:select * from table1 order by field1,field2 [desc] 总数:select count(*) as totalcount from table1 求和:select sum(field1) as sumvalue from table1 平均:select avg(field1) as avgvalue from table1 最大:select max(field1) as maxvalue from table1 最小:select min(field1) as minvalue from table1[separator]
几个高级查询运算词
A: UNION 运算符 UNION 运算符通过组合其他两个结果表(例如 TABLE1 和 TABLE2)并消去表中任何重复行而派生出一个结果表。当 ALL 随 UNION 一起使用时(即 UNION ALL),不消除重复行。两种情况下,派生表的每一行不是来自 TABLE1 就是来自 TABLE2。 B: EXCEPT 运算符 EXCEPT 运算符通过包括所有在 TABLE1 中但不在 TABLE2 中的行并消除所有重复行而派生出一个结果表。当 ALL 随 EXCEPT 一起使用时 (EXCEPT ALL),不消除重复行。 C: INTERSECT 运算符 INTERSECT 运算符通过只包括 TABLE1 和 TABLE2 中都有的行并消除所有重复行而派生出一个结果表。当 ALL 随 INTERSECT 一起使用时 (INTERSECT ALL),不消除重复行。 注:使用运算词的几个查询结果行必须是一致的。
使用外连接
A、left outer join: 左外连接(左连接):结果集既包括连接表的匹配行,也包括左连接表的所有行。 SQL: select a.a, a.b, a.c, b.c, b.d, b.f from a LEFT OUT JOIN b ON a.a = b.c B:right outer join: 右外连接(右连接):结果集既包括连接表的匹配连接行,也包括右连接表的所有行。 C:full outer join: 全外连接:不仅包括符号连接表的匹配行,还包括两个连接表中的所有记录。
❸ sql server 小白应该看哪几本书直到学精通呢分别说出每本书的作用。望回答详细,有
1、sqlserver从入门到精通(其实入门的书很多,大同小异,就是叫你知道基本语法,基本的作用等)
2、sqlserver 企业级平台管理实践(徐海蔚),深入的介绍下整个的sql,强烈推荐
3、sqlserver 技术内幕(2005,2008,感觉05的写的好点,可以看05的,共四本)
❹ 小白初学PL/SQL 中SELECT INTO的问题
这就是基本的语法啊,select 。。。into。。。from 就是一个语法格式,没什么特别的。
其实你可以这样考虑。在存储过程中使用select的目的本身就是查询数据,既然要查询出来,那么肯定是要使用的,要想在过程中使用,就需要借助载体来获取到select查出的结果。这就是【变量】。通常有几种,单纯类型的变量,比如varchar2,number等等,还有就是集合,比如record,索引表等等。
殊途同归,不论使用什么样的变量来获取值,都需要通过select into从数据库中把想要的只查询出来,直接赋值或者循环赋值。
至于你说的sql server中没有这种语法,其实是不对的,sql server不是没有,只不过是写法不同罢了。sql server中的语法格式是:select @变量 = 列名 from 表名,其实和oracle的select into都是一个道理,只是写法形式上不同。
希望对你有帮助。
❺ SQL大神指导 数据库小白求教
select * from 表名
order by substr(字段名,1,instr(字段名,'-')-1),substr(字段名,instr(字段名,'-')+1,length(字段名)-instr(字段名,'-'))
❻ 谁懂sql 我是一个小白,给我简单的教一下数据库怎么创建,然后数据库和visual studio
建数据库简单,装个MSSQLSeve“,打开企业管理器就可以创建db,但是动态网页不是简单能说清楚的
❼ SQL小白求教
SET IDENTITY_INSERT [AbroadOrgan] OFF
当IDENTITY列中间的数据被删除,造成数据不连续的时候。
可以通过SET IDENTITY_INSERT 表名ON/OFF语句来允许/禁止对IDENTITY列进行显式的插入动作。
详细说明与例子,参考下面的帖子:
http://hi..com/wangqing999/blog/item/f05c3cab74557fdf7dd92a6f.html
ALTER TABLE [Admin] WITH NOCHECK ADD CONSTRAINT [PK_Admin] PRIMARY KEY NONCLUSTERED ( [AdminID] )
ALTER TABLE 是修改表
WITH NOCHECK 是不检查表的 约束.
ADD CONSTRAINT [PK_Admin] PRIMARY KEY 是新增 主键
NONCLUSTERED ( [AdminID] ) NONCLUSTERED 意思是 主键 使用 非聚集索引
(默认情况下, SQL Server 的主键, 使用的是 聚集索引)
❽ 小白学sql遇到了小问题
这就是基本的语法啊,select 。。。into。。。from 就是一个语法格式,没什么特别的。其实你可以这样考虑。在存储过程中使用select的目的本身就是查询数据,既然要查询出来,那么肯定是要使用的,要想在过程中使用,就需要借助载体来获取到select查出的结果。这就是【变量】。通常有几种,单纯类型的变量,比如varchar2,number等等,还有就是集合,比如record,索引表等等。殊途同归,不论使用什么样的变量来获取值,都需要通过select into从数据库中把想要的只查询出来,直接赋值或者循环赋值。至于你说的sql server中没有这种语法,其实是不对的,sql server不是没有,只不过是写法不同罢了。sql server中的语法格式是:select @变量 = 列名 from 表名,其实和oracle的select into都是一个道理,只是写法形式上不同。希望对你有帮助。
❾ 各位大神,谁有适合纯小白学习的 sql server 2008教程是我太笨了,学习起来好痛苦啊。
sql server 2008编程入门经典第三版 网上有pdf书籍和随书视频