首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >转换日期格式不会对Server中的自制日期字符串生效

转换日期格式不会对Server中的自制日期字符串生效
EN

Stack Overflow用户
提问于 2016-09-14 01:46:40
回答 2查看 2.3K关注 0票数 1

我这里有个很奇怪的问题。我有一个日期字符串,部分是我自己创建的,用于合并一个变量。问题是,我正在设置另一个语言设置。在这种情况下,我还必须转换字符串以适应语言设置格式。我用的是这个代码:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
cast(convert(varchar, cast(cast(getdate() as date) as varchar) + ' ' + RIGHT('0' + CAST(@HR as varchar), 2) + ':00:00.000', 120) as datetime)

我得到错误“将varchar数据类型转换为日期时间数据类型导致了超出范围的值”,如果在转换之前分配错误的日期格式,这是正常的。

问题是,当我试图转换个人创建的日期字符串时,它不会改变它的格式,不管我在哪种格式代码中设置它。即使当我硬编码一个数字而不是我的变量时,这种情况也不会改变:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
convert(varchar, cast(cast(getdate() as date) as varchar) + ' 0' + CAST(2 as varchar) + ':00:00.000', 101)

2016年业绩-09-14 02:00:00.000

例如,

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
convert(varchar, dateadd(Hour, 2, getdate()), 101) as datetime

2016年9月14日的结果。

即使我有一个不同的语言设置,SQL server不应该总是以标准格式识别日期格式吗?

请给我一个建议,这样我就能克服这个问题。

提前感谢!

PS:在设置保加利亚语言之前,我通过在变量中插入转换后的datetime列来解决我的问题。不过,我还是很想知道是什么引起了这个问题。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-09-14 04:28:49

好的,我可能对这个问题有一个解决办法:为什么在转换时,这种格式在SQL-SERVER中有不同的处理方式。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
CONVERT(data_type(length),expression,style)

STYLE值仅适用于日期/时间。因此,由于数据类型的不同,输出是不同的。见以下示例:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
SELECT convert(varchar, dateadd(Hour, 2, getdate()), 101) as datetime

你得到的结果:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
09/14/2016

在这里,您将datetime数据类型转换为varcharSTYLE-value和101应用于CONVERT,并且输出以该格式转换。

示例2是相同的,但内部大部分是在转换之前先转换到varchar中的:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
SELECT convert(varchar, CAST(dateadd(Hour, 2, getdate()) AS varchar), 101) as datetime

你得到的结果是:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Sep 14 2016  4:09PM

因此,由于我们试图将varchar转换为varchar,所以STYLE-value不适用于转换。

这也是第一个查询被不同处理的原因:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
SELECT convert(varchar, cast(cast(getdate() as date) as varchar) + ' 0' + CAST(2 as varchar) + ':00:00.000', 101)

在这里,您在转换之前转换为varchar cast (强制转换(getdate()为date)为varchar)。因此,STYLE-value没有应用,因为它不是来自数据类型日期/时间。

我希望这句话说得有点清楚了。如果这有帮助的话请告诉我。

票数 1
EN

Stack Overflow用户

发布于 2016-09-14 02:36:46

使用“转换”格式化日期时间时,可以向其传递样式编号。

寻找那些数字的这里这里

下面的查询将自定义创建的日期时间转换为126 (ISO8601)格式。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
declare @d int = 2;

SELECT 
CONVERT(varchar,
        CONVERT(datetime,
                CONCAT(FORMAT(GETDATE(),'yyyy-MM-dd'),' ',@d,':0')
                )
         ,126) AS MyDateStamp1,
CONVERT(varchar,
        CONVERT(datetime,
                CONVERT(varchar,GETDATE(),102)+' '+convert(varchar,@d)+':0'
                )
         ,126) AS MyDateStamp2;

格式& CONCAT函数可以在Server 2012及以后使用。

但是,如果您有一个较早的版本,那么转换应该是有效的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39487346

