• 2024年1月19日

Sql Server执行拼接Sql提示the name ” is not a valid identifier.

Sql Server在执行拼接出来的Sql语句时,会提示: the name ‘select …..’ is not a valid identifier. 例如: 提示: the name ‘select * from table1’ is not a valid identifier. 原因: exec 将@sql参数当作存储过程名称, 解决方法:给Sql加上括号即可

详细内容

.Net WebApi枚举(Enum)类型字段返回值按键名返回

.Net WebApi的枚举类型字段返回时是按照值(int)返回,可以配置对该字段配置指定其返回键名(string),JsonConverter(typeof(StringEnumConverter))

详细内容

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或者新手不知道如何设置导致的用户权限错误。

详细内容