• 2023年11月21日

Sql Server定义表参数及设定索引

DECLARE @t TABLE(id int identity(1,1) primary key –自增字段,主键,name NVARCHAR(50) default(N”) –普通字段,默认值为空,birthday datetime –日期字段,未设默认值,index i1 nonclustered (name) –索引,使用name作为非聚合索引) 写Sql存储过程时会用到table类型的参数,按照官方的意见是数据量100行以内可以使用这个,超过就建议使用临时表。 对于数据量多的,可以考虑给参数表增加个索引,定义方式如上。

详细内容

sql server参数空值判断 len/isnull/is not null/is null

存储过程中,对传入参数进行空值判断,经测试10次每次100万次isnull(@par,”)=”、@par is null、@par is not null 判断取平均值,结果如下: 测试代码如下: 本次测试是对传入参数null值判断效率,不代表sql语句中的判断效率。 在where条件中进行参数空判断,结果如下 测试代码如下:

详细内容

sql查询使用inner join出现重复数据问题

inner join 的表会把该表符合on条件的数据全部列出来与前面的表、inner join表数据形成多余的数据例如:select * from table1 t1inner join table2 t2 on t2.col1 = t1.col1 and t2.col2=t2.col2where t1. col3=’x’ 结果会出现单独查询 select * from table1 where col3=’x’ 只有1条记录但是因为table2存在100条 t2.col2=t1.col2 and t2.col1=t1.col1 导致上面的inner join语句执行完会出现100条记录

详细内容

Javascript对数组进行分页

写前端时,偶尔需要对本地的js数据进行分页获取,可以使用javascript的数组slice方法来实现 slice(开始位置,结束位置)

详细内容

javascript提取对象数组指定属性并输出为字符串

row.actionSetting.map(v=>v.title).join(‘,’) 该代码是指把actionSetting数组中的title属性提取出来并用,串联成字符串并输出

详细内容

.Net返回Dictionary值为数组出错

通过.Net的Webapi返回如下数据: 出错,实际返回的值如下 这是因为Api返回时,把数组解析成了JArray,而注入时没有添加Newtonjson,解决办法: ConfigureServices配置中,添加上下面红色部分

详细内容

Furion设置AppStartup顺序导致Swagger文档404

一个刚创建的干净的Furion项目,其中WebApi项目依赖了个ApiBase的项目,两个项目均有Startup.cs文件 其中ApiBase的Startup.cs类如下: 而WebApi项目的Startup.cs文件 Program.cs就一句代码 调试运行本该显示出swagger文档,结果显示404,将[AppStartup(x)]特性删除,改成Startup:AppStartup后,正常显示swagger文档

详细内容

rabbitMQ通过web管理界面修改用户密码后,提示“您与此网站的连接不是私密连接”

该问题不知道原因,权限该设置的都设置了,最后通过重设用户的权限解决。命令如下: 红色用户名部分修改为相应的用户名即可 该问题初步怀疑是web管理界面的bug或者新手不知道如何设置导致的用户权限错误。

详细内容

宝塔使用docker部署rabbit MQ无法映射端口

使用宝塔(Linux)的终端用命令 docker run -d –name myrabit -p 15672:15672 -p 5672:5672 rabbitmq 安装rabbitMQ,并通过 rabbitmq-plugins enable rabbitmq_management 开启管理插件后,无法使用服务器IP:15672 访问到rabbitMQ的web管理界面。 可能问题: 1、未开放15672端口 解决方法:使用宝塔系统防火墙开启15672端口并重启网络服务,如果服务器与外网还有一层防火墙,记得也在这个防火墙开启15672端口。一般阿里云、腾讯云对每台服务器都有安全规则,这边记得添加15672端口。 2、服务器未启用ip映射(一般报错:WARNING:IPv4 forwarding is disabled. Networking will not work.) 解决方法: vi /etc/sysctl.conf net.ipv4.ip_forward=1 #添加这段代码 3、docker实际上未运行,这个是我遇到的,使用宝塔(Linux版本)左侧Docker菜单进去无论怎么看都是正在运行,一直无法映射端口,后来在应用程序中安装了docker管理器,发现对应的容器居然未运行。 解决方法:通过docker管理器启动rabbitmq容器

详细内容

uni.login异步请求

在开发过程中会遇到uni.login时需要执行一些网络请求,然而因为uni.login并不会等待网络请求结束后(哪怕网络请求使用了await)再返回。 可以通过new promise来实现异步化

详细内容