复制
相关文章
js获取鼠标当前位置坐标
chrome和safari一条龙通杀!完全支持所有属性.其中(offsetX和layerX都是以border为参考点)
OECOM
2020/07/01
14.9K0
获取脚本当前位置-rstudioapi
使用 rstudioapi::getSourceEditorContext()$path 语句获得脚本当前位置
叶子Tenney
2023/03/12
1.5K0
获取脚本当前位置-rstudioapi
vue使用腾讯位置服务获取当前位置
验证地址:https://lbs.qq.com/dev/console/user/info
腾讯位置服务
2021/01/08
3.5K0
自学HarmonyOS应用开发(53)- 获取当前位置
在registerLocationEvent方法用来注册一个单次定位事件请求;在定位事件响应对象中我们将获得的位置信息通知给地图对象。
面向对象思考
2021/07/15
1.3K0
Android利用自带的位置服务,获取当前位置信息
笔者项目里,需要获取用户的当前位置信息,因为没有接地图SDK,打算用原生自带的位置服务去做。操作了一下,踩了几个大坑,总算是幸不辱命。这里做个记录,顺便分享给大家。
饮水思源为名
2019/11/04
3.3K0
微信小程序获取当前位置和城市名
1, 获取当前地理位置,首先要拿到用户的授权wx.openSetting; 2,微信的getLocation接口,获取当前用户的地理位置(微信返回的是经纬度,速度等参数); 3,微信没有将经纬度直接转换为地理位置,借用腾讯位置服务中关于微信小程序的地理转换JS SDK 的API(返回信息中包括国家,省,市,区,经纬度等地理位置) 步骤描述清楚以后,下面就开始按步骤操作了;(本文仅仅讲述如何获取用户地理位置的授权)
江一铭
2022/06/16
3.8K0
微信小程序获取当前位置和城市名
校园跑腿小程序通过位置获取当前学校
图片底部中,最下面是当前地址,当前地址可以根据逆地址解析获取,上面的是附近学校(通过城市码和地区码对比),在搜索到其他关联的店铺数据
德宏大魔王
2023/08/08
3030
校园跑腿小程序通过位置获取当前学校
html怎么动态获取系统时间_代码实现获取当前的地理位置
window.requestAnimationFrame()方法告诉浏览器您希望执行动画并请求浏览器在下一次重绘之前调用指定的函数来更新动画,通常与 setTimeout() 方法一起使用
全栈程序员站长
2022/11/09
2.5K0
html怎么动态获取系统时间_代码实现获取当前的地理位置
Python获取当前位置所在行数以及函数名
代码 # encoding=utf-8 import sys def get_python_info(): print('当前文件名 {} '.format(sys._getframe().f_code.co_filename)) print('所属函数名 {} '.format(sys._getframe().f_code.co_name)) print('第 {} 行 '.format(sys._getframe().f_lineno)) # 执行 get_python
cywhat
2022/11/22
1.8K0
动态获取当前屏幕中光标所在位置的颜色
usingSystem;usingSystem.Drawing;usingSystem.C运维
Java架构师必看
2020/10/15
2.8K0
小程序在获取当前位置信息在地图上显示
小程序在获取当前位置信息在地图上显示api:https://developers.weixin.qq.com/miniprogram/dev/api/wx.getLocation.html
王小婷
2019/03/15
2.1K0
小程序在获取当前位置信息在地图上显示
百度地图JavaScript API获取用户当前经纬度和详细地理位置,反之通过详细地理位置获取当前经纬度
  前端时间刚好使用了百度地图的js api定位获取用户当前经纬度并获取当前详细位置和通过当前用户详细地理位置换取用户当前经纬度坐标的功能,为了方便下次找起来方便一些自己在这里记录一下,希望也能够帮助到有需要的童鞋们!
追逐时光者
2019/08/28
7.2K0
使用腾讯地图在公众号网页里获取用户当前位置
最近有做一个项目,需要根据用户当前位置自动填写省市区,然后心里有选择:H5原生定位、百度地图、腾讯地图和高德地图。 既然是做公众号,还是比较偏向用腾讯自家的地图--腾讯地图。不是因为它好,主要就是怕用其它的不稳定。 为什么呢?主要怕腾讯那一天搞什么限制,限制使用其它地图,倒是定位功能无法正常使用。 觉得多虑的话,可以想想淘宝抖音为什么在微信打不开。好了,不说这么多废话了,回归正题~
jwj
2022/05/18
2.8K0
通过IP地址获取当前地理位置的接口(包含纬经度)
直接访问:https://api.liguangchun.cn/api/v7/ip/ 就可以查询到了
李光春
2018/09/18
3.5K0
javascript获取当前系统时间代码_获取当前系统时间
大家好,又见面了,我是你们的朋友全栈君。 JavaScript 获取当前时间time 开发常用时间笔记 JS获取当前时间 Js获取当前日期时间及其它操作 ** 谨记要懂得经常在控制台输出结果 **
全栈程序员站长
2022/11/09
18.5K0
微信小程序地图实时定位_小程序获取当前位置定位信息
因为小程序更新了获取地理位置API接口,需要先在app.json中配置一下permission字段 ,不然会报微信小程序getLocation 需要在app.json中声明permission字段
全栈程序员站长
2022/11/10
4.3K0
微信小程序地图实时定位_小程序获取当前位置定位信息
js获取当前时间的方法_c获取当前时间毫秒
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
全栈程序员站长
2022/11/09
21.4K0
js获取当前时间的方法_c获取当前时间毫秒
java获取当前时间到毫秒_java获取当前时间毫秒
()为获取当前系统时间,也可使用当前时间戳 获取时间戳三种方法执行效率比较: import java.util.Calendar; import java.util.Date; public class TimeTest { ……
全栈程序员站长
2022/10/04
7.3K0
点击加载更多

相似问题

获取当前位置

20

获取当前位置

13

如何获取当前位置?

23

Mapbox获取当前位置

10

Android获取当前位置

10
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文