时间:2021-07-01 10:21:17 帮助过:104人阅读
最近因为项目跟其他项目对接,两边采用的数据库不一样(我方采用的是sql server,而他们采用的是Oracle数据库),所以在获取数据时出现了一些问题。
因为sql server 数据库的特性,在设置字符串的时候默认选择的时不设置长度,默认为最大长度(sql server 特性 保存多长就用多大空间,并不会默认为用最大空间,这样节省空间,还有利于后期维护,不至于后期因为某些问题导致字段长度不够,需要修改数据库,这样很麻烦)。
在对接时,发现oracle 数据库把 nvarchar 当作大字段处理,导致读取不出来数据,需要我们提供的sql server 视图字段限制一下长度,这可把我难坏了,网上搜了半天也没有搜到,后来请教大神给解决掉了。现在把方法贴到下面,供大家参考,有什么不对之处,希望大家多多指教。
顺便说一下,创建视图,一般时create View,但是sql server 提供了可视操作,很简单。大家可以了解一下。
这样代码创建的视图字段的长度 是与table 表里的字段类型长度一个样的
create View view1 as select ID,identifier from table
create View view1 as select ID,CAST (Identifier, AS nvarchar(100)) AS Identifier from table
这样 视图里字段长度就改成设置的固定长度100了。
SQL Server 数据库创建视图时修改字段长度
标签:获取数据 cas 默认 创建 view creat 设置 varchar 导致