1. declare @i int
    set @i='a'
    set @i=cast('a' as int)
    set @i=convert(int, 'a')
    print @i --输出结果为:将 varchar 值 'a' 转换为数据类型为 int 的列时发生语法错误。这一点与java不一样

  2. declare @ch varchar(90)
    set @ch=97
    print @ch

    --显示结果为97,说明隐式转换成字符串了

  3. declare @ch varchar(90)
    set @ch=97+'a'
    print @ch

    --输出结果为:将 varchar 值 'a' 转换为数据类型为 int 的列时发生语法错误。为什么不先把数字97转换成字符串,然后再与‘a'连接呢,是不是因为97在前,sqlserver所以尝试这么作呢?换一下位置看看

  4. declare @ch varchar(90)
    set @ch='a'+97
    print @ch

    --输出结果为:将 varchar 值 'a' 转换为数据类型为 int 的列时发生语法错误。不明白sqlserver为什么总是先要把‘a'转换为数字而导致失败。

更多相关文章

  1. Android开发 数据库操作
  2. android中的数据库操作
  3. Android的NDK开发(3)————JNI数据类型的详解
  4. Android(安卓)activity之间传递数据
  5. android sqlite 数据类型
  6. Android(安卓)studio 使用AIDL 无法import class问题解决
  7. JNI基本数据类型转换
  8. 【Android】Android中的数据传递(2)
  9. 引用自定义资源需注意数据类型

随机推荐

  1. Android 替换全局字体
  2. Android Studio 报错显示 mips64el-linux
  3. RelativeLayout相对布局
  4. Android实现日历
  5. 关于Android(安卓)VideoView seekTo不准
  6. AndroidManifest中activity属性参数设置
  7. android的进度条相关知识
  8. android 骁龙相机预览宽度方向全屏
  9. Android完全退出程序退出所有Activity
  10. binder编译error