本文所用资源:SQL Server 2017,SSMS-chs
在自学数据库时没有想到在安装SQL Server 2017 及 SSMS 前前后后遇到许多问题,着实把坑都踩了个遍。在翻查各种资料后终于安装成功,随后想把自己遇到的问题总结一下,于是便有了这篇博文。
安装SQL Server 2017所遇到的问题
-
在安装前需要先关闭电脑防火墙
-
Polybase需要安装oracle JRE7 更新 51(64位)或更高版本
-
问题原因:在安装 MyEclipse 2016 CI 选择安装的是 jdk 8
-
解决方法:
-
若在开发过程中不需要 Polybase 功能,可以在选择实例功能时不勾选
Polybase
选项。 -
下载安装 jdk 7,并重新配置环境。
下载地址:https://www.oracle.com/technetwork/java/javase/downloads/java-archive-downloads-javase7-521261.html#jdk-7u80-oth-JPR
-
-
-
提示 Vs shell 安装失败 退出代码为 1638
-
问题原因:
查看日志,可看到失败原因是安装了Microsoft Visual C++ 2015 Redistributable。由于先安装了VS 2017 然后在进行安装SQL Server 2017,由于SQL Server 2017 安装 依赖于Microsoft Visual C++ 2015 Redistributable,而在安装了VS 2017之后系统中自动安装了Microsoft Visual C++ 2015 Redistributable,正是由于这个Visual C++ 版本不对的原因导致安装失败。
-
解决方法
打开控制面版–>点击程序—>点击卸载程序—>找到Microsoft Visual C++ 2015 Redistributable 卸载64位以及32位程序。重新进行安装SQL Server 2017即可。
-
安装SSMS
- 下载地址:https://docs.microsoft.com/en-us/sql/ssms/download-sql-server-management-studio-ssms?view=sql-server-2017
- 安装完毕后启动SSMS
连接到服务器
-
点击连接到服务器时出现以下问题:
- 问题原因:未启用 SQL Server 服务
- 解决方法:打开DOS命令窗,输入
net start mssqlserver
,(关闭服务命令为net stop mssqlserver
- 问题原因:未选择使用sql server和windows混合身份验证模式选择使用sql server和windows混合身份验证模式
- 解决方法:
1.先使用windows身份验证连接到数据库
2.点击服务器–>右击属性–>安全性–>服务器身份验证–>在sql server和windows身份验证上打勾–>确定
建立新数据库
1.建立数据库
-
可以通过新建查询的方式新建数据库,代码如下:
USE master GO IF NOT EXISTS ( SELECT name FROM sys.databases WHERE name = N'StudentInfo' ) CREATE DATABASE [StudentInfo] GO
- 创建失败原因:登录名不拥有管理数据库的权限
- 解决方法:为登录名赋予服务器角色权限,其中dbcreator权限表示允许新增和修改权限,sysadmin权限是管理员权限,包含dbcreator范围,若不追求权限精准管理的话可用sysadmin
-
创建成功
-
也可以直接右键新建数据库
2.在新数据库下建立新表
-
可以通过新建查询的方式建立新表,代码如下:
-- Create a new table called 'Sudent' in schema 'dbo' -- Drop the table if it already exists IF OBJECT_ID('dbo.Student', 'U') IS NOT NULL DROP TABLE dbo.Sudent GO -- Create the table in the specified schema CREATE TABLE dbo.Sudent ( Stu_name [NVARCHAR](50) NOT NULL Stu# INT NOT NULL, PRIMARY KEY, Age INT NOT NULL, Sex [NVARCHAR](50) NOT NULL ); GO
-
或者直接右键
新建
>表
,设置列及其属性
3.将行插入新表
- 将一些行插入前面创建的“学生”表。
将以下 T-SQL 代码片段粘贴到查询窗口并选择“执行”来完成此操作:-- Insert rows into table 'Sudent' INSERT INTO dbo.Sudent ([Stu_name],[Stu#],[Age],[Sex]) VALUES ( N'李三', 1, 19, N'男'), ( N'张思', 2, 23, N'男'), GO
- 或者直接右键
编辑前两200行
4.查询表并查看结果
- 将以下 T-SQL 代码片段粘贴到查询窗口并选择“执行”:
查询结果显示在输入文本的区域下:-- Select rows from table 'Student ' SELECT * FROM StudentInfo.dbo.Student WHERE Age >= 200;
初步尝试就到这里了www