SQL Server之坑

13 篇文章 0 订阅
3 篇文章 0 订阅

初次使用SQL Server 遇到了不少坑,特此将其应对策略总结如下:

1.下载sqlServer数据库;

坑之一:不是开源的,sqlServer属于mircoSoft的收费产品。
应对办法:docker镜像是免费的,使用docker版本。
坑之二:内存占用大,运行sqlServer至少需要2G的内存。
应对策略:使用公司的或已有的服务端。

2.下载sqlServer客户端;

坑之三:没有正式指定的客户端,网上相关的资源也很少。
应对策略:使用Navicat,但,特别的卡。
坑之四:需要sqlServer驱动,使用navicat连接的时候,报需要装驱动。
应对策略:navicat 目录下就有驱动(如E:\Navicat Premium 12\sqlncli_x64.msi 或者 sqlncli.msi),点击安装即可。

3.导入第三方的.sql文件;

坑之五:导入时,运行sql文件报错——找不到xxx123文件组。
应对策略:添加文件组。
在这里插入图片描述

4.向数据库中添加数据;

坑之六:没有配置分组文件,并添加到对应分组,导致表,作死也加不进数据;
应对策略:进入sqlServer容器,创建’/var/opt/mssql/data/xvxv.ndf文件;然后运行下面的sql,把文件添加到分组。

ALTER DATABASE NCDB 
ADD FILE (NAME='NNC_DATA01', FILENAME='/var/opt/mssql/data/xvxv.ndf',SIZE=3MB,MAXSIZE=100MB,FILEGROWTH=5MB) 
TO FILEGROUP [xxx123]

在这里插入图片描述
添加分组文件,并配置到分组后,就可以添加数据了。

5.模糊查询中文

使用mysql的语法查不出想要的数据

SELECT * FROM bd_material  WHERE CONCAT(name,pk_group) LIKE '%中通%'; // 查不出数据
SELECT * FROM bd_material  WHERE CONCAT(name,pk_group) LIKE N'%中通%';// ok,没有问题

原因:sqlserver中有nchar,nvarchar这两种数据类型,增删改查都需要在字段值的前面添加N。

其他的都是小问题,如字段类型或长度不匹配等,注意查看报错信息。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值